시만텍 보안 연구소는 지난 11월 Linux.Darlloz라는 사물 인터넷(IoT, Internet of Things) 웜을 발견했습니다. 이 웜은 Intel x86 아키텍처 기반의 컴퓨터를 공격합니다. 뿐만 아니라 라우터와 셋톱 박스에서 흔히 볼 수 있는 ARM, MIPS, PowerPC 아키텍처 장치도 주요 표적입니다. 시만텍 보안 연구소는 Linux.Darlloz를 처음 발견한 후 1월 중순에 이 웜의 새로운 변종을 찾아냈습니다. 시만텍의 분석에 따르면, 이 웜의 개발자는 특히 웜을 통한 수익 창출에 초점을 맞추고 지속적으로 코드를 업데이트하고 새로운 기능을 추가하고 있습니다.
시만텍이 2월에 전체 인터넷 IP 주소 범위를 대상으로 조사를 실시한 결과, 31,000대 이상의 장치가 Linux.Darlloz에 감염된 것으로 드러났습니다.
코인 채굴
또한 시만텍은 현재 이 웜이 암호 통화(cryptocurrency)를 채굴하는 데 이용되고 있다는 사실도 확인했습니다. Intel 아키텍처를 실행하는 컴퓨터가 이 새로운 변종에 감염되면 cpuminer라는 오픈 소스 기반의 코인 채굴 소프트웨어가 설치됩니다. 그런 다음 이 웜은 감염된 컴퓨터에서 민코인(Mincoin) 또는 도기코인(Dogecoin)을 채굴하는 작업을 시작합니다. 2014년 2월 말까지 도기코인(이 글의 작성 시점 기준 약 46달러) 42,438개, 민코인(동일 시점 기준 약 150달러) 282개가 공격자에 의해 채굴되었습니다. 하지만 일반적인 사이버 범죄와 비교할 때 금액이 적은 편이므로 공격자가 수익을 늘리기 위해 더욱 보안 위협을 지능화하는 데 주력할 것으로 예상됩니다.
이 웜의 새로운 코인 채굴 기능은 Intel x86 아키텍처 기반 컴퓨터에만 영향을 미치며, 사물 인터넷 장치에 대한 공격 사례는 아직 확인되지 않았습니다. 코인 채굴은 일반적으로 장치에 넉넉한 메모리와 강력한 CPU가 있어야 가능합니다.
민코인과 도기코인이 표적이 된 이유
이 웜은 더 높은 유명세와 가치를 누리고 있는 암호 통화인 비트코인(Bitcoin)을 노리기보다 민코인과 도기코인의 채굴에 주력하는 것으로 보입니다. 이는 민코인과 도기코인이 Scrypt 알고리즘을 사용하기 때문입니다. 따라서 수익을 내려면 맞춤형 ASIC 칩이 필요한 비트코인과 달리 가정용 PC에서 수월하게 채굴할 수 있습니다.
새로운 표적
최초의 Darlloz 버전은 라우터 및 셋톱 박스에 사용되는 사용자 이름과 암호의 9개 조합을 사용했습니다. 반면 최신 버전은 13개의 로그인 인증 정보 조합을 사용하는데, 그로 인해 사내 원격 감시에 널리 사용되는 IP 카메라도 공격할 수 있습니다.
사물 인터넷 장치를 노리는 이유
사물 인터넷은 사실상 인터넷에 연결된 모든 유형의 장치를 가리킵니다. 많은 사용자들이 컴퓨터 보안에는 만전을 기하지만 사물 인터넷 장치도 함께 보호해야 한다는 사실을 깨닫지 못할 수 있습니다. 상당수의 사물 인터넷 장치는 일반 컴퓨터와 달리 기본 사용자 이름과 암호가 함께 제공되는데, 아마도 이 정보 자체를 변경하지 않은 사용자가 많을 것입니다. 이렇듯 기본 사용자 이름과 암호를 사용하는 것 자체가 사물 인터넷 장치에 대한 대표적인 공격 벡터 중 하나로 작용합니다. 또한 이러한 장치 중 상당수에는 사용자가 알지 못하는 취약점이 있으며 그에 대한 패치도 설치되어 있지 않습니다.
이 보안 위협은 컴퓨터, 라우터, 셋톱 박스, IP 카메라를 주 공격 대상으로 하지만 향후 이 웜이 업데이트되면 홈 오토메이션 장치, 웨어러블 기술과 같은 다른 사물 인터넷 장치도 표적이 될 수 있습니다.
다른 공격자 차단
이전 블로그에서 설명한 것처럼, 이 웜은 Linux.Aidra와 같은 다른 공격자나 웜이 Linux.Darlloz에 감염된 장치를 공격하지 못하도록 차단합니다. 실제로 이 악성 코드 개발자는 지난 11월에 유포한 웜에서 이 기능을 구현했습니다.
1월 초, 다수의 라우터에서 발견된 백도어에 관한 보고가 있었습니다. 원격 공격자는 이 백도어를 이용하여 라우터에 액세스한 다음 사용자의 네트워크를 감염시킬 수 있습니다. 이는 Darlloz 개발자에게 불리하게 작용했기 때문에 이 개발자는 백도어 포트에 대한 액세스를 차단하는 기능을 구현했습니다. 즉 감염된 장치에 새로운 방화벽 규칙을 만들어 다른 공격자들이 동일한 백도어를 통해 침투할 수 없도록 한 것입니다.
감염 현황
일단 어떤 장치가 감염되면 Darlloz는 감염을 확산시키기 위해 포트 58455에서 HTTP 웹 서버를 시작합니다. 이 서버는 웜 파일을 호스팅하며 아무나 이 포트를 통해 HTTP GET 요청을 사용하여 파일을 다운로드할 수 있도록 합니다. 시만텍은 이 포트가 열린 채로 정적 경로에서 Darlloz 파일을 호스팅하는 IP 주소를 검색했습니다. 그런 다음 Darlloz 웜이 다운로드 가능하다는 전제 하에 호스트 서버의 OS 지문을 수집해 보았습니다. 아래의 통계치를 보면 감염 실태를 대략적으로 파악할 수 있습니다.
- 31,716개의 IP 주소가 Darlloz에 감염된 것으로 확인되었습니다.
- 139개 지역에서 Darlloz 감염이 발생했습니다.
- 감염된 IP 주소로부터 449개의 OS 지문이 식별되었습니다.
- Darlloz 감염 중 43%는 Linux를 실행하는 Intel 기반 컴퓨터 또는 서버에서 발생했습니다.
- Darlloz 감염의 38%는 라우터, 셋톱 박스, IP 카메라, 프린터 등 다양한 사물 인터넷 장치에서 발생한 것으로 보입니다.
그림 1. Darlloz 최다 감염 5개 지역
중국, 미국, 한국, 대만, 인도의 5개 지역이 전체 Darlloz 감염의 50%를 차지했습니다. 인터넷 사용자 수가 많거나 사물 인터넷 장치가 널리 보급된 것이 주 원인으로 보입니다.
감염된 사물 인터넷 장치
개인 사용자는 본인의 사물 인터넷 장치가 악성 코드에 감염될 수 있다는 사실을 인식하지 못할 수 있습니다. 그 결과, 이 웜은 4개월 만에 31,000대의 컴퓨터 및 사물 인터넷 장치를 공격했으며 지금도 계속 확산되고 있습니다. 이 악성 코드 개발자는 앞으로도 계속 기술 환경의 변화에 발맞춰 새로운 기능을 추가하면서 웜을 업데이트할 것으로 예상됩니다. 시만텍 역시 이 보안 위협에 대한 감시를 늦추지 않을 것입니다.
완화 조치
- 컴퓨터 또는 사물 인터넷 장치에 설치된 모든 소프트웨어에 보안 패치를 적용하십시오.
- 모든 장치의 펌웨어를 업데이트하십시오.
- 모든 장치의 기본 암호를 새 암호로 변경하십시오.
- 필요하지 않은 경우 포트 23 또는 80을 통한 외부의 연결을 차단하십시오.