루트킷
Rootkit다음에 대한 시리즈 일부 |
정보 보안 |
---|
관련 보안 카테고리 |
위협 |
|
방어 |
루트킷(rootkit)은 일반적으로 악의적인 컴퓨터 소프트웨어의 모음으로, 달리 허용되지 않는 컴퓨터 또는 소프트웨어 영역(예를 들어, 권한이 없는 사용자에게)에 대한 액세스를 가능하게 하고 종종 그것의 존재나 다른 소프트웨어의 존재를 감추도록 설계된다.[1] 루트킷이라는 용어는 "root"(유닉스 유사 운영체제에서 특권 계정의 전통적인 이름)과 "kit"(툴을 구현하는 소프트웨어 구성요소를 가리킴)[2]의 합성어다. "루트킷"이라는 용어는 악성코드와의 연관성을 통해 부정적인 의미를 갖는다.[1]
루트킷 설치를 자동화할 수도 있고, 공격자가 루트 또는 관리자 액세스 권한을 얻은 후 설치할 수도 있다.[3] 이러한 액세스 권한을 얻는 것은 시스템에 대한 직접 공격의 결과로서, 즉 알려진 취약성(예: 특권 확대 등)이나 암호("피싱"과 같은 균열 또는 사회공학 전술에 의해 파악됨)의 이용이다. 일단 설치되면, 침입을 숨기는 것은 물론 특권적 접근을 유지하는 것이 가능해진다. 시스템에 대한 완전한 제어는 기존 소프트웨어가 수정될 수 있다는 것을 의미하며, 이를 감지하거나 우회하는 데 사용될 수 있는 소프트웨어를 포함한다.
루트킷은 루트킷을 찾으려는 소프트웨어를 전복시킬 수 있기 때문에 루트킷 탐지가 어렵다. 탐지 방법에는 대체 및 신뢰할 수 있는 운영 체제 사용, 행동 기반 방법, 서명 검색, 차이 검색, 메모리 덤프 분석이 포함된다. 특히 루트킷이 커널에 상주하는 경우 제거가 복잡하거나 실질적으로 불가능할 수 있다. 운영 체제를 재설치하는 것만이 이 문제에 대한 유일한 해결책이 될 수 있다. 펌웨어 루트킷을 처리할 때 탈거 시 하드웨어 교체 또는 특수 장비가 필요할 수 있다.
역사
루트킷 또는 루트 키트라는 용어는 원래 "루트" 액세스를 허용한 Unix 유사 운영 체제에 대해 악의적으로 수정된 관리 도구 집합을 가리켰다.[4] 침입자가 시스템의 표준 관리 도구를 루트킷으로 대체할 수 있는 경우, 침입자는 합법적인 시스템 관리자로부터 이러한 활동을 동시에 은폐하면서 시스템 전체에 대한 루트 액세스를 얻을 수 있다. 이러한 1세대 루트킷은 동일한 정보에 접근하기 위해 타협되지 않은 트립와이어와 같은 도구를 사용함으로써 탐지하기에 사소한 것이었다.[5][6] 레인 데이비스와 스티븐 데이크는 Sun Microsystems의 SunOS UNIX 운영체제에 대해 1990년에 가장 일찍 알려진 루트킷을 썼다.[7] 1983년 튜링상을 받자마자 그가 한 강연에서 유닉스의 창시자 중 한 명인 벨랩스의 켄 톰슨은 유닉스 배포에서 C 컴파일러를 전복시키는 것에 대해 이론화하고 착취에 대해 토론했다. 수정된 컴파일러가 Unix를 컴파일하려는 시도를 감지함 login
명령하고 사용자의 올바른 암호뿐만 아니라 공격자에게 알려진 추가 "백도어" 암호를 허용하는 변경된 코드를 생성한다. 또한 컴파일러는 컴파일러의 새 버전을 컴파일러하려고 하는 시도를 탐지하고, 동일한 취약성을 새 컴파일러에 삽입할 것이다. 에 대한 소스 코드 검토 login
명령어 또는 업데이트된 컴파일러는 어떠한 악성 코드도 노출하지 않을 것이다.[8] 이 착취는 루트킷과 맞먹는 것이었다.
1986년에 발견된 개인용 컴퓨터를 대상으로 한 최초의 문서화된 컴퓨터 바이러스는 자신을 숨기기 위해 클로킹 기법을 사용했는데, 브레인 바이러스가 부트 섹터를 읽으려는 시도를 가로챘고, 디스크의 다른 곳으로 그것들을 리디렉션하여 원래의 부트 섹터의 복사본을 보관했다.[1] 시간이 지나면서 DOS-바이러스 클로킹 방법은 더욱 정교해졌다. 고급 기술에는 파일에 대한 무단 수정을 숨기기 위해 낮은 레벨의 디스크 INT 13H BIOS 인터럽트 호출 후크가 포함되었다.[1]
윈도 NT 운영체제의 첫 번째 악의적인 루트킷은 1999년에 나타났다: 그렉 호글런드가 만든 NTRootkit라고 불리는 트로이 목마였다.[9] 2003년 해커디펜더가 그 뒤를 이었다.[1] 2009년 맥 OS X를 대상으로 한 첫 루트킷이 등장한 반면,[10] 스턱스넷 웜은 가장 먼저 PLC(Programmable Logic Controller)를 대상으로 했다.[11]
소니 BMG 카피 보호 루트킷 스캔들
2005년 소니 BMG는 소프트웨어 회사 퍼스트 4 인터넷(First 4 Internet)이 만든 카피 보호와 디지털 권리 관리 소프트웨어인 확장 카피 보호(Extended Copy Protection)를 탑재한 CD를 발매했다. 이 소프트웨어는 음악 플레이어를 포함했지만 사용자의 CD 액세스 능력을 제한하는 루트킷을 자동으로 설치했다.[12] 루트킷 탐지 툴 루트킷레벨러를 만든 소프트웨어 엔지니어 마크 루시노비치는 자신의 컴퓨터에서 루트킷을 발견했다.[1] 이어진 스캔들은 대중의 루트킷에 대한 인식을 높였다.[13] 자신을 숨기기 위해 루트킷은 "$sys$"로 시작하는 모든 파일을 사용자로부터 숨겼다. 루시노비치의 보고 직후, 영향을 받는 시스템의 취약성을 이용하는 악성코드가 나타났다.[1] 한 BBC 분석가는 "홍보 악몽"[14]이라고 말했다. 소니 BMG는 루트킷을 제거하기 위해 패치를 출시했지만 사용자들을 훨씬 더 심각한 취약성에 노출시켰다.[15] 그 회사는 결국 CD를 회수했다. 미국에서는 소니 BMG를 상대로 집단소송이 제기되기도 했다.[16]
그리스 도청 사건 2004-05
그리스 워터게이트라고도 불리는 2004-05년 그리스 도청 사건은 주로 그리스 정부와 고위 공무원들의 소유인 보다폰 그리스 네트워크에서 100대 이상의 휴대전화를 불법 도청한 사건과 관련이 있다.[17] 이 테이프는 2004년 8월 초쯤 시작됐으며 2005년 3월 가해자의 신원을 파악하지 못한 채 삭제됐다. 침입자들은 에릭슨의 액스 전화 교환기를 겨냥한 루트킷을 설치했다. IEEE 스펙트럼에 따르면, 이것은 "특수 목적 시스템, 이 경우 에릭슨 전화 스위치에서 루트킷이 관측된 최초의 사례"라고 한다.[18] 루트킷은 거래소 실행 중 메모리 패치, 감사 로그 비활성화 시 도감청 가능, 활성 프로세스 및 활성 데이터 블록을 나열하는 명령 패치, 데이터 블록 체크섬 검증 명령 수정 등을 위해 설계됐다. "백도어"는 sysadmin 상태의 운영자가 거래소의 거래 로그, 경보 및 보안 감시 기능과 관련된 액세스 명령을 비활성화할 수 있도록 했다.[18] 루트킷은 침입자가 결함 업데이트를 설치한 뒤 발견돼 SMS 문자가 전달되지 않아 자동 고장 보고서가 생성됐다. 에릭슨 엔지니어들을 불러 결함 조사를 한 결과 루트킷과 불법 모니터링 소프트웨어와 함께 모니터링 중인 전화번호 목록이 담긴 숨겨진 데이터 블록을 발견했다.
사용하다
현대의 루트킷은 접근을 증가시키는 것이 아니라,[4] 스텔스 기능을 추가함으로써 또 다른 소프트웨어 페이로드의 검출이 불가능하도록 만드는 데 사용된다.[9] 루트킷은 대부분 악성코드로 분류되는데, 이들이 묶인 페이로드에는 악성코드가 있기 때문이다. 예를 들어, 페이로드로 인해 사용자 암호, 신용카드 정보, 계산 리소스 등을 은밀히 도용하거나 기타 승인되지 않은 활동을 수행할 수 있다. 예를 들어 루트킷은 CD-ROM 에뮬레이션 드라이버를 위장하여 비디오 게임 사용자가 소프트웨어를 합법적으로 구입했는지 확인하기 위해 물리적 광학 드라이브에 원래 설치 미디어를 삽입해야 하는 해적 방지 조치를 물리칠 수 있도록 허용하는 등 소수의 루트킷은 사용자들에 의해 유틸리티 애플리케이션으로 간주될 수 있다.
루트킷과 그 페이로드에는 많은 용도가 있다.
- 백도어를 통해 공격자에게 전체 액세스 권한을 제공하여, 예를 들어 문서를 훔치거나 위조하는 등의 무단 액세스를 허용하십시오. 이를 수행하는 방법 중 하나는 Unix 유사 시스템의 /bin/login 프로그램이나 Windows의 GINA와 같은 로그인 메커니즘을 전복하는 것이다. 교체가 정상적으로 작동하는 것처럼 보이지만, 공격자가 표준 인증과 권한 부여 메커니즘을 우회하여 관리 권한으로 시스템에 직접 액세스할 수 있는 비밀 로그인 조합도 허용한다.
- 다른 악성 프로그램, 특히 암호 추적 키 로거 및 컴퓨터 바이러스를 숨긴다.[19]
- 손상된 컴퓨터를 다른 컴퓨터에 대한 공격에 대한 좀비 컴퓨터로 적합. (공격은 공격자의 시스템 대신 손상된 시스템이나 네트워크에서 발생한다.) "좀비" 컴퓨터는 일반적으로 서비스 거부 공격을 시작하고, 전자 메일 스팸을 배포하며, 클릭 사기를 할 수 있는 다른 것들보다 더 많은 것을 할 수 있는 대형 봇넷의 회원이다.[20]
경우에 따라 루트킷은 원하는 기능을 제공하며 컴퓨터 사용자를 대신하여 의도적으로 설치할 수 있다.
- Warden과 GameGuard와 같은 소프트웨어로 온라인 게임에서 부정행위를 탐지하고 방지하십시오.[21]
- 예를 들어 허니팟에서 공격을 탐지하십시오.[22]
- 에뮬레이션 소프트웨어 및 보안 소프트웨어 강화.[23] 알코올 120%와 데몬 툴은 SafeDisc와 SecuROM과 같은 복사 방지 메커니즘을 물리치는 데 사용되는 비 적대적 루트킷의 상업적 예다.[24] 카스퍼스키 바이러스 백신 소프트웨어 또한 루트킷과 유사한 기술을 사용하여 악의적인 행위로부터 자신을 보호한다. 시스템 활동을 가로채기 위해 자체 드라이버를 로드한 다음 다른 프로세스가 자신에게 해를 끼치는 것을 방지한다. 그 과정은 숨겨져 있지 않지만, 표준적인 방법으로 종료될 수는 없다.
- 도난방지 보호: 랩톱에는 BIOS 기반 루트킷 소프트웨어가 있어, 랩톱을 도난당한 경우 랩톱의 정보를 모니터링, 비활성화 또는 삭제할 수 있다.[25]
- Microsoft 제품 활성화[26] 바이패스
종류들
펌웨어 최저 레벨(최고 권한)의 루트킷부터 링 3에서 동작하는 사용자 기반 최빈층 변종까지 최소 5종류가 있다. 예를 들어 사용자 모드와 커널 모드와 같이 이러한 조합의 하이브리드 조합이 발생할 수 있다.[27]
사용자 모드
사용자 모드 루트킷은 낮은 수준의 시스템 프로세스가 아닌 다른 애플리케이션과 함께 링 3에서 실행된다.[28] 그들은 응용 프로그램 프로그래밍 인터페이스(API)의 표준 동작을 가로채고 수정할 수 있는 많은 설치 벡터를 가지고 있다. 일부는 동적으로 연결된 라이브러리(예: .)를 주입한다.윈도우즈의 DLL 파일 또는 Mac OS X의 .dynlib 파일)을 다른 프로세스로 전송하여 대상 프로세스 내에서 실행함으로써 이를 스푸핑할 수 있으며, 충분한 권한을 가진 다른 사용자는 대상 애플리케이션의 메모리를 덮어쓰기만 하면 된다. 주입 메커니즘은 다음을 포함한다.[28]
- 공급업체에서 제공하는 애플리케이션 확장 기능 사용. 예를 들어 Windows 탐색기에는 타사 기능을 확장할 수 있는 공용 인터페이스가 있다.
- 메시지 가로채기.
- 디버거.
- 보안 취약성 공격.
- 예를 들어 파일 시스템에 있는 실행 중인 프로세스 또는 파일을 숨기기 위해 일반적으로 사용되는 API의 후크 또는 패치 기능.[29]
...사용자 모드 애플리케이션은 모두 자신의 메모리 공간에서 실행되므로, 루트킷은 실행 중인 모든 애플리케이션의 메모리 공간에서 이 패치를 수행해야 한다. 또한 루트킷은 완전히 실행되기 전에 프로그램의 메모리 공간을 실행하고 패치하는 새로운 응용 프로그램에 대해 시스템을 모니터링할 필요가 있다.
— Windows Rootkit Overview, Symantec[4]
커널 모드
커널 모드 루트킷은 커널 및 관련 장치 드라이버를 포함하여 핵심 운영 체제의 일부를 교체하거나 코드를 추가하여 최고 운영 체제 권한(0링)으로 실행된다.[citation needed] 대부분의 운영 체제는 운영 체제 자체와 동일한 권한으로 실행되는 커널 모드 장치 드라이버를 지원한다. 이와 같이 많은 커널 모드 루트킷은 Linux의 로드 가능한 커널 모듈이나 Microsoft Windows의 장치 드라이버와 같이 장치 드라이버 또는 로드 가능한 모듈로 개발된다. 이 루트킷 클래스는 보안 액세스가 제한되지 않지만 쓰기 더 어렵다.[30] 복잡성은 버그를 흔하게 만들고, 커널 레벨에서 동작하는 코드의 버그는 시스템 안정성에 심각한 영향을 미쳐 루트킷의 발견으로 이어질 수 있다.[30] 널리 알려진 최초의 커널 루트킷 중 하나는 윈도 NT 4.0용으로 개발되었고 1999년 그렉 호글런드에 의해 프라크 잡지에 발표되었다.[31][32] 커널 루트킷은 특히 운영 체제 자체와 동일한 보안 수준에서 작동하기 때문에 탐지 및 제거가 어려울 수 있으며, 따라서 가장 신뢰할 수 있는 운영 체제 운영을 가로채거나 전복시킬 수 있다. 손상된 시스템에서 실행되는 바이러스 백신 소프트웨어와 같은 모든 소프트웨어는 똑같이 취약하다.[33] 이런 상황에서는 시스템의 어떤 부분도 신뢰할 수 없다.
루트킷은 DKOM(Direct Kernel Object Manipulation)이라고 알려진 방법을 사용하여 윈도우즈 커널의 데이터 구조를 수정할 수 있다.[34] 이 방법은 공정을 숨기기 위해 사용될 수 있다. 커널 모드 루트킷은 또한 스스로를 망토하기 위해 시스템 서비스 설명자 테이블(SSDT)을 잠그거나 사용자 모드와 커널 모드 사이의 게이트를 수정할 수 있다.[4] 리눅스 운영 체제의 경우와 유사하게 루트킷은 커널 기능을 하위 변환하도록 시스템 호출 테이블을 수정할 수 있다.[35][36] 루트킷은 다른 악성 프로그램이나 감염된 파일의 원본 복사본을 숨길 수 있는 암호화된 숨겨진 파일 시스템을 생성하는 것이 일반적이다.[37] 운영 체제는 커널 모드 루트킷의 위협에 대응하기 위해 진화하고 있다. 예를 들어, 64비트 버전의 마이크로소프트 윈도우즈는 신뢰할 수 없는 코드가 시스템에서 가장 높은 권한으로 실행되는 것을 더 어렵게 하기 위해 모든 커널 레벨 드라이버의 의무적인 서명을 구현한다.[38]
부트키트
부트킷이라고 불리는 커널 모드 루트킷 변종은 마스터 부트 레코드(MBR), VBR(Volume Boot Record) 또는 부트 섹터와 같은 시작 코드를 감염시킬 수 있으며, 이러한 방식으로 전체 Disk 암호화 시스템을 공격할 수 있다.[39] 디스크 암호화에 대한 이러한 공격의 예로는 공격자가 무인 컴퓨터에 부트킷을 설치하는 "악마의 가정부 공격"이 있다. 구상된 시나리오는 피해자들이 철물을 놓고 내린 호텔 방으로 몰래 들어가는 하녀다.[40] 부트킷은 합법적인 부트 로더를 그들의 통제 하에 있는 부트 로더로 교체한다. 일반적으로 악성 프로그램 로더는 커널이 로드되었을 때 보호 모드로 전환되는 동안 지속되므로 커널을 전복할 수 있다.[41][42][43] 예를 들어, "Stoneed Bootkit"는 손상된 부트 로더를 사용하여 암호화 키와 암호를 가로채서 시스템을 전복시킨다.[44][self-published source?] 2010년에 Alureon 루트킷은 마스터 부트 레코드를 수정하여 Windows 7에서 64비트 커널 모드 드라이버 서명에 대한 요구사항을 성공적으로 무시했다.[45] 비록은 WindowsVista및 Windows7정품 인증 과정을 물리치기 위해 사용자, 특정한"Vista로더"또는"Windows로더"소프트웨어 일은 유사한 방법으로 부팅 중에 BIOS의 RAM-cached 버전에서 한 ACPISLIC(시스템 내부 코드사)표를 주입함으로써, 바라지 않는 일을 하는 의미에서 맬웨어지 않다.[표창 필요한] 이 공격 벡터는 (서버가 아닌) Windows 8 버전에서 쓸모없게 만들어졌는데, 이 버전에서는 각 시스템마다 고유한 기계별 키를 사용하며, 그 한 기계만이 사용할 수 있다.[46] 많은 바이러스 백신 회사들은 부트킷을 제거하기 위한 무료 유틸리티와 프로그램을 제공한다.
하이퍼바이저 수준
루트킷은 개념의 증명으로서 학계에서 제2종 하이퍼바이저로 만들어졌다. 이러한 유형의 루트킷은 Intel VT 또는 AMD-V와 같은 하드웨어 가상화 기능을 활용하여 Ring -1에서 실행되며 대상 운영 체제를 가상 머신으로 호스팅하므로 루트킷이 원래 운영 체제에서 수행된 하드웨어 호출을 가로챌 수 있다.[6] 일반 하이퍼바이저와 달리 운영 체제보다 먼저 로딩할 필요가 없지만 가상 시스템으로 승격하기 전에 운영 체제에 로딩할 수 있다.[6] 하이퍼바이저 루트킷은 대상의 커널을 하위 변환하기 위해 수정할 필요가 없지만, 그렇다고 게스트 운영 체제에서 이를 감지할 수 없는 것은 아니다. 예를 들어 CPU 지침에서 타이밍 차이를 탐지할 수 있다.[6] 마이크로소프트(MS)와 미시건대 연구진이 공동으로 개발한 'SubVirt' 실험실 루트킷은 가상 머신 기반 루트킷(VMBR)[47]의 학술적 사례인 반면 블루필 소프트웨어는 또 다른 사례다. 2009년에 마이크로소프트와 노스캐롤라이나 주립대학의 연구원들은 커널모드 루트킷에 대한 일반적인 보호를 제공하는 후크세이프라는 하이퍼바이저 레이어 안티 루트킷을 시연했다.[48] 윈도10은 가상화를 활용해 루트킷형 악성코드에 맞서 운영 체제의 독립적인 외부 보호를 제공하는 '디바이스 가드'라는 새로운 기능을 선보였다.[49]
펌웨어 및 하드웨어
펌웨어 루트킷은 장치 또는 플랫폼 펌웨어를 사용하여 라우터, 네트워크 카드,[50] 하드 드라이브 또는 시스템 BIOS와 같은 하드웨어에 영구적인 멀웨어 이미지를 생성한다.[28][51] 루트킷은 일반적으로 코드 무결성에 대해 펌웨어를 검사하지 않기 때문에 펌웨어에 숨는다. John Heasman은 ACPI 펌웨어 루틴과[52] PCI 확장 카드 ROM에서 펌웨어 루트킷의 실행 가능성을 시연했다.[53] 2008년 10월, 범죄자들은 설치되기 전에 유럽의 신용 카드 읽기 기계를 조작했다. 이 장치들은 휴대폰 네트워크를 통해 신용카드 정보를 가로채 전송했다.[54] 2009년 3월 알프레도 오르테가와 아니발 사코는 디스크 교체와 운영체제 재설치에서 살아남을 수 있는 BIOS급 윈도 루트킷의 세부사항을 발표했다.[55][56][57] 몇 달 후, 그들은 일부 랩탑 컴퓨터가 많은 BIOS 이미지에 미리 설치된, Absolute CompuTrace 또는 Absolute LoJack for Laptops로 알려진 합법적인 루트킷과 함께 판매된다는 것을 알게 되었다. 연구자들이 보여준 도난방지 기술시스템은 악의적인 목적으로 전환될 수 있다는 것이다.[25]
Intel vPro의 일부인 Intel Active Management Technology는 Out-of-Band Management를 구현하여 시스템 전원이 꺼져도 관리자가 호스트 프로세서나 BIOS의 개입 없이 원격 관리, 원격 관리 및 PC의 원격 제어를 제공한다. 원격 관리에는 원격 전원 켜기 및 전원 끄기, 원격 재설정, 리디렉션 부팅, 콘솔 리디렉션, BIOS 설정에 대한 사전 부트 액세스, 인바운드 및 아웃바운드 네트워크 트래픽에 대한 프로그래밍 가능한 필터링, 에이전트 상태 확인, Out-of-Band 정책 기반 알림, 하드웨어 자산 정보와 같은 시스템 정보에 대한 액세스, 지속성t 이벤트 로그 및 OS가 다운되거나 PC 전원이 꺼진 경우에도 액세스할 수 있는 전용 메모리(하드 드라이브가 아님)에 저장된 기타 정보 이러한 기능들 중 일부는 가장 깊은 수준의 루트킷을 필요로 하는데, 이것은 메인 컴퓨터 주위에 구축된 두 번째 비이동성 스파이 컴퓨터다. 샌디 브리지와 미래 칩셋은 "3G를 통해 분실되거나 도난당한 PC를 원격으로 죽이고 복구하는 기능"을 갖고 있다. 칩셋에 내장된 하드웨어 루트킷은 도난당한 컴퓨터를 복구하거나, 데이터를 제거하거나, 쓸모 없게 만들 수 있지만, 통제력을 얻을 수 있는 관리자나 해커에 의한 탐지 불가능한 스파이 활동과 리디렉션에 대한 사생활과 보안상의 문제도 제기한다.
설치 및 클로킹
루트킷은 시스템을 제어하기 위해 다양한 기법을 사용한다. 루트킷의 유형은 공격 벡터의 선택에 영향을 미친다. 가장 일반적인 기법은 보안 취약점을 이용하여 몰래 특권을 확대한다. 또 다른 접근법은 트로이 목마를 사용하여 컴퓨터 사용자를 속여 루트킷의 설치 프로그램을 양성이라고 믿게 하는 것이다. 이 경우 사회공학은 루트킷이 유익하다고 사용자에게 납득시킨다.[30] 루트킷은 상승된(관리자 수준) 권한을 명시적으로 요청할 필요가 없으므로 최소 권한 원칙을 적용하지 않을 경우 설치 태스크가 쉬워진다. 다른 종류의 루트킷은 대상 시스템에 물리적으로 접근하는 사람만이 설치할 수 있다. 일부 루트킷은 예를 들어 직원 모니터링을 목적으로 시스템의 소유자 또는 소유자가 허가한 사람에 의해 의도적으로 설치될 수 있으므로 그러한 파괴적 기법이 불필요하다.[58] 일부 악성 루트킷 설치는 상업적으로 추진되며, 일반적으로 배포를 위해 PPI(설치당 지불) 보상 방법이 사용된다.[59][60]
루트킷이 설치되면 진단, 검색 및 모니터링에 사용되는 표준 운영 체제 보안 도구와 API(응용 프로그램 프로그래밍 인터페이스)의 전복 또는 탈피를 통해 호스트 시스템 내에서 존재를 흐리게 하는 적극적인 조치를 취한다.[61] 루트킷은 코드를 다른 프로세스에 로드하거나 드라이버 또는 커널 모듈을 설치 또는 수정하여 운영 체제의 핵심 부분의 동작을 수정함으로써 이를 달성한다. 난독화 기법에는 시스템 모니터링 메커니즘으로부터 실행 중인 프로세스를 숨기고 시스템 파일 및 기타 구성 데이터를 숨기는 것이 포함된다.[62] 루트킷이 공격의 증거를 감추기 위해 운영 체제의 이벤트 로깅 용량을 비활성화하는 것은 드문 일이 아니다. 루트킷은 이론적으로 모든 운영 체제 활동을 전복시킬 수 있다.[63] "완벽한 루트킷"은 "완벽한 범죄"와 유사하다고 생각할 수 있는데, 그것은 아무도 깨닫지 못하는 범죄였다. 루트킷은 또한 시스템에 대한 완전한 액세스 권한을 가진 링 0(커널 모드)에 일반적으로 설치하는 것 외에 바이러스 백신 소프트웨어에 의한 검출과 "청소"에 대항하여 생존을 보장하기 위해 여러 가지 조치를 취한다. 여기에는 다형성('신호'를 검출하기 어렵게 바꾸는 것), 스텔스 기법, 재생, 맬웨어 방지 소프트웨어 비활성화 또는 끄기,[64] 연구자가 이를 발견하고 분석하기 더 쉬운 가상 머신에 설치하지 않는 것 등이 포함된다.
탐지
루트킷 검출의 근본적인 문제는, 특히 커널 레벨 루트킷에 의해 운영체제가 전복된 경우, 자신이나 그 구성요소에 대한 무단 변경을 발견할 수 없다고 신뢰할 수 없다는 점이다.[63] 실행 중인 프로세스 목록 또는 디렉터리의 파일 목록 요청과 같은 작업은 예상대로 동작하도록 신뢰할 수 없다. 즉, 감염된 시스템에서 실행되는 동안 작동하는 루트킷 검출기는 커널의 탐지 소프트웨어보다 낮은 사용자 모드 권한으로 실행되는, 위장 결함이 있는 루트킷에만 효과적이다.[30] 컴퓨터 바이러스와 마찬가지로, 루트킷의 검출과 제거는 이 갈등의 양쪽에서 진행 중인 투쟁이다.[63] 검출에는 바이러스 "서명"(예: 바이러스 백신 소프트웨어), 무결성 검사(예: 디지털 서명), 차이 기반 검출(예: 예상 결과와 실제 결과의 비교), 행동 검출(예: CPU 사용량 또는 네트워크 트래픽 모니터링)을 비롯한 여러 가지 접근 방식이 필요할 수 있다.
커널 모드 루트킷의 경우 탐지가 상당히 복잡하여 멀웨어가 시스템 동작을 파괴할 수 있는 후크 기능을 찾기 위해 시스템 호출 테이블을 세심하게 조사해야 하며, [65]숨겨진 프로세스를 나타내는 패턴에 대한 메모리의 법의학적 스캔이 필요하다. 유닉스 루트킷 탐지 서비스에는 제푸,[66] chkrootkit, 룬궁터, OSSEC가 포함된다. Windows의 경우 탐지 도구에는 Microsoft Sysinternals RootkitRevealer,[67] Avast Antirotivirus,[68] Sophos Anti-Rootkit,[69] F-Secure,[70] Radix,[71] GMER [72]및 Windows가 포함된다.스코프. 멀웨어 작성자가 잘 사용되는 도구에 의해 탐지되지 않도록 코드를 조정하고 테스트함에 따라, 효과성이 입증된 루트킷 검출기는 궁극적으로 자체적인 비효과성에 기여한다.[Notes 1] 의심스러운 운영 체제가 작동하지 않는 동안 스토리지를 검사하여 탐지하면 루트킷이 활성화되지 않고 의심스러운 동작이 억제되므로 검사 소프트웨어에서 인식하지 못한 루트킷을 놓칠 수 있으며, 루트킷 운영과 함께 실행되는 기존의 악성 소프트웨어 방지 소프트웨어는 루트킷이 효과적으로 자신을 숨길 경우 실패할 수 있다.
대체 신뢰할 수 있는 매체
운영체제 수준의 루트킷 감지를 위한 가장 좋고 가장 신뢰할 수 있는 방법은 감염이 의심되는 컴퓨터를 종료한 다음, 다른 신뢰할 수 있는 매체(예: "구제" CD-ROM 또는 USB 플래시 드라이브)에서 부팅하여 저장장치를 확인하는 것이다.[73] 루트킷이 실행되지 않으면 적극적으로 존재를 숨길 수 없기 때문에 이 기법이 효과적이다.
행동 기반
루트킷을 탐지하기 위한 행동 기반 접근법은 루트킷과 같은 행동을 찾아 루트킷의 존재를 추론하려고 시도한다. 예를 들어, 시스템을 프로파일링함으로써 API 호출의 타이밍과 빈도나 전체 CPU 활용률의 차이는 루트킷에 기인할 수 있다. 그 방법은 복잡하고 잘못된 긍정의 높은 발생에 의해 방해된다. 결함이 있는 루트킷은 때때로 시스템에 매우 명백한 변화를 가져올 수 있다: Alureon 루트킷은 보안 업데이트로 코드의 설계 결함이 노출된 후 Windows 시스템을 손상시켰다.[74][75] 패킷 분석기, 방화벽 또는 침입 방지 시스템의 로그는 네트워크 환경에서 루트킷 동작의 증거를 나타낼 수 있다.[27]
서명 기반
바이러스 백신 제품은 보안 소프트웨어 벤더가 제품에 루트킷 탐지를 통합하더라도 공개 테스트(사용되는 것과 어느 정도까지 사용하느냐에 따라)에서 모든 바이러스를 거의 포착하지 못한다. 바이러스 백신 검사 중에 루트킷이 숨기려 할 경우 스텔스 탐지기가 알아차릴 수 있으며, 루트킷이 시스템에서 일시적으로 자신을 언로드하려고 할 경우 서명 탐지(또는 "손가락 인쇄")가 여전히 이를 찾을 수 있다.[76] 이러한 결합 접근방식은 공격자들이 바이러스 백신 프로그램을 종료하려는 반격 메커니즘, 즉 "반격" 루틴을 실행하도록 강요한다. 서명 기반 탐지 방법은 잘 게시된 루트킷에는 효과적일 수 있지만 특수하게 조작된 사용자 정의 루트킷에는 효과적이지 않다.[63]
차액기준
루트킷을 탐지할 수 있는 또 다른 방법은 "신뢰할 수 있는" 원시 데이터를 API에 의해 반환된 "가공된" 컨텐츠와 비교한다. 예를 들어, 바이너리들을 디스크에 운영 메모리(몇몇 운영 체제에서 메모리 내 이미지는 디스크에 기록되어 있는 이미지에 동일해야 하), 또는 사본과 그 결과를 파일 시스템 또는 Windows레지스트리 API에서 반환된 구조물에 대한 기본적인 물리적 disks[63][77]—however에 ca.에 대해 점검해야 한다 비교할 수 있는 것을 제시한t의 땅그는 이전의, 몇몇 유효한 차이점들은 메모리 재배치나 쉬밍과 같은 운영체제 메커니즘에 의해 도입될 수 있다. 루트킷은 이러한 차이 기반 스캐너 또는 가상 머신(후자가 법의학 분석을 수행하는 데 일반적으로 사용됨)의 존재를 감지하고 차이가 감지되지 않도록 그 동작을 조정할 수 있다. 차이 기반 검출은 루시노비치의 루트킷레벨러 도구가 소니 DRM 루트킷을 찾기 위해 사용했다.[1]
무결성 검사
코드 서명은 공개 키 인프라를 사용하여 파일이 게시자에 의해 디지털 서명된 이후 수정되었는지 여부를 점검한다. 또는 시스템 소유자 또는 관리자가 암호 해시 함수를 사용하여 설치 시 "손가락 지문"을 계산할 수 있으며, 이는 디스크 온 코드 라이브러리에 대한 이후의 무단 변경을 탐지하는 데 도움이 될 수 있다.[78] 그러나 복잡하지 않은 계획은 설치 시간 이후 코드가 수정되었는지 여부만 검사하며, 그 시간 이전의 하위 버전은 탐지할 수 없다. 지문은 보안 업데이트나 서비스 팩을 설치한 후와 같이 시스템을 변경할 때마다 다시 설정해야 한다. 해시함수는 메시지 다이제스트를 생성하는데, 이 코드는 원본 파일에 대한 훨씬 작은 변경으로 메시지 다이제스트에 큰 변화를 일으키는 알고리즘을 사용하여 파일의 각 비트로부터 계산된 비교적 짧은 코드다. 설치된 파일의 메시지 다이제스트를 정기적으로 재계산하여 신뢰할 수 있는 메시지 다이제스트 목록과 비교함으로써, 맬웨어가 추가되기 전에 원래 기준선이 생성된 한 시스템의 변경을 탐지하고 모니터링할 수 있다.
보다 정교한 루트킷은 파일의 수정되지 않은 복사본을 검사용으로 제시하거나, 메모리, 재구성 레지스터에서만 코드를 수정하여 검증 프로세스를 전복할 수 있으며, 이는 나중에 예상값의 화이트리스트와 비교된다.[79] 해시, 비교 또는 확장 연산을 수행하는 코드도 보호되어야 한다. 이 맥락에서 불변의 신뢰성의 개념은 루트킷이나 부트킷이 가장 근본적인 수준에서 시스템을 손상시키지 않도록 하기 위해 시스템의 보안 속성을 측정하는 최초의 코드 자체를 신뢰해야 한다는 것을 고수한다.[80]
메모리 덤프
가상 메모리의 전체 덤프를 강제하는 것은 활성 루트킷(또는 커널 모드 루트킷의 경우 커널 덤프)을 캡처하여, 루트킷이 자신을 감추고자 하는 어떠한 조치도 취하지 않고 결과 덤프 파일에 대해 디버거를 사용하여 오프라인 포렌식 분석을 수행할 수 있게 한다. 이 기법은 매우 전문적이며, 공개되지 않은 소스 코드 또는 디버깅 기호에 대한 액세스가 필요할 수 있다. 운영 체제에 의해 시작된 메모리 덤프는 항상 하이퍼바이저 기반 루트킷을 감지하는 데 사용될 수 없으며, 이는 메모리[6] 읽기에 대한 최저 수준의 시도를 가로채서 전복시킬 수 있다. 즉, 비마스크 가능 인터럽트를 구현하는 하드웨어 장치가 이 시나리오에서 메모리를 덤프하는 데 필요할 수 있다.[81][82] 또한 가상 머신은 기본 하이퍼바이저에서 손상된 머신의 메모리를 더 쉽게 분석할 수 있게 하므로 일부 루트킷은 이러한 이유로 가상 머신을 감염시키지 않는다.
제거
루트킷의 수동 제거는 일반적인 컴퓨터 사용자에게 매우 어려운 경우가 많지만,[28] 많은 보안 소프트웨어 공급업체는 일반적으로 바이러스 백신 제품군의 일부로 일부 루트킷을 자동으로 감지하고 제거할 수 있는 도구를 제공한다. 2005년[update] 현재 마이크로소프트의 월간 윈도우 악성 소프트웨어 제거 툴은 일부 종류의 루트킷을 탐지하고 제거할 수 있다.[83][84] 또한 윈도우즈 Defender Offline은 운영 체제가 시작되기 전에 신뢰할 수 있는 환경에서 실행되므로 루트킷을 제거할 수 있다.[85] 일부 바이러스 백신 스캐너는 루트킷에 의한 조작에 취약한 파일 시스템 API를 우회할 수 있다. 대신, 그들은 직접 원시 파일 시스템 구조에 접근하고, 루트킷에 의해 야기될 수 있는 차이를 식별하기 위해 시스템 APIs의 결과를 검증하기 위해 이 정보를 사용한다.[Notes 2][86][87][88][89] 이를 제거할 수 있는 믿을 수 있는 유일한 방법은 신뢰할 수 있는 미디어에서 운영 체제를 다시 설치하는 것이라고 믿는 전문가들이 있다.[90][91] 신뢰할 수 없는 시스템에서 실행되는 바이러스 백신 및 멀웨어 제거 도구가 잘 작성된 커널 모드 루트킷에 대해 비효율적일 수 있기 때문이다. 신뢰할 수 있는 미디어에서 대체 운영 체제를 부팅하면 감염된 시스템 볼륨을 마운트하고 잠재적으로 안전하게 치료하고 중요한 데이터를 복사하거나 법의학 검사를 수행할 수 있다.[27] 이를 위해 윈도우즈 PE, 윈도우즈 복구 콘솔, 윈도우즈 복구 환경, BartPE 또는 Live Distros와 같은 경량 운영 체제를 사용할 수 있어 시스템을 "청소"할 수 있다. 루트킷의 종류와 특성이 알려져 있더라도 수동 수리가 비현실적일 수 있는 반면 운영 체제와 응용 프로그램을 재설치하는 것이 더 안전하고 간단하며 더 빠를 수 있다.[90]
방어
시스템 강화는 루트킷을 설치할 수 없도록 하기 위한 첫 번째 방어 층 중 하나이다.[92] 보안 패치 적용, 최소 권한 원칙 구현, 공격 표면 축소 및 바이러스 백신 소프트웨어 설치는 모든 종류의 맬웨어에 효과적인 표준 보안 모범 사례들이다.[93] Unified Extensible Firmware Interface와 같은 새로운 보안 부팅 사양은 부트킷의 위협을 해결하기 위해 설계되었지만, 이러한 규격들조차도 부트킷이 제공하는 보안 기능을 활용하지 않으면 취약하다.[51] 서버 시스템의 경우, TXT(Intel Trusted Execution Technology)와 같은 기술을 사용한 원격 서버 증명은 서버가 알려진 양호한 상태로 유지되는지 확인하는 방법을 제공한다. 예를 들어, 마이크로소프트 Bitlocker의 미사용 데이터 암호화는 서버가 부팅 시 알려진 "정상 상태"에 있는지 검증한다. PrivateCore vCage는 서버가 부팅 시 알려진 "정상" 상태인지 확인하여 부트킷과 루트킷을 방지하기 위해 사용 중인 데이터(메모리)를 보호하는 소프트웨어 제품이다. PrivateCore 구현은 Intel TXT와 협력하여 작동하며 잠재적인 부트킷과 루트킷을 방지하기 위해 서버 시스템 인터페이스를 잠근다.
참고 항목
메모들
참조
- ^ a b c d e f g h "Rootkits, Part 1 of 3: The Growing Threat" (PDF). McAfee. 2006-04-17. Archived from the original (PDF) on 2006-08-23.
- ^ Evancich, N.; Li, J. (2016-08-23). "6.2.3 Rootkits". In Colbert, Edward J. M.; Kott, Alexander (eds.). Cyber-security of SCADA and Other Industrial Control Systems. Springer. p. 100. ISBN 9783319321257 – via Google Books.
- ^ "What is Rootkit – Definition and Explanation". www.kaspersky.com. 2021-04-09. Retrieved 2021-11-13.
- ^ a b c d "Windows Rootkit Overview" (PDF). Symantec. 2006-03-26. Archived from the original (PDF) on 2010-12-14. Retrieved 2010-08-17.
- ^ Sparks, Sherri; Butler, Jamie (2005-08-01). "Raising The Bar For Windows Rootkit Detection". Phrack. 0xb (x3d).
- ^ a b c d e Myers, Michael; Youndt, Stephen (2007-08-07). An Introduction to Hardware-Assisted Virtual Machine (HVM) Rootkits (Report). Crucial Security. CiteSeerX: 10.1.1.90.8832.
- ^ Andrew Hay; Daniel Cid; Rory Bray (2008). OSSEC Host-Based Intrusion Detection Guide. Syngress. p. 276. ISBN 978-1-59749-240-9 – via Google Books.
- ^ Thompson, Ken (August 1984). "Reflections on Trusting Trust" (PDF). Communications of the ACM. 27 (8): 761. doi:10.1145/358198.358210.
- ^ a b Greg Hoglund; James Butler (2006). Rootkits: Subverting the Windows kernel. Addison-Wesley. p. 4. ISBN 978-0-321-29431-9 – via Google Books.
- ^ Dai Zovi, Dino (2009-07-26). Advanced Mac OS X Rootkits (PDF). Blackhat. Endgame Systems. Retrieved 2010-11-23.
- ^ "Stuxnet Introduces the First Known Rootkit for Industrial Control Systems". Symantec. 2010-08-06. Retrieved 2010-12-04.
- ^ "Spyware Detail: XCP.Sony.Rootkit". Computer Associates. 2005-11-05. Archived from the original on 2010-08-18. Retrieved 2010-08-19.
- ^ Russinovich, Mark (2005-10-31). "Sony, Rootkits and Digital Rights Management Gone Too Far". TechNet Blogs. Microsoft. Retrieved 2010-08-16.
- ^ "Sony's long-term rootkit CD woes". BBC News. 2005-11-21. Retrieved 2008-09-15.
- ^ Felton, Ed (2005-11-15). "Sony's Web-Based Uninstaller Opens a Big Security Hole; Sony to Recall Discs".
- ^ Knight, Will (2005-11-11). "Sony BMG sued over cloaking software on music CD". New Scientist. Retrieved 2010-11-21.
- ^ Kyriakidou, Dina (March 2, 2006). ""Greek Watergate" Scandal Sends Political Shockwaves". Reuters. Retrieved 2007-11-24.[데드링크]
- ^ a b Vassilis Prevelakis; Diomidis Spinellis (July 2007). "The Athens Affair".
- ^ Russinovich, Mark (June 2005). "Unearthing Root Kits". Windows IT Pro. Archived from the original on 2012-09-18. Retrieved 2010-12-16.
- ^ Marks, Joseph (July 1, 2021). "The Cybersecurity 202: DOJ's future is in disrupting hackers, not just indicting them". The Washington Post. Retrieved July 24, 2021.
- ^ "World of Warcraft Hackers Using Sony BMG Rootkit". The Register. 2005-11-04. Retrieved 2010-08-23.
- ^ Steve Hanna (September 2007). "Using Rootkit Technology for Honeypot-Based Malware Detection" (PDF). CCEID Meeting.
- ^ Russinovich, Mark (6 February 2006). "Using Rootkits to Defeat Digital Rights Management". Winternals. SysInternals. Archived from the original on 14 August 2006. Retrieved 2006-08-13.
- ^ "Symantec Releases Update for its Own Rootkit". HWM (March): 89. 2006 – via Google Books.
- ^ a b Ortega, Alfredo; Sacco, Anibal (2009-07-24). Deactivate the Rootkit: Attacks on BIOS anti-theft technologies (PDF). Black Hat USA 2009 (PDF). Boston, MA: Core Security Technologies. Retrieved 2014-06-12.
- ^ Kleissner, Peter (2009-09-02). "Stoned Bootkit: The Rise of MBR Rootkits & Bootkits in the Wild" (PDF). Archived from the original (PDF) on 2011-07-16. Retrieved 2010-11-23.
- ^ a b c Anson, Steve; Bunting, Steve (2007). Mastering Windows Network Forensics and Investigation. John Wiley and Sons. pp. 73–74. ISBN 978-0-470-09762-5.
- ^ a b c d "Rootkits Part 2: A Technical Primer" (PDF). McAfee. 2007-04-03. Archived from the original (PDF) on 2008-12-05. Retrieved 2010-08-17.
- ^ Kdm. "NTIllusion: A portable Win32 userland rootkit". Phrack. 62 (12).
- ^ a b c d "Understanding Anti-Malware Technologies" (PDF). Microsoft. 2007-02-21. Archived from the original (PDF) on 2010-09-11. Retrieved 2010-08-17.
- ^ Hoglund, Greg (1999-09-09). "A *REAL* NT Rootkit, Patching the NT Kernel". Phrack. 9 (55). Retrieved 2010-11-21.
- ^ Chuvakin, Anton (2003-02-02). An Overview of Unix Rootkits (PDF) (Report). Chantilly, Virginia: iDEFENSE. Archived from the original (PDF) on 2011-07-25. Retrieved 2010-11-21.
- ^ Butler, James; Sparks, Sherri (2005-11-16). "Windows Rootkits of 2005, Part Two". Symantec Connect. Symantec. Retrieved 2010-11-13.
- ^ Butler, James; Sparks, Sherri (2005-11-03). "Windows Rootkits of 2005, Part One". Symantec Connect. Symantec. Retrieved 2010-11-12.
- ^ Burdach, Mariusz (2004-11-17). "Detecting Rootkits And Kernel-level Compromises In Linux". Symantec. Retrieved 2010-11-23.
- ^ Osborne, Charlie (September 17, 2019). "Skidmap malware buries into the kernel to hide illicit cryptocurrency mining". ZDNet. Retrieved July 24, 2021.
- ^ Marco Giuliani (11 April 2011). "ZeroAccess – An Advanced Kernel Mode Rootkit" (PDF). Webroot Software. Retrieved 10 August 2011.
- ^ "Driver Signing Requirements for Windows". Microsoft. Retrieved 2008-07-06.
- ^ Salter, Jim (July 31, 2020). "Red Hat and CentOS systems aren't booting due to BootHole patches". Ars Technica. Retrieved July 24, 2021.
- ^ Schneier, Bruce (2009-10-23). "'Evil Maid' Attacks on Encrypted Hard Drives". Retrieved 2009-11-07.
- ^ Soeder, Derek; Permeh, Ryan (2007-05-09). "Bootroot". eEye Digital Security. Archived from the original on 2013-08-17. Retrieved 2010-11-23.
- ^ Kumar, Nitin; Kumar, Vipin (2007). Vbootkit: Compromising Windows Vista Security (PDF). Black Hat Europe 2007.
- ^ "BOOT KIT: Custom boot sector based Windows 2000/XP/2003 Subversion". NVlabs. 2007-02-04. Archived from the original on June 10, 2010. Retrieved 2010-11-21.
- ^ Kleissner, Peter (2009-10-19). "Stoned Bootkit". Peter Kleissner. Retrieved 2009-11-07.[자체 분석 소스]
- ^ Goodin, Dan (2010-11-16). "World's Most Advanced Rootkit Penetrates 64-bit Windows". The Register. Retrieved 2010-11-22.
- ^ Francisco, Neil McAllister in San. "Microsoft tightens grip on OEM Windows 8 licensing". www.theregister.com.
- ^ King, Samuel T.; Chen, Peter M.; Wang, Yi-Min; Verbowski, Chad; Wang, Helen J.; Lorch, Jacob R. (2006-04-03). International Business Machines (ed.). SubVirt: Implementing malware with virtual machines (PDF). 2006 IEEE Symposium on Security and Privacy. Institute of Electrical and Electronics Engineers. doi:10.1109/SP.2006.38. ISBN 0-7695-2574-1. Retrieved 2008-09-15.
- ^ Wang, Zhi; Jiang, Xuxian; Cui, Weidong; Ning, Peng (2009-08-11). "Countering Kernel Rootkits with Lightweight Hook Protection" (PDF). In Al-Shaer, Ehab (General Chair) (ed.). Proceedings of the 16th ACM Conference on Computer and Communications Security. CCS 2009: 16th ACM Conference on Computer and Communications Security. Jha, Somesh; Keromytis, Angelos D. (Program Chairs). New York: ACM New York. doi:10.1145/1653662.1653728. ISBN 978-1-60558-894-0. Retrieved 2009-11-11.
- ^ "Device Guard is the combination of Windows Defender Application Control and virtualization-based protection of code integrity (Windows 10)".
- ^ Delugré, Guillaume (2010-11-21). Reversing the Broacom NetExtreme's Firmware (PDF). hack.lu. Sogeti. Archived from the original (PDF) on 2012-04-25. Retrieved 2010-11-25.
- ^ a b "Hacking Team Uses UEFI BIOS Rootkit to Keep RCS 9 Agent in Target Systems - TrendLabs Security Intelligence Blog". 2015-07-13.
- ^ Heasman, John (2006-01-25). Implementing and Detecting an ACPI BIOS Rootkit (PDF). Black Hat Federal 2006. NGS Consulting. Retrieved 2010-11-21.
- ^ Heasman, John (2006-11-15). "Implementing and Detecting a PCI Rootkit" (PDF). Next Generation Security Software. CiteSeerX: 10.1.1.89.7305. Retrieved 2010-11-13.
- ^ Modine, Austin (2008-10-10). "Organized crime tampers with European card swipe devices: Customer data beamed overseas". The Register. Situation Publishing. Retrieved 2008-10-13.
- ^ Sacco, Anibal; Ortéga, Alfredo (2009). Persistent BIOS infection (PDF). CanSecWest 2009. Core Security Technologies. Retrieved 2010-11-21.
- ^ Goodin, Dan (2009-03-24). "Newfangled rootkits survive hard disk wiping". The Register. Situation Publishing. Retrieved 2009-03-25.
- ^ Sacco, Anibal; Ortéga, Alfredo (2009-06-01). "Persistent BIOS Infection: The Early Bird Catches the Worm". Phrack. 66 (7). Retrieved 2010-11-13.
- ^ Ric Vieler (2007). Professional Rootkits. John Wiley & Sons. p. 244. ISBN 9780470149546.
- ^ Matrosov, Aleksandr; Rodionov, Eugene (2010-06-25). "TDL3: The Rootkit of All Evil?" (PDF). Moscow: ESET. p. 3. Archived from the original (PDF) on 2011-05-13. Retrieved 2010-08-17.
- ^ Matrosov, Aleksandr; Rodionov, Eugene (2011-06-27). "The Evolution of TDL: Conquering x64" (PDF). ESET. Archived from the original (PDF) on 2015-07-29. Retrieved 2011-08-08.
- ^ Gatlan, Sergiu (May 6, 2021). "New Moriya rootkit used in the wild to backdoor Windows systems". Bleeping Computer. Retrieved July 24, 2021.
- ^ Brumley, David (1999-11-16). "Invisible Intruders: rootkits in practice". USENIX. USENIX.
- ^ a b c d e Davis, Michael A.; Bodmer, Sean; LeMasters, Aaron (2009-09-03). "Chapter 10: Rootkit Detection" (PDF). Hacking Exposed Malware & Rootkits: Malware & rootkits security secrets & solutions. New York: McGraw Hill Professional. ISBN 978-0-07-159118-8.
- ^ Trlokom (2006-07-05). "Defeating Rootkits and Keyloggers" (PDF). Trlokom. Archived from the original (PDF) on 2011-07-17. Retrieved 2010-08-17.
- ^ Dai Zovi, Dino (2011). "Kernel Rootkits". Archived from the original on September 10, 2012. Retrieved 13 Sep 2012.
- ^ "Zeppoo". SourceForge. 18 July 2009. Retrieved 8 August 2011.
- ^ Cogswell, Bryce; Russinovich, Mark (2006-11-01). "RootkitRevealer v1.71". Microsoft. Retrieved 2010-11-13.
- ^ "Rootkit & Anti-rootkit". Retrieved 13 September 2017.
- ^ "Sophos Anti-Rootkit". Sophos. Retrieved 8 August 2011.
- ^ "BlackLight". F-Secure. Retrieved 8 August 2011.
- ^ "Radix Anti-Rootkit". usec.at. Retrieved 8 August 2011.
- ^ "GMER". Retrieved 8 August 2011.
- ^ Harriman, Josh (2007-10-19). "A Testing Methodology for Rootkit Removal Effectiveness" (PDF). Dublin, Ireland: Symantec Security Response. Archived from the original (PDF) on 2009-10-07. Retrieved 2010-08-17.
- ^ Cuibotariu, Mircea (2010-02-12). "Tidserv and MS10-015". Symantec. Retrieved 2010-08-19.
- ^ "Restart Issues After Installing MS10-015". Microsoft. 2010-02-11. Retrieved 2010-10-05.
- ^ Steinberg, Joseph (June 9, 2021). "What You Need To Know About Keyloggers". bestantivirus.com. Retrieved July 24, 2021.
- ^ "Strider GhostBuster Rootkit Detection". Microsoft Research. 2010-01-28. Archived from the original on 2012-07-29. Retrieved 2010-08-14.
- ^ "Signing and Checking Code with Authenticode". Microsoft. Retrieved 2008-09-15.
- ^ "Stopping Rootkits at the Network Edge" (PDF). Beaverton, Oregon: Trusted Computing Group. January 2017. Retrieved 2008-07-11.
- ^ "TCG PC Specific Implementation Specification, Version 1.1" (PDF). Trusted Computing Group. 2003-08-18. Retrieved 2010-11-22.
- ^ "How to generate a complete crash dump file or a kernel crash dump file by using an NMI on a Windows-based system". Microsoft. Retrieved 2010-11-13.
- ^ Seshadri, Arvind; et al. (2005). "Pioneer: Verifying Code Integrity and Enforcing Untampered Code Execution on Legacy Systems". Proceedings of the Twentieth ACM Symposium on Operating Systems Principles. Carnegie Mellon University. doi:10.1145/1095810.1095812. S2CID 9960430.
- ^ Dillard, Kurt (2005-08-03). "Rootkit battle: Rootkit Revealer vs. Hacker Defender".
- ^ "The Microsoft Windows Malicious Software Removal Tool helps remove specific, prevalent malicious software from computers that are running Windows 7, Windows Vista, Windows Server 2003, Windows Server 2008, or Windows XP". Microsoft. 2010-09-14.
- ^ Bettany, Andrew; Halsey, Mike (2017). Windows Virus and Malware Troubleshooting. Apress. p. 17. ISBN 9781484226070 – via Google Books.
- ^ Hultquist, Steve (2007-04-30). "Rootkits: The next big enterprise threat?". InfoWorld. Retrieved 2010-11-21.
- ^ "Security Watch: Rootkits for fun and profit". CNET Reviews. 2007-01-19. Archived from the original on 2012-10-08. Retrieved 2009-04-07.
- ^ Bort, Julie (2007-09-29). "Six ways to fight back against botnets". PCWorld. San Francisco: PCWorld Communications. Retrieved 2009-04-07.
- ^ Hoang, Mimi (2006-11-02). "Handling Today's Tough Security Threats: Rootkits". Symantec Connect. Symantec. Retrieved 2010-11-21.
- ^ a b Danseglio, Mike; Bailey, Tony (2005-10-06). "Rootkits: The Obscure Hacker Attack". Microsoft.
- ^ Messmer, Ellen (2006-08-26). "Experts Divided Over Rootkit Detection and Removal". NetworkWorld.com. Framingham, Mass.: IDG. Retrieved 2010-08-15.
- ^ Skoudis, Ed; Zeltser, Lenny (2004). Malware: Fighting Malicious Code. Prentice Hall PTR. p. 335. ISBN 978-0-13-101405-3.
- ^ Hannel, Jeromey (2003-01-23). "Linux RootKits For Beginners - From Prevention to Removal". SANS Institute. Archived from the original (PDF) on October 24, 2010. Retrieved 2010-11-22.
추가 읽기
- Blunden, Bill (2009). The Rootkit Arsenal: Escape and Evasion in the Dark Corners of the System. Wordware. ISBN 978-1-59822-061-2.
- Hoglund, Greg; Butler, James (2005). Rootkits: Subverting the Windows Kernel. Addison-Wesley Professional. ISBN 978-0-321-29431-9.
- Grampp, F. T.; Morris, Robert H., Sr. (October 1984). "The UNIX System: UNIX Operating System Security". AT&T Bell Laboratories Technical Journal. 62 (8): 1649–1672. doi:10.1002/j.1538-7305.1984.tb00058.x. S2CID 26877484.
- Kong, Joseph (2007). Designing BSD Rootkits. No Starch Press. ISBN 978-1-59327-142-8.
- Veiler, Ric (2007). Professional Rootkits. Wrox. ISBN 978-0-470-10154-4.
외부 링크
- 위키미디어 커먼스의 루트킷 관련 미디어