포스팅 내용

악성코드 분석 리포트

북한 백신 프로그램 사칭, '다크 평양(Operation Dark Pyongyang)' 등장

 



안녕하세요? 이스트시큐리티 시큐리티대응센터(이하 ESRC) 입니다.


대표적인 컴퓨터 보안 프로그램 중에 하나인 백신 프로그램(Anti-Virus 또는 Anti-Malware)은 전 세계적으로 다양한 형태가 존재합니다.


물론, 북한에서도 이런 프로그램을 개발하고 있고, 대표적인 것 중에 '클락새(Kulak)' 라는 이름의 백신프로그램이 존재합니다.


이는 마치 '벌레를 잡아먹는 새'의 상징적 의미처럼, 컴퓨터에 존재하는 웜(악성 코드)을 제거한다는 의미를 가지고 있으며, 북한에서는 '백신' 대신 '왁찐' 이라는 한글 표기를 쓰고 있습니다. 



※ 출처 : https://ko.wiktionary.org/wiki/왁찐

 


이외에도 '신기(Singi)', '실리 왁찐(Sili Anti-Virus)' 등의 윈도우용 백신 프로그램이 개발되어 있습니다.


특히, '실리 왁찐' 프로그램의 경우 2018년 05월 이스라엘 보안기업 체크포인트(Check Point)에서 'SiliVaccine: Inside North Korea’s Anti-Virus' 게시글을 통해 자세한 분석자료를 공개한 바 있고, '실리 왁찐' 프로그램이 트렌드 마이크로 2005년도 엔진을 도용해 개발됐다고 밝힌 바 있습니다.


[참고자료] SiliVaccine: North Korea's Weapon of Mass Detection

▷ https://recon.cx/2018/montreal/schedule/system/event_attachments/attachments/000/000/055/original/RECON-MTL-2018-silivaccine_weapon_of_mass_detection.pdf


체크포인트(Check Point)의 리서치 자료에는 다음과 같은 내용이 포함되어 있습니다.


Our investigation found though that the JAKU file was signed with a certificate issued to a certain ‘Ningbo Gaoxinqu zhidian Electric Power Technology Co., Ltd’, the same company that was used to sign files by another well-known APT group, ‘Dark Hotel’. Both JAKU and Dark Hotel are thought to be attributed to North Korean threat actors.








■ 북한 지역에서 발견된 '실리왁찐' 사칭, 최신 악성 파일 등장 



ESRC에서는 2019년 03월 23일, 바이러스토탈이트에 북한에서 제작된 것으로 알려진 일명 '실리 왁찐(Sili Anti Virus Scanner)' 이 며칠 전 등록된 것을 확인했고, 상세한 분석을 진행한 결과 새로운 악성코드로 확인했습니다.



Name      Unconfirmed 10525.crdownload

MD5       26ee6f7c33a40eb215b27340313c54cf

SHA-1     0ad951d4b0584459f5f91f199047cad027293e62

SHA-256  67a713aa3a7b3db133d2562c7aee9ca5eee7a77b56127fff3400ec129b59ea0c


File type   RAR

Magic      RAR archive data, v1d, os: Win32

File size    835.43 KB (855477 bytes)


Name      Sili Anti Virus Scanner.exe

MD5       978ba6be4df6ba3ce8c88682e50f7e19

SHA-1     a5c6bc4da57b23ad51fd171cd3cf9c46bf9a3f05

SHA-256  6dd73715f0d71289e493e88d15df24bb02369205c54e3174d3f8bd196effa4e1


File type   Win32 EXE

Magic      PE32 executable for MS Windows (GUI) Intel 80386 32-bit

File size    2.24 MB (2344960 bytes)


Name      mbmob.exe

MD5       6d40880a890cc92515855387f6e80bba

SHA-1     bd4a472dd98c5e31d084209fb603137d9a89173b

SHA-256  6f8aa6e9256e2c234df40b366abf338a80096f82b3a5c711b4f0845ec1b84551


File type   Win32 EXE

Magic      PE32+ executable for MS Windows (GUI) Mono/.Net assembly

File size    257 KB (263168 bytes)



 특히, 이 악성 파일이 북한(KP) 지역에서 업로드 되었다는 점에 주목하고 있습니다.

다른 국가들에 비해 외부 네트워크 접속이 자유롭지 않은 북한에서 인터넷 망을 통해 최신 악성파일을 외부 웹 사이트로 등록했다는 점은 매우 흥미로운 점입니다.

더군다나 파일의 악성 여부를 검색하는 컴퓨터 보안 서비스에 올렸다는 것은 나름의 의미하는 바가 있습니.  


물론 지난 2012년과 2014년에도 이와 유사한 사례가 있었는데, 당시에는 디버그 및 릴리즈용 프로그래밍 버전의 악성코드가 'TEST.exe' 이름으로 실제 업로드된 적이 있었습니다.


이번에 식별된 파일이 북한 내부의 실제 침해사고와 관련성이 있는지, 아니면 다른 컴퓨터 보안 제품들의 악성여부 탐지 테스트를 한 것인지는 아직 불분명합니다.


해당 악성파일에 감염될 경우 키보드 입력 내용이 유출되거나, 공격자의 추가 명령에 따라 여타 예기치 못한 피해로 이어질 수 있습니다.


ESRC는 이번 악성 파일의 위협배후에 다양한 가능성을 열어두고 있으며, 악성 코드가 실행되면, '평양 광명 정보 기술사' 표시로 현혹했다는 점, 그리고 북한 지역에서 발견되었다는 특징을 종합해 '오퍼레이션 다크 평양(Operation Dark Pyongyang)'으로 명명했습니다.


저희는 해당 악성코드를 식별한 후 지속적으로 자체 조사 및 위협 인텔리전스 연구를 진행하고 있으며, 유사한 악성코드 추적도 함께 진행하고 있습니다. 


공격에 사용된 각종 침해지표(IoC)와 위협 인텔리전스 리포트는 추후 '쓰렛 인사이드(Threat Inside)' 서비스를 통해 별도로 제공할 계획입니다.



■ 보이지 않는 은밀한 위협, 공격 벡터 분석



북한 지역에서 바이러스 토탈에 업로드된 파일은 구글 크롬 브라우저로 다운로드한 임시파일명(Unconfirmed 10525.crdownload)을 가지고 있었으며, RAR 압축파일 형태입니다. 압축 내부에는 'Sili Anti Virus Scanner.exe' 파일이 포함되어 있습니다.



[그림 1] 압축파일 내부에 존재하는 악성 파일 화면



압축 파일은 바이러스토탈 기준, 2019년 03월 15일에 업로드됐고, 압축 내부에 존재하는 'Sili Anti Virus Scanner.exe' 파일은 한국 시간(KST) 기준으로 2019년 03월 13일 10시 08분에 제작되었습니다.


실제 파일이 제작된지 얼마 지나지 않은 시점에 북한 지역에서 인터넷을 통해 파일이 올려진 것을 알 수 있습니다.


'Sili Anti Virus Scanner.exe' 파일은 다음과 같이 '실리 왁찐' 프로그램 아이콘과 속성 정보를 보유하고 있습니다.



[그림 2] 파일 아이콘과 속성 정보 화면



파일이 실행되면 실제 프로그램과 거의 흡사한 화면이 나오고, [START SCAN] 버튼이 보여집니다.



[그림 3] 실행된 후 보여지는 화면



만약, [START SCAN] 버튼을 클릭하게 되면, 실제 검사 진행바가 동작하고 마치 시스템을 검사하는 것처럼 보여집니다.


하지만, 실제로는 보안기능은 전혀 존재하거나 작동하지 않고, 은밀히 추가 악성 파일을 컴퓨터에 드롭(Drop)하고 작업 스케줄러를 통해 지정한 시간마다 악성 파일이 자동으로 실행되도록 설정합니다.



[그림 4] 검사가 완료된 것처럼 보여지는 화면



사용자는 여기까지 화면을 보고, 해당 프로그램의 작동이 정상적으로 끝난 것으로 인식하고, 프로그램을 종료하게 될 것입니다.


그러나 이때부터 해당 프로그램에 숨겨져 있던 악성 코드가 작동하고, 컴퓨터의 정보 탈취를 시도하는 기능을 수행하기 시작합니다.



■ 숨겨져 있던 '오퍼레이션 다크 평양' 코드 분석



먼저, 'Sili Anti Virus Scanner.exe' 파일은 32비트로 만들어진 실행파일로 1개의 'DATA' 리소스 영역이 존재합니다.


프로그램이 작동된 후 [START SCAN] 명령이 작동하면, 해당 리소스에 포함된 코드가 로드되어집니다.



[그림 5] 악성 파일 내부의 리소스를 찾는 화면



'DATA' 영역에 포함되어 있는 '137' 리소스 코드는 2단계로 인코딩 처리되어 있습니다.


BASE64 방식과 0xFF 키 값으로 XOR 연산을 하여, 내부 코드를 암호화해 두었고, 복호화 과정이 진행되면 또 다른 페이로드(Payload) 코드가 다음의 경로에 생성됩니다.



- C:\Users\[사용자 계정명]\AppData\Roaming\mbmob.exe



[그림 6] 리소스에 존재했던 코드가 복호화된 화면



생성되는 'mbmob.exe' 코드는 64비트로 제작되었기 때문에 윈도우즈 64비트 운영체제만 감염대상으로 삼고 있습니다.


악성 파일은 작업 스케줄러에 'Emergency Updater' 이름으로 등록하고, 2019년 01월 01일 오후 12시에 트리거된 후 무기한으로 10분마다 반복되도록 설정합니다.



[그림 7] 작업 스케줄러에 등록된 화면



작업 스케줄러에 의해 트리거가 작동하게 되면 다음과 같은 C2 서버로 통신을 시도하게 되며, 파워쉘이나 CMD 명령 등을 실행할 수 있습니다.



- office360s.ignorelist.com



C2 서버는 FreeDNS (freedns.afraid.org) 서비스로 등록이 된 것으로 보이며, 자세한 내용을 분석 중에 있습니다.


 http://freedns.afraid.org/domain/registry/



[그림 7-1] freedns.afraid.org 서비스 도메인 화면



[그림 8] 악성코드 내부에 포함된 명령제어(C2) 서버 화면



'keylog.txt' 파일을 통해 컴퓨터 키로깅 데이터 등을 수집할 수도 있습니다.



[그림 9] 악성코드 내부에 포함되어 있는 keylog.txt 파일 화면



공격에 활용된 악성파일은 'Lilith, The Open Source C++ Remote Administration Tool' 코드가 사용되었습니다.





[그림 10]다크 평양 악성파일과 Lilith RAT 코드 비교 화면



ESRC에서는 해당 악성코드가 은밀하게 수행하는 통신 기능에 주목하고 있으며, 유사 보안 위협에 대한 모니터링을 강화하고 있습니다.


더불어 해당 악성코드에 대해 알약에서 'Trojan.Dropper.2344960S' 등으로 긴급 업데이트가 완료된 상태입니다.




티스토리 방명록 작성
name password homepage