티스토리 뷰

보안

"IceSword" 소개 [펌 www.ntfaq.co.kr]

NineKY 2007. 12. 19. 15:57

"IceSword" 소개

IceSword는 대단히 강력한 안티루트킷입니다. 신기하게도 해당 제작자가 중국인이더군요. 외국의 기사를 참고해보시면 아시겠지만, 자신이 당해보고 나서 스스로 치료해보지는 의미로 만들어진 것이 IceSword입니다. (외국의 기사 "IceSword Author Speaks Out On 'Rootkits'"참고)

 IceSword는 실제 경험에 의해서 루트킷 시스템의 분석을 목적으로 만들어졌기에 타 업체에서 만든 루트킷과는 다른 성격을 가지고 있습니다. 여태 소개한 안티루트킷 제품이 주로 스캔하는 기능을 가지고 있지만, IceSword는 타 안티루트킷과는 달리 파일을 스캔하는 과정이 없습니다. 대신에 다양한 시스템 상태 보기를 제공함으로써 루트킷의 제거를 유도합니다. 물론 이걸 다 알고 처리하기 위해서는 많은 학습이 선행되어야 합니다. 그리고, 별도의 백업을 하는 방법이 존재하지 않기 때문에 특히 더 많은 주의가 필요합니다.

IceSword는 다음과 같은 기능들을 제공합니다.
  1. Process
  2. Port
  3. Kernel Module
  4. Startup
  5. Win32 Services
  6. SPI (Service Provider Interface)
  7. BHO (Browser Helper Object)
  8. SSDT (System Service Descriptor Table)
  9. Message Hooks
  10. Log Process/Thread Creation
  11. Log Process Termination
  12. Scan Modules Hooks
  13. Registry
  14. File
  15. Reboot and Monitor
  16. RegFile

※ IceSword의 기능 설명 닫기

1. Process
 현재 실행 중인 프로세스 목록을 보여줍니다. 실행 중인 모든 프로세스를 보여주며, 장치 관리자에서는 볼 수 없는 숨겨진 프로세스까지 보여줍니다. 대부분 루트킷이 실행된 경우, 작업관리자와 이 목록을 비교하여 쉽게 실행되고 있는 여부를 찾아낼 수 있습니다.
사용자 삽입 이미지
2. Port
 네트워크의 접근 현황을 보여줍니다. 내 컴퓨터와 원격지에 연결된 상태를 보여주며, 연결된 경우 해당 프로세스를 보여주지는 않지만 PID를 통해 Process에서 해당 프로세스를 찾을 수 있습니다. 기본적으로 허용한 포트가 아니라면, 이를 통해 어느 위치에 있는지 찾아 낼 수 있습니다.
사용자 삽입 이미지
3. Kernel Module
 실행 파일에 의해 로드된 시스템 파일(.SYS)이나 동적 라이브러리 파일(.DLL)의 목록을 보여줍니다. 대부분의 루트킷은 자신을 은폐하기 위해 SYS나 DLL파일을 몇 개 심는데, 그 목록을 볼 수 있게 해줍니다. 다만, 여기에 있는 파일이 정상적인지 여부를 따지지 않고 강제로 내리는 경우 시스템이 바로 블루스크린을 보여주게 되며, 심각한 경우 다시 부팅이 이뤄지지 않을 수도 있습니다
사용자 삽입 이미지
4. Startup
실행 파일에 있는 목록을 보여줍니다. 시작 지점에 있는 레지스트리의 목록을 정리해주는 것으로 로그온 시 시작되는 레지스트리의 위치를 모두 알고 있다면, 이 목록을 구태여 사용할 필요는 없습니다.
사용자 삽입 이미지
5. Win32 Services 
서비스로 실행되는 프로세스 목록을 보여줍니다. 유명한 루트킷의 경우에는 IceSword가 자동으로 빨간색으로 강조해줍니다만, 일부 루트킷의 경우는 일반적인 검은 색 글씨로 보이기 때문에, 사용자가 직접 찾아서 제거를 해야합니다.
사용자 삽입 이미지
6. SPI (Service Provider Interface)
네트워크 드라이버에 로딩되거나 영향을 미치는 부분을 보여줍니다. 일부 루트킷의 경우 Winsock을 이용하여 특정 네트워크 패킷을 캡춰하는 기능을 갖고 있기 때문에 이에 대한 점검 방법으로 사용할 수 있습니다. ARP가 이상한 시스템의 경우 대부분 이 곳에 문제가 있는 시스템이 많습니다.
사용자 삽입 이미지
7. BHO (Browser Helper Object)
 브라우저나 시스템의 쉘 실행시 로딩되는 DLL들의 목록입니다. 이 부분은 IceSword가 아닌 다른 툴로도 비슷한 결과를 얻을 수 있습니다. (예 : HijackThis, Autoruns)
8. SSDT (System Service Descriptor Table)
 시스템의 메모리를 참고 할 수 있게끔 하는 부분입니다. 이미 다른 곳에서 결과를 얻을 수 있기 때문에, 자주 볼 필요는 없습니다만, 위에서 나열한 모든 기능으로 잡을 수 없는 경우 이 곳에 실행 중인 메모리를 봄으로써 답을 찾을 수 있습니다.
사용자 삽입 이미지
9. Message Hooks 
프로그램 동작시 입출력 장치의 반응을 보여줍니다. 이 역시 자주 쓰인다고는 할 수 없지만, 키로거가 의심되는 경우 이 곳에서 손쉽게 잡을 수 있습니다.

사용자 삽입 이미지
10. Log Process/Thread Creation
어떤 프로세스가 어떤 것을 실행했는지를 보여주는 부분입니다. IceSword가 실행 중인 경우에만 프로세스의 기록을 남기며, 주로 주기적인 프로그램이 돈다고 의심될 때 이 부분을 확인하면, 해결책이 나옵니다.
사용자 삽입 이미지
11. Log Process Termination
Log Process/Thread Creation와 비슷하나, 프로세스/쓰레드가 언제 종료되었는지를 기록해 줍니다. Log Process/Thread Creation와 함께 사용하여 프로그램의 동작 기록을 남길 때 유용합니다.
12. Scan Modules Hooks
모듈을 검사합니다. 특정 프로세스나 파일을 모니터링 하기 위해서 사용합니다. 이 기능을 사용하면, 꽤 많은 부하가 있으므로 사용에 주의하시기 바랍니다
13. Registry 
관리자라면 한번쯤은 사용해보셨을 레지스트리 편집기입니다. regedit.exe로는 접근할 수 없는 부분까지 아무 제재 없이 접근이 가능합니다. 따라서, 사용시 주의하시기 바랍니다.
사용자 삽입 이미지
14. File
간단한 파일 탐색기 입니다. 숨김 폴더/파일을 포함하여 시스템 폴더/파일까지 모두 볼 수 있으며, 강제 삭제도 가능합니다. 이 역시 어떤 제재도 가하지 않고 접근이 가능하므로 사용시 주의하시기 바랍니다. (System Volume Information나 RECYCLER와 같은 폴더의 무제한 접근이 가능합니다)

사용자 삽입 이미지
15. Reboot and Monitor
File-Reboot and Monitor 메뉴로 작성되는 것으로 부팅시 실행에 관한 모든 로그를 남깁니다. 대단히 강력하며, 이를 이용하면 숨겨진 파일과 이상하다 판단되는 프로세스의 모든 목록을 남길 수 있습니다.
16. RegFile
Plugin-FileReg를 통해 생성되는 명령줄로 IceSword의 일부 기능을 명령줄로 바꿔둔 것입니다. 시스템을 콘솔에서 쉽게 볼 수 있게 합니다. 이때의 권한은 완벽한 super user계정으로 일반적으로는 볼 수 없는 부분들도 볼 수 있으며, 사용중인 파일의 삭제도 가능합니다. 명령줄이다보니, 명령을 하나하나 치는데 복잡하기는 하지만, 검색기능을 쉽게 활용할 수 있다는 장점이 있습니다.

※ IceSword의 기능 설명 닫기


 IceSword는 현재(2007.7.30 기준) 1.22까지 나와 있습니다. 버전이 점차 올라가는 이유는 루트킷이 점차 발전됨에 따라 옛버전으로는 보이지 않기 때문에 이에 대한 고급 접근 법을 사용하면서 계속 버전이 올라가고 있습니다. 자동 스캔하는 기능이 없어서 아쉽기는 하지만, 매우 강력한 삭제와 접근 방법을 제공을 통해 자동 스캔하는 것 그 이상의 성과를 얻을 수 있습니다. 물론 어디가 잘못되어 있는지를 알기 위해서는 이것보다 더 많은 지식이 있어야 쓸 수 있는 것이겠지요.


참고

'보안' 카테고리의 다른 글

Windows NT Kernel Programming  (0) 2008.01.05
vmware + windbg 연동 커널 디버그 setting  (4) 2008.01.05
Hidden Threat: Alternate Data Streams  (0) 2007.12.19
Practical Guide to ADS(Alternative Data Streams) in NTFS  (1) 2007.12.19
Run trace  (0) 2007.12.10
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함