정보 탈취형 악성코드 에이전트테슬라(AgentTesla)가
악성 VB스크립트(VBScript)를 통해 유포되고 있다. 스크립트 파일에는 여러 번 난독화된 코드가 다수 존재한다.. 주간 악성코드 통계에서 꾸준히 상위권을 유지 중인 에이전트테슬라는 지난 5월 윈도우 도움말 파일(*chm)을 악용했으며, 유포 방식을 계속 변경하고 있다. 에이전트테슬라가 실행되는
과정을 자세히 알아보자.
에이전트테슬라는 메일에 첨부된 압축파일의 형태로 유포되는 것이 일반적이다. 최근
국내 기업 사칭 메일을 이용한 사례도 확인됐다.

[그림 1] 악성코드
실행을 유도하는 사칭 이메일
압축파일의
내부에는 VB스크립트가 존재하며, 파일명으로는 주로 송장이나
주문서, 제안서 등이 사용된다. 현재까지 확인된 파일명은 [표 1]과 같다.

[표 1] 확인된 파일명
VB스크립트 파일에는 [그림 2]처럼 주석과 더미
코드가 다수 존재한다.

[그림 2] VB스크립트 파일
주석 및 더미 코드 외에 코드 아래에는 현재 실행된 VB스크립트 파일의
문자열을 2글자씩 제외하며 인식하는 코드가 있다.

[그림 3] VB스크립트
내부 코드
해당 코드
실행 시 주석 문자열이 복호화돼 새로운 스크립트 코드가 실행된다. 복호화된 코드는 난독화된 셸코드 및
추가 파워셸 명령어를 포함한다.

[그림 4] 복호화된 VB스크립트 코드
[그림 4]의 스크립트 코드가 실행되면 난독화된 셸코드인 ‘Ch8’의
값이 HKCU\Software\Basilicae17\Vegetates 에 저장된다.

[그림 5] 레지스트리에 저장된 값
그런 다음, ‘O9’ 변수의 값을 파워셸로 실행한다. ‘O9’ 변수에는 파워셸
명령어가 저장돼 있는데, [그림 6]처럼 난독화되어 있다.

[그림 6] 실행되는 파워셸 명령어
파워셸
코드는 ‘$Quegh’ 변수에 저장된 난독화된 값을 3글자씩
제외하는 방식으로 복호화한다. (ex. UnsIPujEFolXInt
-> IEX)
복호화된
명령어 역시 난독화되어 있으며, 최종적으로 실행되는 코드는 [그림
7]과 같다.

[그림 7] 최종적으로 실행되는 파워셸 명령어
앞서 HKCU\Software\Basilicae17\Vegetates에
저장한 난독화된 셸코드를 base64로 복호화해 실행한다. 실행된
셸코드는 정상 프로세스인 CasPol.exe에 에이전트테슬라 악성코드를 인젝션한다. 이때 에이전트테슬라는 사용자 PC 정보를 수집해 CO_[user명]/[PC명].zip으로
압축한 후 메일을 통해 유출한다.
공격자가 에이전트테슬라를 유포하는 데 사용한 메일 정보는 다음과 같다.
·
From :
hasan@edp-bkv.com
·
To :
kingpentecost22@gmail.com
·
pw :
Fb56****65fr

[그림 8] 유출된 정보
자세한 내용은 ASEC 블로그에서 확인할 수 있다.