루트 킷 목적: 백도어 심어두기 & 침투 흔적 삭제
파일 변조 여부를 집중 확인하면 루트킷을 발견할 기회가 커짐
변경된 명령어 때문에 어려울 경우 로그 파일 검토
루트 킷을 찾아냄 rootkit 도구가 시스템에 숨겨져 있는지를 찾아냄
chkrootkit 설치 한 후 실행
./chkrootkit -I(사용가능한 테스트), -d(디버그) -q (자동모드) -x(전문가모드) -r
-r dir (dir를 루트디렉토리로 사용) -p dir1:dir2(외부 명령의 dirN 경로(여러개의 디렉토리에서 체크) -n NFS (마운트 된 디렉토리를 건너뜀)
infected : 루트킷으로 변형되었음을 나타내는 메세지
not infected: 어떤 루트킷의 증루를 발견하지 못했음을 나타내는 메시지
not tested: 점검이 수행되지 못했다는 메시지
not found: 점검한 command가 없을 경우 나타나는 메시지
** rootkit이 발견되었을 경우 공격자가 이미 루트권한을 획득했을 가능성이 높음
외부인이 내부 시스템에서 실행시키고 있는 악성 프로세스를 찾아냄
사용자들의 로그인, 로그아웃 했던 모든 내력을 모두 저장하고 있는 /var/log/wtmp 파일을 점검해서 외부인이 비워놓았는지(null bytes) 검사
루트킷 사냥꾼
동일 머신으로부터 SSH 접속 수를 제한하는, 특정 머신에서 타겟 서버에 패스워드를 크랙하기 위해서 반복적으로 SSH 통해서 접속을 시도하는 경우 주어진 수의 SSH 연결 이상을 차단하는 도구
동일한 머신에서 무수한 좀비 머신, 좀비 IP, 좀비 MAC주소를 생성해서 연결해 오는 DDoS 드으이 공격을 막을 수 있음
타겟 시스템 들어와서 파일 등을 변조하거나 백도어를 심어둔 뒤 작업 흔적을 지우기 위해서 작업했던 기록을 가지고 있는 로그파일 변조하기도 하므로 관리자는 도구로 시스템 로그를 검사해서 시스템에서 일어난 중요한 작업이나 로그 파일 변조유무 등을 확인해서 침투된 여부를 판별할 수 있음
로그파일을 반드시 다른 머신에서 저장시키는 구조의 네트워크를 구축해 두어야함
시스템 점검도구로 시스템 로그에 관한 파일의 변경이나 백도어 업로드 등 파일에 관한 Filewatcher 또 특정 로그 체크와 사용자 정의 작업에 관한 Watchdog 등이 있음
Logcheck 도구는 침투가 우려되거나, 중요한 서비스 항목에 대해서 로그 파일을 생성시켜서 해당 서비스에 문제가 있을 때 관리자에게 메일링 하도록 설정하는 도구
connlimit로 modprobe 명령어로 외부 원격 접속 제어
22번 포트로 접속하는 외부 접속 방어
2개 이상 들어오면 차단
iptables -nL -line-numbers
LogCheck Logwatch
로그를 변조할 수 있음으로 로그는 별도로 별도의 로그 서버를 설치하는 것이 좋음
/etc/logcheck/logchek.con
22 REPORTLEVEL="server" > 확인
28 SENDMAILTO="logcheck" > mail 변경 ex)사용자명 @ruu.kr
logcheck.logfile의 경우 검사하고자 하는 logfile
apach2.conf
134: Error log를 logfile에서 apache2 설정해뒀던 log명 설정
외부에서한 두가지 작업후
외부에서 접속했다는 것을 할 수 있음