최근 국내 블록체인 기반 서비스 플랫폼이 해킹을 당하여 토큰을 탈취당하는 사고가 연이어 발생하였다. 해킹으로 인해 재단이 보유하고 있던 토큰이 탈취되거나, 토큰을 발행할 수 있는 권한이 해커의 손에 넘어가 무단 발행되는 등의 피해가 발생하였다.
싸이버원에서는 해당 해킹 사고에 대한 침해사고 조사를 진행하였으며, 조사 결과, 해커는 스피어피싱 이메일을 통해 최초 침투한 것으로 확인되었다. 공격에 사용된 스피어피싱 이메일은 국내 특정 가상화폐 거래소를 사칭한 메일로써, 메일 내용뿐 아니라 메일 발신자 또한 거래소의 이메일 주소로 조작되어 있다. 메일 본문에는 첨부파일을 가장한 이미지가 존재하며, 두 이미지에는 동일한 URL 링크가 포함되어 있다. 분석 당시에는, 해당 URL에서 파일 다운로드가 되지 않아 실제 다운로드 된 파일을 확인할 수는 없었으나, 침해사고 분석 결과를 토대로 추정해보았을 때, LNK 바로가기 포맷의 악성코드가 포함되어 있는 압축파일일 것으로 판단된다.
[그림 1] 국내 특정 거래소를 사칭한 스피어피싱 이메일
스피어피싱 이메일을 통한 초기 악성코드 감염 이후에는 추가적인 악성코드들이 실행된 흔적이 발견되었지만, 대다수의 악성코드는 분석 당시 이미 삭제된 상태였다. 하지만, 백신에 격리된 파일이 일부 존재하여 복원이 가능하였으며, 이벤트 로그에서 실행된 파워쉘 스크립트를 추출할 수 있었다. 또한, 일부 삭제된 파일은 디스크에 데이터가 남아 있어 카빙을 통해 채증이 가능하였다.
위 과정을 통해 일부 악성코드를 채증하여 분석을 진행한 결과, 정보탈취 악성코드와 원격제어 악성코드(RftRAT, xRAT), RDP 터널링 도구, 다운로드 기능의 파워쉘 스크립트 등이 확인되었다. 해당 악성코드들은 북한 해킹 그룹인 김수키(Kimsuky)의 국내 해킹 공격 사례에서 발견되었던 악성코드와 매우 유사한 것으로 확인된다. 본 보고서에서는 피해 기업 사고조사 과정에서 채증된 악성코드를 살펴보도록 하겠다.
피해 시스템에서 최초 실행된 파워쉘 스크립트이다.
[그림 2] PowerShell Script_1
해당 파워쉘 스크립트의 상세 동작 과정은 다음과 같다.
(1) 현재 경로 및 %Temp% 경로를 대상으로 66,019,127 bytes 크기의 .lnk 파일 탐색
(2) .lnk 파일의 0x00002312 오프셋에 위치한 데이터를 11,366 bytes 만큼 읽어서 xor 키(0x10)로 디코딩 후, .lnk 파일과 동일한 경로에 특정 파일로 생성하여 실행
(3) .lnk 파일의 0x00004F78 오프셋에 위치한 데이터를 81,125 bytes 만큼 읽어서 xor 키(0x20)로 디코딩 후, 특정 파일(C:\Users\Public\UZIRKo.cab)로 생성
(4) .lnk 파일 삭제
(5) C:\Users\Public\UZIRKo.cab 압축을 C:\Users\Public\documents 경로에 압축해제
(6) C:\Users\Public\UZIRKo.cab 압축파일 삭제