루트킷 (RootKit)
- 루트킷은 Root와 Kit의 합성어로, 컴퓨터의 관리자 계정(루트)의 권한을 획득 할 수 있도록 하는 도구모음(kit)을 의미
- 자신 또는 다른 소프트웨어의 존재를 감춰줌과 동시에 허가되지 않은 컴퓨터나 소프트웨어의 영역에 접근할 수 있게 하는 용도로 설계
- 처음부터 불법적이고 악의적 의도로 제작된 건 아님
- 윈도우 운영체제의 대중화 이후 사이버 공격자들이 제작/유포한 악성코드를 사용자 및 기타 프로세스로부터 그 존재와 작업 자체를 숨기는데 사용하면서부터 악의적인 용도로 해석
- 루트킷은 해커들이 시스템을 해킹할 때 시스템 이용자가 해킹 당하고 있음을 알지 못하도록 하기 위해 사용하는 도구를말하며, 루트킷을 설치하는 목적은 해커들이 나중에 시스템에 접근할 때 들키지 않으려는 것 때문
- 루트킷은 해커가 설치한 악성코드 (트로이 목마, 악성 봇 등) 백신이나 PC 사용자에게 발각되지 않도록 숨겨주는 도구이며, 대부분의 루트킷은 일반 프로그램이 동작하는 계층보다 더 하위계층, 즉 커널이라는운영체제 핵심 부분에 숨어서 동작하여 탐지, 분석이 어려움
루트킷 종류
- 루트킷에는 여러 가지 기술의 모음으로 다양한 형태의 종류가 존재, 가장 낮은 레벨인 펌웨어부터(가장 높은 권한을 가
진) 가장 높은 권한을 갖는 링 3의 사용자 기반까지의 범위를 가짐
- 1세대/2세대/3세대 루트킷
- 1세대 루트킷 : 간단한 파일 숨기기 기술을 사용하는 루트킷
- 2세대 루트킷 : 커널 모드에서 동작하며, 시스템 콜 인터셉트 등의 기법을 사용
- 3세대 루트킷: 펌웨어 레벨에서 동작하여 탐지가 매우 어려움
- 사용자 모드 / 애플리케이션 루트킷
- 사용자 모드 파일, 프로세스, 네트워크 연결 등을 숨김
- ex) Vanquish, Hacker Defender
- 커널모드 루트킷
- 운영체제의 커널 레벨에서 작동, 커널 함수를 후킹하여 파일, 프로세스 등을 숨김
- ex) Adore, Rkit
- 하이브리드 루트킷
- 사용자 모드와 커널 모드에서 동시에 작동, 높은 은폐를 가짐
- ex) Avatar
- 부트킷 (BootKit)
- 부트로더에 설치되어 OS 부팅 시 작동, 부팅 과정에서 시스템을 감염 시킴
- ex) Stoned, TDL4
- 펌웨어 루트킷
- 시스템 펌웨어(예: BIOS, UEFI)에 설치, 하드웨어 레벨에서 시스템을 감염시켜 탐지가 어려움
- ex) Lojax
루트킷 예방 대책
- 루트킷 탐지 솔루션 사용 (wellknown Rootkit)
- 백신 사용
- 소프트웨어 업데이트
- 로그 사용 및 분석
- 비신뢰 메일 확인 금지
- 비신뢰 소프트웨어 설치 금지
결론
루트킷은 종류도 많으면서, 아주 위험하고 탐지가 어려운 악성 소프트웨어이며, 주기적인 백신 및 업데이트가 필요하다.
또, 루트킷은 백도어 공격에 일종이기도하며, 악성 도구 모음이기도하다. 크리덴셜 및 암호화키 등 관련하여 버그헌팅 포스팅을 할 때 루트킷도 다뤄볼 수 있다면 루트킷 관련 프로그램 및 방법들을 포스팅 해봐야겠다.
'정보보안 > 모의해킹' 카테고리의 다른 글
CSRF (Cross-Site Request Forgery) (0) | 2024.06.24 |
---|---|
XSS(Cross Site Scripting) 공격 및 XSS 공격 예시 TOP10 (0) | 2024.06.21 |
[모의해킹] 백도어(Backdoor)와 백도어의 종류 (패스워드 크래킹, 루트킷 등) (0) | 2024.06.17 |
[모의해킹] 중간자공격 (Man In The Middle Attack, MITM) (0) | 2024.06.14 |
[모의해킹] ARP Spoofing (0) | 2024.06.13 |