파이어아이 스토리

어둠 속에서 한줄기 빛을 찾듯이 하는 위협 헌팅 - SolarWinds의 IT 관리 솔루션 업데이트를 이용한 공격자 헌팅 스토리

위협 헌팅(threat hunting)은 적극적인 방어 활동입니다. 적절한 경험과 도구 그리고 인력이 있다면 최신 공격이나 취약점 관련 소식이 있을 때 패치나 대책안이 나올 때까지 손 놓고 있지 않고 위협 헌팅을 통해 위험을 탐지하고 제거하기 위해 노력하는 것이 효과적입니다. 내부 역량이 충분치 않다면? 파이어아이가 제공하는 관리형 탐지 및 대응(MDR) 서비스를 이용하는 것도 한 방법일 수 있습니다. 이번 포스팅에서는 지난 1월 모두를 놀라게 한 SolarWinds의 IT 관리 솔루션 업데이트를 이용해 SUNBURST 백어도를 배포한 트로이 목마 공격 관련해 맨디언트가 어떤 식으로 위협 헌팅을 하였는지 소개합니다.

SolarWinds의 IT 관리 솔루션 업데이트를 이용해 SUNBURST 백어도를 배포한 트로이 목마 공격 분석

참고로 SUNBURST 백도어 이슈가 터졌을 때에도 MDR 이용 기업은 큰 걱정이 없었습니다. 공격 그룹인 UNC2452와 그들이 심은 SUNBURST 악성 코드에 대해 잘 알지 못해도 두렵지 않습니다. 위협 헌팅을 통해 충분한 정보를 쌓고 이를 바탕으로 고객 환경에서 탐지와 대응 활동을 하는 MDR 서비스가 다 알아서 해주었기 때문입니다. SolarWinds 관련 취약점이 공개된 날 이미 파이어아이는 MDR 고객이 SUNBURST 악성 코드 피해를 입지 않도록 노력하고 있었습니다. MDR 고객 환경에서 SolarWinds 취약점을 이용한 흔적이 있는지 그리고 침입에 성공해 내부 이동을 하고 있는 정황은 없는지 식별하는 활동을 하고 있었던 것입니다. 이런 빠른 대응이 가능한 것은 맨디언트가 1년 365일 위협의 최전선에서 침해 조사와 위협 탐지 활동을 하고 있기 때문입니다.

맨디언트의 UNC2452 헌팅 경험담

맨디언트는 취약점 공개를 전후하여 UNC2452가 사용하는 전술과 기술을 깊이 있게 들여다보았습니다. 맨디언트는 SUNBURST 악성 코드만 유일한 증거가 아니라는 가정 하에 모든 측면에서 UNC2452의 활동 가능성을 훑어봤습니다. 그리고 다음과 같이 UNC2452는 전통적인 공격자와 좀 다른 접근을 취함을 알아냈습니다.

  • 디지털 서명된 바이너리의 컴파일된 수천 라인의 합법적인 코드 내에 악성 코드를 숨김
  • IT 관리에 쓰이는 SolarWinds Orion 플랫폼이 갖는 다양한 시스템에 대한 접근의 용이성의 특징을 잘 활용해 측면 이동을 전개
  • 수십 종에 이르는 엔드포인트 보안 도구를 비활성화 시킴
  • 1단계와 2단계 C2 통신에 DNS를 사용함
  • 신뢰할 수 있는 Windows 도구를 이용하는 LotL(Living off the Land) 방식으로 정찰하고, 자격 증명 정보를 수집해 측면 이동

UNC2452와 같이 엔드포인트 도구를 비활성화하는 식으로 방어 체계를 해제할 경우 보안 관리자는 마치 밝은 방의 불이 갑자기 꺼지는 느낌을 받습니다. 갑자기 불이 꺼진 틈을 타 누군가 몰래 들어오는 것을 상상해 보십시오. 사방을 분간할 수 없다 보니 더듬더듬 벽을 짚고 방향성 없이 헤맬 수밖에 없습니다. 이런 때 어둠을 밝히는 빛 한 줄기가 비친다면? 방구석에 숨어 있는 침입자의 모습을 어렴풋하게 볼 수 있을 것입니다. 이 비유를 탐지와 대응 활동으로 연결해 보시죠. 한 줄기 빛은 어둠 속에서 힌트를 찾는 데 필요한 '가시성'입니다.

가시성은 오랜 경험을 통해 쌓이는 노하우입니다. 이 경험은 다양한 환경에서 수집한 정보를 토대로 쌓입니다. 맨디언트는 위협의 최전선에서 침해 조사를 하는 가운데 전 세계 곳곳에 있는 엔드포인트, 네트워크, 이메일, 클라우드 솔루션을 통해 수집하는 정보를 통해 가시성을 확보합니다. 이를 통해 깜깜한 어둠 속에서도 공격자가 남긴 흔적을 구분합니다. 경험 많은 사냥꾼은 아주 작은 흔적만으로도 사냥감이 언제, 어떤 방향으로 갔는지 아는 것과 같은 이치입니다.

본론으로 돌아와 맨디언트가 어떤 식으로 위협 헌팅을 하는지 알아보겠습니다. 다음 다이어그램은 SUNBURST 악성 코드 관련해 맨디언트가 어떤 식으로 위협 헌팅을 했는지를 보여줍니다.

  1. 맨디언트 팀은 SolarWinds 플러그인, 2단계 암호화 인증서 등 UNC2452가 사용하는 기술을 식별하기 위해 특별히 고안된 헌팅 캠페인을 만들었습니다.
  2. CS DNS DGA 발견 후 사용 가능한 네트워크 트래픽을 통해 악의적인 DNS 요청을 찾았습니다.
  3. 맨디언트 팀은 UNC2452가 사용할 수 있는 보조 맬웨어 인스턴스와 추가 공격 활동의 증거를 찾는 캠페인을 식별하기 위해 무엇을 찾을 것인지 헌팅 캠페인 미션을 구체화였습니다.
    • 예약된 작업을 포함한 지속성 메커니즘
    • 스테이징 디렉토리 및 실행 파일이 해당 위치에 기록
    • 데이터를 훔치는 데 사용되는 압축 소프트웨어
    • 인코딩 또는 난독화된 파워쉘 실행

예와 같이 맨디언트는 헌팅 캠페인을 설계하여 UNC2452가 동원한 전술이 무엇인지 알아내었습니다.

위협 헌팅 캠페인의 기본 원칙은 원격 측정 정보를 효과적으로 활용하는 것입니다. 하지만 각종 센서 정보와 로그에 접근할 수 있다고 해서 헌팅이 성공하는 것은 아닙니다. 공격자에 대한 이해가 없을 경우 방대한 양의 정보 더미 속에서 헤맬 가능성이 큽니다. 마치 건초 더미에서 바늘을 찾듯이 말이죠. 일선의 경험을 바탕으로 공격자의 동기, 전략과 전술 등 맥락을 이해해야 원격 측정 정보를 제대로 활용할 수 있습니다.

이상으로 UNC2452 공격 그룹과 SUNBURST 악성 코드를 예로 위협 헌팅에 대해 간단히 알아보았습니다. 더 자세한 내용은 2월 25일 실무진이 진행하는 웨비나(영문)를 통해 들을 수 있습니다.