초기 조사 결과 및 Fire Sale 우크라이나의 악성코드 역분석

[post-views]
11월 10, 2015 · 8 분 읽기
초기 조사 결과 및 Fire Sale 우크라이나의 악성코드 역분석

다시 안녕하세요, 약속드린 대로 오늘은 우리가 화재 판매의 1단계였다고 믿는 것에 대한 더 많은 정보를 제공해 드리겠습니다. 선거 기간 동안 우크라이나의 미디어 산업 전반에 걸쳐 발생한 사이버 공격입니다. 먼저 좋은 소식, 우크라이나의 지역 CERT에서 발생한 사건에 대한 요약이 이미 있습니다. 여기서 찾을 수 있습니다: http://cert.gov.ua/?p=2370.

우리는 이제 공격이 두 가지 주요 구성 요소를 사용하여 수행되었다는 증거를 가지고 있습니다: 전달을 위한 백도어와 페이로드/(사이버) 무기이며, 실제로 전체 산업에 영향을 미쳤지만 방송을 중단하지는 않았습니다 – 아마도 그것은 원래 그것을 목표로 하지 않았기 때문일 것입니다. 이는 다소 불안한데, 이는 더 나쁜 것을 테스트해볼 의도가 있었거나, 우리가 생각했던 것보다 더 빨리 감지했거나, 운이 좋았거나, 여러 요인의 혼합 때문일 수 있습니다.“화재 판매”의 백도어 부분백도어 파일은 다음과 같이 불립니다:aliide.sys, amdide.sys그리고 연구가 진행됨에 따라 우리는 더 많은 파일을 발견했습니다: acpipmi.sys, adpu320.sys또는 임의의 드라이버 이름 .sys. 악성 *.sys 파일은 Windows/System32/drivers 디렉토리에 위치해 있으며, 일반적인 드라이버인 것처럼 가장하고 있습니다. 가장 흔한 것은 aliide.sys and amdide.sys.

일반적인 드라이버와의 차이점을 간단히 구별할 수 있는 방법은 크기를 비교하는 것입니다: 일반적인 드라이버는 20 KB, 보통 최대 50 KB입니다. 초기에는 우리는 파일을 VirusTotal에 업로드했지만 어떤 백신도 이를 악성으로 표시하지 않았습니다.

이후 우리는 AV 공급업체에 직접 연락을 했고, 하나씩 그들은 서명을 공개하고 악성 코드의 출처를 확인했습니다 (세상 여러분 고맙습니다!!). 여기 제 손에 들어온 샘플에 대한 새롭게 갱신된 VirusTotal 결과입니다:

탐지가 여전히 초기 단계에 있지만 실수하지 마십시오 – 우리는 이미 유명한 블랙에너지 악성 코드와 상대하고 있습니다. 2015년 이미 ICS 시스템을 대상으로 사용된 것으로 CyberX에 의해 보고되었습니다.

이 시나리오에서는 블랙에너지가 가짜 IDE 컨트롤러와 CPU 드라이버를 통해 수개월 앞서 심어졌습니다 (10월 25일 선거일 날짜로). 여러분이 그것을 계획했는지 아닌지를 생각해 보도록 하겠습니다…

CERT-UA가 발표한 백도어에 대한 매우 그럴듯한 가설이 하나 있는데, 이는 원래의 드라이버는 유효한 인증서 서명을 가지고 있지만 교체된 것들(백도어/루트킷 등)은 자체 서명된다는 것입니다 (좋은 소식이죠?).

결론 1: 블랙에너지가 부활하여 고급 사이버 무기를 전달하기 위한 은밀한 운송 시스템으로 행동하고 있으며, 이는 합법적인 Windows 드라이버로 가장하고 무작위 이름이지만 자체 서명된 인증서 서명을 가지고 설치됩니다. 저는 무언가 더 불길한 것이 다가오고 있다고 생각합니다…. 하지만 그저 1D10t의 의견일 뿐입니다 😉th).I will let you folks think about that and if it was planned or not…

There is one very plausible hypothesis regarding the backdoor published by CERT-UA basically telling that original drivers have a valid certificate signature, while replaced ones (backdoors / rootkits, etc.) are self-signed (that’s good news, right?!).

Conclusion 1: BlackEnergy has resurrected and is acting as a stealthy transportation system to deliver advanced cyber weaponry, it is installed to pretend to be a legit Windows driver, having a random name but a self-signed certificate signature. I think there is something more sinister coming up…. But hey that’s just an 1D10t’s opinion 😉

페이로드발견된 페이로드/무기 파일은 ololo.exe 또는 감염된 svchost.exe(올바른 위치 대신 c:Windows 에 배치된) c:WindowsSystem32) 파일로 악성 페이로드입니다.

우선, 공격 당일 정확히 무슨 일이 발생합니까? 백도어가 스스로 활성화되며, 공모되거나 감염된 모든 기기에서 “수동 시작”에서 “자동 시작”으로 프로세스 시작 매개변수를 심지어 몇 초 만에 변경합니다. 이게 전 산업에 걸친 공격이 동시에 발생하게 했던 것입니다 – 누군가가 리모컨이나 트리거를 눌렀던 것처럼, 대상에 대한 네트워크 연결을 시작할 필요조차 없이!

Fire-Sale-Ukraine_4

Fire-Sale-Ukraine_4_1

And only when the right time came, on 24th 선거 시작 전날 밤인 10월에 봇넷이 무기 부분인 ololo.exe/svchost.exe 을 전달하기 위해 활성화되었습니다.

이 목표 공격의 가장 위험한 부분은 블랙에너지가 각 공격에 대해 개별적으로 설계되고 매우 선택적으로 배포된다는 점입니다 (잠시만 생각해 보십시오…).

우리는 다시 한 번 확인하고 결론낼 수 있습니다 블랙에너지 봇넷은 아직 죽지 않았으며, 새로운 매우 고급 형태로 재등장했으며, 이는 (스포일러 경고!) 공공 블랙리스트나 인텔 피드에 없다는 것입니다.Fire-Sale-Ukraine_6페이로드/무기에 대한 세부 사항으로 돌아가서, ololo.exe/svchost.exe 파일 이름만으로는 완전한 IOC(침해 지표)가 되지 않지만 이제 AV 공급업체에게 악성 코드 샘플을 보냈기 때문에 VirusTotal에서 사용 가능한 해시입니다.

페이로드/무기의 연구(및 완전 리버스)는 여전히 진행 중이지만, 이미 309개 이상의 함수와 140개 이상의 변수를 점검하고 설정하며 작업한다는 것이 확실합니다. 코드의 주요 부분은 Visual C++로 작성되었으며, 코드가 매우 깔끔하고 전문적인 것으로 보입니다.

이것은 $랜덤한 사람들이 만든 것이 아니며, 이들은 정확히 무엇을 하고 있는지 아는 사람들입니다. 이 .exe 파일은 사용자 컨텍스트, 환경 등을 살피는 여러 함수/입력과 단계를 가지고 있습니다. 비관리자 계정에서 실행될 경우 ololo.exe/svchost.exe는 하드 드라이브를 16MB 파일로 채우는 이벤트를 생성합니다 (WindowsTemp_random_name.tmp) ASCII 문자의 반복으로 16 MB 크기를 이룰 때까지 이루어집니다.

Fire-Sale-Ukraine_8여기 감염된 호스트에서 발견된 ololo.exe를 프로세스로 볼 수 있으며, 당신이 관리자를 호출하도록 팝업을 생성합니다! (작업으로 볼 때 꽤 멋지다고 생각합니다)

Fire-Sale-Ukraine_9이 이벤트(우리는 가정합니다)는 로컬 관리자가 아닌 Windows 기반 클라이언트의 사용자에게 랩톱/데스크톱에서 문제를 해결하도록 관리자에게 도움을 요청하도록 강요하기 위해 사용됩니다. 악성 코드가 관리자 계정 (컨텍스트 변경)을 감지할 때, 전혀 다른 방식으로 작동합니다. 먼저 페이로드는 40분 동안 피해자가 관찰한 대로 타겟의 환경에 대한 완전한 정찰을 수행합니다. 악성 활동은 초기적으로 감염된 PC/랩톱의 부트 레코드/로더를 수정하는 작업으로 시작됩니다.

그리고 감염된 컴퓨터에서 파일을 찾기 시작합니다.

바이러스가 찾고자 하는 것을 찾으면 모든 존재의 흔적이나 증거를 지우기 시작하고 (미디어 산업에서는 영상 편집 워크스테이션에서 찾을 수 있는 .avi, .mpeg, .mjpeg 등을 찾기 위한 것이었습니다.) 파일에 제로를 써서 지웁니다.

여담이지만, 악성 코드가 검사하는 파일 확장자로 철저히 2830개 이상이 됩니다. 이는 가능한 모든 문서, 멀티미디어, 아카이브, 데이터베이스, 실행 파일, 소스 코드 등을 포함합니다. 이것이 C&C의 페이로드에 의해 지능적으로 선택된 것일까요? 현재로서는 40분 동안 정확히 무엇을 검색하는지 명확하지 않으며 40분이 전혀 관련이 있는지도 알 수 없습니다 – 이는 타이머라기보다 특정 감염된 기기에서 검색이 얼마나 빨리 수행되었느냐를 나타내는 지표일 가능성이 높습니다. 따라서 악성 코드 샘플에 대한 추가 리버스 엔지니어링이 필요합니다… 또한 흥미로운 점은 과거에 본 공격의 다른 스파이웨어처럼 행동한다는 점입니다. 공격자가 정말 누구이고 최종 목표가 무엇인지 스스로 판단해 보십시오…

이제 잠시 멈추고 다른 어떤 위협이 있을까요? 악성 코드의 행동은 발견된 것에 따라 크게 달라질 수 있으며, 공격 의도에 따라 원하는 것을 거의 무엇이든 할 수 있습니다. 예를 들어 도메인 컨트롤러에서 SAM 파일을 가져와 “홈 위치”에서 비밀번호 해시를 추가 업로드하는 것, 네트워크 주변에 백도어와 페이로드를 추가 배포하고 터널을 여는 것 등이 있습니다. 이런 식으로 위협의 지속성을 확립합니다 (APT에게 인사!). 공격 대상은 혼란을 정리하는 데 많은 시간과 자원이 필요할 것입니다. 회사가 백도어를 정리하는 동안에도 터널은 열려 있을 것입니다. 터널을 청소하는 동안, 새롭고 백신에 탐지되지 않는 무기를 미리 로드할 것입니다. 반복해주세요…

또한 바이러스는 위치나 시간에 민감하다는 사실도 발견했습니다. 우리는 전 세계 여러 샌드박스에 악성 코드 샘플을 보냈지만 모두 악성 코드를 찾지 못했습니다. 단 하나의 샌드박스는 미국에 있었고, 이는 연결을 나타냈습니다: 명령 / 함수가 케임브리지, 매사추세츠 NTT 아메리카 데이터 센터의 서버에 연결하기 시작하였으며, 서버 IP는 23.61.75.27입니다. Fire-Sale-Ukraine_12이는 미국을 대상으로 한 다음 공격 단계일 수도 있고, C&C가 미국에 있거나 C&C가 미국에 위치한 CDN (Akamai) 뒤에 있거나 악성 코드가 단순히 시간에 민감하여 일정 시간이 지나야 C&C에 접촉하는 것일 수도 있습니다 (아마도 미국 샌드박스가 유일하게 타이머를 작동시킨 것이었을 것입니다). 어쨌든 발견한 유일한 IP 및 페이로드는 다음과 같습니다.이제 공격 단계를 요약하고 첫 번째 결론을 내릴 수 있습니다:

  • 외부 정찰 (정보 부족? 선거 캠페인에 대한 OSINT일 수도 있나요?)
  • 침투 – 블랙에너지 백도어 주입.
  • 내부 정찰 – 악성 코드가 환경을 연구, 140개 이상의 변수 체크, 원시적인 AI처럼 발견된 결과에 따라 행동 변경
  • 지속성 확보 – 터널과 다양한 백도어를 만들어 쉽게 정리되지 않고 백신 저항성이 있음.
  • 공격 목적의 타이밍 및 동기화된 실행 – OLOLO.exe/SVCHOST.exe 또는 다른 무기 전달 및 실행.

공격 단계 맵

Fire-Sale-Ukraine_13악성 코드/페이로드가 더럽혀진 일을 끝내고 나면, 모든 미디어 파일(또는 노리고 있던 다른 파일)을 삭제하고 전달 파일(백도어였어?)과 자신이 점유했던 공간을 0으로 채워 자신의 서명과 존재의 증거를 제거합니다. 주목할 점은, 블랙에너지가 스텔스 상태로 작동하고 있으며, 그 후 사라진다는 것입니다 (흔적을 감추려고 하죠?).

이제 감염을 발견하는 방법을 명확히 이해하게 되었지만 우리는 C&C와 배포 네트워크에 대해 아직 알지 못합니다. IP 주소와 악성 코드 해시를 가지고 모든 알려진 Open Threat Intelligence 피드를 통과시켰지만, Zeus 트래커, OTX, VxVault, IPvoid, VirusTotal 등에서 한 건도 없음으로 나왔습니다. 또한 10개의 상용 소스에서 해시와 IP를 확인했으며, 다시 한 번 결과가 없었습니다. 이는 블랙에너지가 매우 비밀리에 사용되며 현재 대부분의 Threat Intelligence 솔루션을 우회하고 있는 새로운 봇넷을 가지고 있음을 나타냅니다. 또한 백도어가 인터넷 통신을 시작하지 않았다는 중요한 점도 있습니다. 따라서 프로토콜 터널링 (즉, DNS, DHCP, ICMP)은 아직 발견되지 않았습니다 (YET!). 저는 Threat Intelligence가 비효율적이라고 말하는 것이 아닙니다. 오히려 전 세계적으로 방어를 구축하는 가장 빠른 방법이지만, 이는 이 공격이 처음으로 발견되었을 때(또는 이 공격의 개념 증명?)라는 점에서 의미가 있습니다.

저는 다른 CERT에 관련된 공격 세부사항을 제공하고 있으며, 이 공격과 미래의 공격이 우리의 기술과 파트너의 기술을 사용하여 어떻게 막을 수 있는 지에 대해 기업들과 논의하고 있습니다. 현재로서는 SOC 프라임이 QUALYS, SNORT, OSSEC, ARCSIGHT, SPLUNK, QRADAR와 작동하는 공격 탐지 시그니처를 출시했습니다 (백도어가 있는지 여부를 감지하는 가장 빠른 방법); 필요로 하는 모든 사람에게 무료로 제공되는 탐지 도구를 위해 SOC 프라임에 직접 연락하십시오. 조사 진행과 악성 코드 샘플의 완전한 리버스 엔지니어링이 가능해지면 업데이트를 게시할 것입니다.

이 기사가 도움이 되었나요?

동료들과 좋아요를 누르고 공유하세요.
SOC Prime의 Detection as Code 플랫폼에 가입하세요 귀하의 비즈니스와 가장 관련 있는 위협에 대한 가시성을 향상시키세요. 시작하고 즉각적인 가치를 창출하기 위해 지금 SOC Prime 전문가와의 미팅을 예약하세요.