본문 바로가기

Analysis

19. 이벤트 당첨 위장 한글 악성코드 분석

이번 글은 '이벤트 당첨자 개인정보 수집 및 이용 동의 안내서.hwp' 악성코드를 분석한다.

현재 통신이 안되서 드롭되는 악성코드에서 감염사실 이후에 공격자 서버로부터 받아오는 DLL 등 추가 악성코드는 분석하지 못했다.

결론적으로 이 악성코드는 정보탈취 목적의 악성코드이며 이후에 암호화폐와 관련된 사람들에게서 지갑을 탈취한다거나 추가적인 공격에 활용되지 않을까 추정해본다.

 

악성코드는 한글 악성코드이다. 최종 저장자는 'Tester' 라고 저장되어있는걸 확인할 수 있다.

최종 저장자

 

한글 내 EPS를 살펴보면 헥스값들로 페이로드가 저장된 걸 볼 수 있다. 결론적으로 이 페이로드를 xor 복호화 한 다음에 행위를 수행한다.

EPS 내 헥스 값

 

악성코드를 그냥 실행하면 (주)DAYBIT 이라는데를 사칭해서 이벤트가 당첨됐으니 이런저런걸 적어라 라는식으로 동의를 받는다고 한다. 하지만 뒤에서는 악성코드가 이미 실행된다.

한글 열람시 화면

 

아까 한글 내 EPS에 헥스값으로 저장된 값들을 실제로 이용하기 시작한다. 헥스 값들은 숫자 "240"과 XOR 연산을 통해 페이로드로 복호화된다.

xor 연산

 

필자는 해당 XOR 연산 복호화를 아래와 같은 간단한 코드로 풀어냈다.

XOR 스크립트

 

풀어내면 아래와 같은 값이 등장하게된다. 이 안에 실제 악성행위를 수행하는 55 8B (PUSH EBP) 로 시작하는 헥스 값이 들어있다. 해당 페이로드를 이용해 악성행위를 한다.

XOR 복호화 뒤 코드
코드 안 페이로드

 

정보 탈취 목적의 악성코드 답게 여러가지 정보를 탈취한다. 기본적으로 %TEMP% 경로 아래에 추가로 다운로드 받을 악성코드를 저장하기 때문에 먼저 %TEMP% 경로를 가져오고, 컴퓨터 명이나 현재 감염된 PC의 시간정보를 탈취한다.

%TEMP% 경로 획득
컴퓨터명 탈취
감염 PC 시간정보 탈취

 

이후에 특정 파일이 존재하는지 확인하는데, 추정하기로는 추가적으로 받는 악성코드를 저장하기 위한 용도가 아닐까 생각된다. 분석시에는 한글 파일에서 따로 생성하지 않았고 존재하지 않았기 때문에 행위를 추적할 수 없었다.

파일 존재 확인
확인하는 파일 명
파일 존재 확인
확인하는 파일 명

 

이후에 추가 악성코드를 다운로드하기위해서 공격자 서버와 연결해야하기 때문에 권한을 얻어오게된다. 특이한 점은 기본적으로 사용하는 권한을 얻는 함수가 아니라 Native 함수를 사용했다는 점이다.

권한 획득

 

뭔가 뚝 끊긴 느낌이지만 공격자 서버가 닫힌 현재까지는 확인할 수 있는 부분이 여기까지다. 추가 악성코드를 다운로드 해오지도 않는다. 권한 획득 이후에는 공격자 서버인 http://poulerr[.]scienceontheweb[.]net 로 연결해서 악성코드를 받아오고 감염 PC의 여러 정보를 탈취해 다시 공격자 서버로 업로드한다.

아마도 탈취한 정보를 가지고 이후 추가적인 공격에서 이용할 것으로 보인다.

반응형