2008. 4. 1.

Hacking work style

해킹을 통해 리눅스 서버를 침입한 해커는 일련의 다음과 같은 작업을 통해 시스템을 장악하게 된다. 리눅스 서버 관리자는 현재 시스템에서 이같은 작업을 한 흔적이 있는지 지속적으로 점검해야 한다.
 
▲ rootkit을 설치한다
 
rootkit은 해킹에 성공한 후 해커들이 설치하는 트로이목마 프로그램들을 통칭하는 단어이다. rootkit에 포함되어 있는 프로그램으로는 login, ps, pstree, top, ls, dir, vdir, chfn, chsh, du, ifconfig, in.rshd, netstat, syslogd, tcpd 등과 같은 시스템 프로그램들이 있다. 해커들은 이들 프로그램들을 원래 있던 프로그램과 바꿔치기 해서 관리자가 시스템을 점검해도 별 이상이나 변화가 없는 것처럼 위장한다. 일례로 ls를 바꿔치기 해서 ls를 실행시켜도 해커가 만든 파일이 보이지 않도록 하며, netstat를 바꿔치기 해 외부에서 네트워크로 연결한 해커의 모습을 보이지 않게 할 수 있다. 또한 login 프로그램도 바꿔치기 해서 패스워드 파일(/etc/passwd)에는 없지만 root 권한을 가진 아이디로 로그인할 수 있도록 해놓을 수 있다.
  ==>more
▲ 보안버그를 모두 패치한다
 
침입에 성공한 해커는 다른 해커가 자신과 같은 방법으로 해당 리눅스 서버에 칩입하는 것을 막기 위해 자신이 사용한 보안버그를 즉시 패치하며, 다른 버그도 모두 패치해 다른 해커의 침입을 최대한 방지한다.
 
▲ chattr 명령어로 파일변경을 막는다
 
리눅스에는 ext2 파일 시스템을 직접 건드리는 chattr라는 명령어가 있다. 이 명령어를 사용하면 특정 파일에 대해 관리자라 할지라도 지우거나 변경하지 못하게 만들 수 있다. 이 프로그램을 사용해 자신이 설치한 프로그램들을 관리자가 건드리지 못하게 만든 다음 chattr 명령어를 삭제한다. 이 경우 리눅스 서버 관리자는 root 계정으로도 해당 파일을 변경할 수 없게 된다.
 
▲ 서비스 거부 공격 프로그램을 설치한다
 
칩입한 리눅스 서버에 서비스 거부(Denial of Service) 공격 프로그램을 설치해 놓고 필요할 때 사용한다. 서비스 거부 공격 기법은 상대 서버에 순간적으로 패킷을 엄청나게 많이 보내서 네트워크 사용이 불가능하게 만들기도 하고, 서버 운영체제의 구조적인 버그를 이용해 서버를 다운시키기도 하는 등 다양하다.
  ==>more
▲ 스캔 프로그램을 설치한다
 
스캔(Scan, 대상 서버에서 어떠한 보안 버그가 있는지 분석해서 정리해 주는 행위) 프로그램을 설치한 후, 이를 이용해 불특정 다수의 서버를 점검한다. 이 경우 침입을 당한 리눅스 서버 담당자는 스캔을 당한 서버 관리자로부터 엄청난 항의를 받게 된다. 스캔 프로그램으로는 mscan이나 sscan이 대중적으로 사용되며, 최근 국내의 많은 대학 서버들이 이 같은 방법으로 피해를 당했다.

댓글 없음: