메인 컨텐츠로 건너뛰기

루트킷이란? - 정의 및 설명

루트킷의 정의 및 의미

루트킷(rootkit)은 해커가 타겟 장치에 액세스하고 통제하게 해주는 맬웨어 종류입니다. 대부분 루트킷은 소프트웨어와 운영 체제에 영향을 주지만, 컴퓨터의 하드웨어와 펌웨어를 감염시키는 것도 있습니다. 루트킷은 자신의 존재를 숨기는 데 능숙하지만, 숨어 있는 동안 활발히 활동합니다.

루트킷이 컴퓨터에 무단으로 액세스하면, 사이버 범죄자는 개인 데이터와 금융 정보를 훔치고 맬웨어를 설치하거나 컴퓨터를 봇넷의 일부로 사용하여 스팸을 유포하고 분산 서비스 거부(DDoS) 공격에 가담할 수 있습니다.

'루트킷'이라는 이름은 가장 권한 높은 계정 관리자를 '루트(root)'라고 부르는 Unix 및 Linux 운영 체제에서 유래했습니다. 장치에 대한 루트 또는 관리자 수준의 무단 액세스를 허용하는 애플리케이션을 '킷(kit)'이라고 합니다.

루트킷이란?

루트킷은 사이버 범죄자가 타겟 컴퓨터나 네트워크에 대한 통제권을 확보하는 데 사용하는 소프트웨어입니다. 루트킷은 단일 소프트웨어의 형태일 때도 있으나, 해커가 타겟 장치에 대해 관리자 수준의 통제권을 갖게 해주는 도구의 모음으로 구성되는 경우가 많습니다.

해커는 다양한 방법으로 타겟 컴퓨터에 루트킷을 설치합니다.

  1. 가장 일반적인 방법은 피싱이나 다른 유형의 소셜 엔지니어링 공격을 이용하는 것입니다. 피해자는 자신도 모르게 컴퓨터에서 실행 중인 다른 프로세스에 숨어 있던 맬웨어를 다운로드하고 설치하여 해커에게 운영 체제의 거의 모든 측면을 통제할 권한을 부여합니다.
  2. 또 다른 방법은 취약점, 즉 업데이트되지 않은 소프트웨어나 운영 체제의 취약점에 대한 익스플로잇 공격으로 컴퓨터에 루트킷을 강제로 설치하는 것입니다.
  3. 맬웨어는 감염된 PDF, 불법 복제 미디어 또는 의심스러운 타사 스토어에서 다운로드한 앱 등 다른 파일과 함께 번들로 제공될 수도 있습니다.

루트킷은 운영 체제의 커널 근처 또는 커널 내에서 작동하므로 컴퓨터에 명령을 내릴 수 있습니다. 운영 체제를 사용하는 모든 것이 루트킷의 잠재적 표적이 될 수 있으며, 사물 인터넷의 확장에 따라 냉장고, 온도 조절기 등도 여기에 포함될 수 있습니다.

루트킷은 사용자의 동의 없이 키 입력을 캡처하는 키로거를 숨길 수 있습니다. 따라서 사이버 범죄자가 신용 카드나 온라인 뱅킹 정보와 같은 개인정보를 쉽게 훔칠 수 있습니다. 루트킷을 통해 해커는 사용자의 컴퓨터를 사용하여 DDoS 공격을 시작하거나 스팸 이메일을 보낼 수 있습니다. 보안 소프트웨어를 비활성화하거나 제거하는 것도 가능합니다.

원격 IT 지원을 제공하거나 법 집행 기관을 지원하는 등 합법적인 목적으로 쓰이는 루트킷도 있습니다. 하지만 대부분 악의적인 목적으로 사용됩니다. 루트킷이 위험한 이유는 컴퓨터의 운영 체제를 조작하고 원격 사용자에게 관리자 액세스 권한을 부여하는 온갖 형태의 맬웨어를 전달할 수 있기 때문입니다.

루트킷의 유형

1. 하드웨어 또는 펌웨어 루트킷

하드웨어 또는 펌웨어 루트킷은 하드 드라이브, 라우터 또는 컴퓨터 마더보드의 작은 메모리 칩에 설치된 소프트웨어인 시스템 BIOS에 영향을 줄 수 있습니다. 운영 체제 대신 장치의 펌웨어를 노려 탐지하기 어려운 맬웨어를 설치합니다. 하드웨어에 영향을 미치기 때문에 해커가 사용자의 키 입력을 기록할 뿐만 아니라 온라인 활동을 모니터링할 수 있습니다. 다른 유형보다는 덜 흔하지만, 하드웨어 또는 펌웨어 루트킷은 온라인 안전에 심각한 위협이 됩니다.

2. 부트로더 루트킷

부트로더 메커니즘은 컴퓨터에서 운영 체제를 로드하는 역할을 합니다. 부트로더 루트킷은 이 시스템을 공격하여 컴퓨터의 정상 부트로더를 해킹된 부트로더로 대체합니다. 이렇게 하면 컴퓨터의 운영 체제가 완전히 로드되기 전에도 루트킷이 활성화됩니다.

3. 메모리 루트킷

메모리 루트킷은 컴퓨터의 RAM(Random-Access Memory)에 숨어 컴퓨터의 리소스를 사용하여 백그라운드에서 악의적인 활동을 수행합니다. 메모리 루트킷은 컴퓨터의 RAM 성능에 영향을 줍니다. 메모리 루트킷은 컴퓨터의 RAM에만 존재하고 영구적인 코드를 삽입하지 않기 때문에 시스템을 재부팅하는 즉시 사라지지만, 제거하려면 추가 작업이 필요한 경우도 있습니다. 수명이 짧기 때문에 큰 위협으로 인식되지 않는 경향이 있습니다.

4. 애플리케이션 루트킷

애플리케이션 루트킷은 컴퓨터의 표준 파일을 루트킷 파일로 대체하고 표준 애플리케이션의 작동 방식까지 변경할 수 있습니다. 이러한 루트킷은 Microsoft Office, 메모장 또는 그림판과 같은 프로그램을 감염시킵니다. 공격자는 사용자가 이러한 프로그램을 실행할 때마다 컴퓨터에 액세스할 수 있습니다. 감염된 프로그램은 여전히 정상적으로 실행되기 때문에 사용자가 루트킷을 탐지하기는 어렵지만, 안티바이러스 프로그램은 애플리케이션 계층에서 작동하기 때문에 탐지할 수 있습니다.

5. 커널 모드 루트킷

커널 모드 루트킷은 운영 체제의 코어(즉, 커널 레벨)를 대상으로 하기 때문에 가장 심각한 유형의 위협에 속합니다. 해커는 이를 사용하여 컴퓨터의 파일에 액세스할 뿐만 아니라 자체 코드를 추가하여 운영 체제의 기능을 변경할 수도 있습니다.

6. 가상 루트킷

가상 루트킷은 컴퓨터의 운영 체제 아래에 스스로 로드됩니다. 그런 다음 타겟 운영 체제를 가상 머신으로 호스팅하면서 원래 운영 체제의 하드웨어 호출을 가로챌 수 있습니다. 이러한 유형의 루트킷은 커널을 수정하지 않고도 운영 체제를 교란하며, 탐지하기가 매우 어려울 수 있습니다.

루트킷의 예

Stuxnet

역사상 가장 악명 높은 루트킷으로 꼽히는 Stuxnet은 2010년에 발견된 악성 컴퓨터 웜이며, 2005년부터 개발된 것으로 추정됩니다. Stuxnet은 이란의 핵 프로그램에 큰 타격을 주었습니다. (어느 쪽도 책임을 인정하지 않았지만) 미국과 이스라엘이 Olympic Games라는 공동 프로젝트를 통해 개발한 사이버 무기로 널리 알려졌습니다.

그 밖에도 다음과 같은 루트킷이 세간의 주목을 끌었습니다.

Flame

2012년, 사이버 보안 전문가들은 주로 중동 지역에서 사이버 스파이 활동에 사용되는 루트킷인 Flame을 발견했습니다. Flame(Flamer, sKyWIper, Skywiper라고도 함)은 컴퓨터의 전체 운영 체제에 영향을 미쳐 트래픽을 모니터링하고 스크린샷과 오디오를 캡처하며 장치의 키 입력을 로깅하는 기능을 제공합니다. Flame의 배후 해커는 밝혀지지 않았지만, 조사에 의하면 3개 대륙의 80대 서버를 사용하여 감염된 컴퓨터에 액세스했습니다.

Necurs

2012년에 Necurs 루트킷이 등장했는데, 그해 탐지된 감염 건수가 83,000건에 달하는 것으로 알려졌습니다. 동유럽의 엘리트 사이버 범죄자들이 연루된 Necurs는 기술적 복잡성과 진화하는 능력으로 차별성을 인정받습니다.

ZeroAccess

2011년 사이버 보안 전문가들은 전 세계 200만 대 이상의 컴퓨터를 감염시킨 커널 모드 루트킷 ZeroAccess를 발견했습니다. 이 루트킷은 감염된 컴퓨터의 기능에 직접적인 영향을 미치는 대신 감염된 컴퓨터에 맬웨어를 다운로드하여 설치하고 해커의 사이버 공격 작전에 동원되는 전 세계적인 봇넷에 참여시킵니다. ZeroAccess는 지금도 활발하게 사용되고 있습니다.

TDSS

2008년에는 TDSS 루트킷이 처음으로 발견되었습니다. 운영 체제의 초기 단계에서 로드되고 실행되기 때문에 탐지 및 제거가 어렵다는 점에서 부트로더 루트킷과 유사합니다.

루트킷 검사

루트킷을 탐지하는 방법

이러한 종류의 맬웨어는 계속 숨어서 활동하도록 설계되었기 때문에 컴퓨터에서 그 존재를 탐지하는 게 어려울 수 있습니다. 설상가상으로 루트킷은 보안 소프트웨어를 비활성화할 수 있습니다. 그로 인해 루트킷 맬웨어가 컴퓨터에 오랫동안 남아 심각한 피해를 입힐 수 있습니다.

루트킷 맬웨어의 의심 징후는 다음과 같습니다.

1. 블루 스크린

Windows 오류 메시지 또는 흰색 텍스트가 있는 블루 스크린('죽음의 블루 스크린'이라고도 함)이 자주 나타나고, 계속 컴퓨터 재부팅이 요구됩니다.

2. 비정상적인 웹 브라우저 동작

알 수 없는 북마크나 링크 리디렉션도 해당합니다.

3. 느린 장치 성능

장치를 시작하는 데 시간이 걸리고 성능이 느리거나자주 멈춥니다. 마우스나 키보드의 입력에 응답하지 않을 수도 있습니다.

4. Windows 설정 무단 변경

이를테면 사용자가 아무것도 변경하지 않았는데 화면 보호기가 바뀌거나 작업 표시줄이 사라지거나 날짜와 시간이 잘못 표시됩니다.

5. 웹 페이지가 제대로 작동하지 않음

과도한 네트워크 트래픽으로 인해 웹 페이지 또는 네트워크 활동이 자꾸 끊기거나 제대로 작동하지 않습니다.

루트킷 검사는 루트킷 감염을 탐지하는 가장 좋은 방법이며, 안티바이러스 솔루션에서 시작할 수 있습니다. 루트킷 바이러스가 의심될 때 감염 여부를 알아보는 한 가지 방법은 컴퓨터의 전원을 끄고 안전한 것으로 확인된 시스템에서 검사를 실행하는 것입니다.

행동 분석도 루트킷을 탐지하는 방법입니다. 즉, 루트킷 자체가 아니라 루트킷과 유사한 동작을 찾습니다. 타겟 검사는 시스템이 이상하게 작동하고 있음을 아는 상황에서 효과적이지만, 행동 분석은 공격을 받고 있음을 인지하기 전에 루트킷에 관해 경고할 수 있습니다.

루트킷을 제거하는 방법

루트킷을 제거하는 것은 복잡한 과정이며, 일반적으로 TDSS 루트킷을 탐지하고 제거하는 Kaspersky의 TDSSKiller 유틸리티와 같은 특수 도구가 필요합니다. 잘 숨어 있는 루트킷을 완전히 제거하는 유일한 방법이 컴퓨터의 운영 체제를 지우고 처음부터 다시 구축하는 것일 때도 있습니다.

Windows에서 루트킷을 제거하는 방법

Windows에서 제거하려면 대개 검사를 실행해야 합니다. 심각하게 감염되었다면, 루트킷을 제거할 유일한 방법은 Windows를 다시 설치하는 것입니다. 기본 제공 Windows 설치 프로그램이 아닌 외부 미디어 장치를 통해 이 작업을 수행하는 것이 좋습니다. BIOS를 감염시키는 루트킷도 있는데, 이럴 때는 문제 해결 및 복구 절차가 필요합니다. 여전히 루트킷이 남아 있다면 새 PC를 구입해야 할 수도 있습니다.

Mac에서 루트킷을 제거하는 방법

Mac에서는 항상 최신 릴리스를 사용하세요. Mac 업데이트는 새로운 기능만 추가하는 것이 아니라 루트킷을 포함한 맬웨어도 제거합니다. Apple에는 맬웨어를 차단하는 보안 기능이 내장되어 있습니다. 그러나 macOS에는 알려진 루트킷 탐지기가 없으므로, 루트킷 감염이 의심된다면 macOS를 다시 설치해야 합니다. 그러면 컴퓨터에서 대부분 앱과 루트킷이 제거됩니다. 위와 같이 루트킷이 BIOS를 감염시킨 경우 문제 해결 및 복구 절차가 필요합니다. 루트킷이 여전히 남아 있다면 새 장치를 구입해야 할 수도 있습니다.

루트킷을 차단하는 방법

루트킷은 위험하고 탐지하기 어려울 수 있으므로 인터넷을 검색하거나 프로그램을 다운로드할 때 항상 주의를 기울이는 것이 중요합니다. 컴퓨터 바이러스를 피하는 보호 조치의 상당수는 루트킷의 위험을 최소화하는 데도 도움이 됩니다.

1. 종합 사이버 보안 솔루션 사용

선제적으로 장치를 보호하고, 종합적인 고급 안티바이러스 솔루션을 설치하세요. Kaspersky Total Security 는 각종 사이버 위협을 막는 종합적인 보호 기능을 제공하며, 루트킷 검사를 실행할 수도 있습니다.

2. 최신 버전 유지

지속적인 소프트웨어 업데이트는 안전을 유지하고 해커에 의한 맬웨어 감염을 방지하는 데 필수적입니다. 취약점을 악용하는 루트킷 공격을 피하려면 모든 프로그램과 운영 체제를 최신 상태로 유지하세요.

3. 피싱 사기에 주의

피싱은 사기범이 이메일을 통해 사용자를 속여 금융 정보를 제공하거나 루트킷과 같은 악성 소프트웨어를 다운로드하도록 유도하는 일종의 소셜 엔지니어링 공격입니다. 루트킷이 컴퓨터에 침투하는 것을 방지하려면, 특히 잘 모르는 발신자가 보낸 의심스러운 이메일을 열지 마세요. 신뢰할 수 있는 링크인지 확실하지 않다면 클릭하지 마세요.

4. 신뢰할 수 있는 출처의 파일만 다운로드

첨부 파일을 열 때 주의하고 모르는 사람이 보낸 첨부 파일은 열지 않도록 하여 컴퓨터에 루트킷이 설치되는 것을 방지하세요. 평판이 좋은 사이트에서만 소프트웨어를 다운로드하세요. 방문하려는 웹사이트가 안전하지 않다는 웹 브라우저의 경고를 무시하지 마세요.

5. 컴퓨터의 동작이나 성능에 주의

동작 관련 문제가 루트킷이 작동 중임을 의미할 수 있습니다. 예기치 않은 변화에 경계하고, 이러한 변화가 발생하는 이유를 알아보세요.

루트킷은 발견하고 제거하기가 정말 어려운 맬웨어 유형 중 하나입니다. 탐지하기 어렵기 때문에 대개는 예방이 최선의 방어입니다. 중단 없는 보호를 위해 최신 사이버 보안 위협에 관해 계속 학습하세요.

추천 제품:

루트킷이란? - 정의 및 설명

루트킷이란? 루트킷 맬웨어는 해커가 타겟 컴퓨터에 대한 통제권을 갖게 해줍니다. 루트킷을 탐지, 차단하고 제거하는 방법을 알아보세요.
Kaspersky 로고

관련 문서