AgentTesla 등 닷넷 기반 인포스틸러 악성코드를 추가로 다운로드

[보안뉴스 김영명 기자] 악성코드를 실행하는 과정에서 DNS TXT 레코드를 활용하는 정황이 발견됐다. DNS TXT 레코드는 도메인 관리자가 DNS에 텍스트를 입력할 수 있는 기능이다. DNS TXT 레코드를 활용하는 방식은 보편적인 악성코드 실행방법이 아니기 때문에 보안 위협 분석·탐지를 비롯한 여러 관점에서 주목받고 있다.

[보안뉴스 / 6.20.] ‘주문 문의’ 가장한 PPAM 파일 첨부 피싱 메일 유포... DNS TXT 활용한 공격

▲악성 PPAM 파일이 첨부된 피싱 이메일[자료=안랩 ASEC 분석팀]

안랩 ASEC 분석팀에 따르면, DNS TXT 레코드는 도메인 관리자가 DNS에 텍스트를 입력할 수 있는 기능이다. 원래 DNS TXT 레코드는 사람이 읽을 수 있는 메모를 기입하기 위한 목적이었으나, 현재는 스팸메일 수신방지 & 도메인 소유권 확인 목적을 포함해 DNS에 저장된 다양한 유형의 정보를 나타내기 위해 사용되고 있다.

현재 주로 사용되는 대표적인 사용 목적은 △스팸메일 수신방지 △도메인 소유권 확인 등 두 가지다. 먼저 ‘스팸메일 수신방지’는 스팸 메일을 발송하는 공격자는 종종 이메일을 발송하는 도메인을 위조(스푸핑)하려고 하는데, 이때 메일을 수신하는 서버는 이메일이 신뢰할 수 있는 주소에서 온 것인지 확인하는 과정을 수행한다. 이때 사용되는 핵심적인 요소가 DNS TXT 레코드다.

‘도메인 소유권 확인’ 측면에서는 도메인 관리자는 특정 정보가 포함된 TXT 레코드를 업로드하거나 현재의 TXT 레코드를 수정해 해당 도메인을 소유하고 있음을 증명할 수 있다. 하지만 이번에 발견된 악성코드가 DNS TXT 레코드를 활용하는 방식은, 오늘날 일반적으로 DNS TXT 레코드가 활용되는 방향과는 조금 다르다. 오히려 본래의 사용 의도였던 DNS 관련 정보를 기입하기 위한 것이 더 가깝다고 볼 수 있다.

공격자는 피싱 이메일에 주문 문의(Order Inquiry)를 가장한 PPAM(Power Point Add-In Macro) 파일을 첨부했다. PPAM 파일은 사용자 정의 매크로 및 VBA 코드 등 특수기능을 저장한 파워포인트에서 실행가능한 파일이다. 파워포인트의 매크로가 실행되면 파워쉘을 통해 nslookup 관리도구가 실행되는 것을 확인할 수 있다.

[보안뉴스 / 6.20.] ‘주문 문의’ 가장한 PPAM 파일 첨부 피싱 메일 유포... DNS TXT 활용한 공격

▲PPAM 파일의 매크로 코드[자료=안랩 ASEC 분석팀]

PPAM 파일 내부에 존재하는 매크로 코드는 매우 간단하다. 매크로가 실행되면 파워쉘(PowerShell)을 통해 nslookup 도구를 실행한 후, DNS TXT 레코드를 쿼리하는 짧은 내용으로 구성돼 있다. 매크로 코드가 난독화된 것도 아니며 코드의 내용도 매우 간단하지만, 주목할만한 점은 DNS TXT 레코드에 공격자가 원하는 다음 프로세스에서의 실행 커맨드를 입력해 둔 것이다. 이를 통해 공격자는 안티바이러스 제품의 탐지를 우회하기 위한 다양한 시도를 해보는 것으로 추정된다.

일반적으로 DNS TXT 레코드의 쿼리 결과를 보면 google-site-verification 토큰을 비롯해 SPF 레코드 설정이 돼 있는 것을 알 수 있다. 하지만 공격자 서버의 DNS TXT 레코드를 확인해보면, DNS TXT 레코드의 일반적인 사용 목적과는 거리가 먼 데이터가 출력되는 것을 알 수 있다. 공격자는 다양한 서브 도메인을 생성해 계산기 프로그램을 실행시킨다거나, js 파일이 아닌 vbs 파일도 활용해 수차례의 테스트를 수행해 본 것으로 판단된다는 게 안랩 ASEC 분석팀의 설명이다.

[보안뉴스 / 6.20.] ‘주문 문의’ 가장한 PPAM 파일 첨부 피싱 메일 유포... DNS TXT 활용한 공격

▲공격자 웹서버의 다양한 서브도메인에 대한 nslookup 확인 결과[자료=안랩 ASEC 분석팀]

공격자는 DNS TXT 레코드에 파워쉘 커맨드를 비롯한 다양한 커맨드를 업로드해뒀으며 nslookup을 통해 DNS TXT 레코드 쿼리 시 해당 커맨드가 실행되도록 했다. 단순히 매크로 코드에 파워쉘 커맨드를 작성한 것이 아니라, 지금까지는 확인되지 않던 새로운 방식으로 nslookup 도구를 악성코드 실행에 활용한 점이 특징이다.

이어 파워쉘 커맨드의 URL에 존재하는 methewPayload.js 파일을 meth.js로 저장한 후 wscript.exe를 통해 실행하는데, meth.js 파일은 파워쉘을 통해 또 다른 외부 URL에서 Base64 인코딩된 바이너리를 받아온다.

안랩 ASEC 분석팀은 “외부 URL에서 확보할 수 있는 Base64 인코딩 데이터는 DLL 바이너리인데, 알려지지 않은 새로운 종류의 악성 파일이 로드되는 것은 아니며 2021년 후반부터 유포되는 Hagga(Aggah)라는 공격그룹에 의해 제작된 유형의 악성코드”라고 말했다. 이어 “최초 유포 시도는 악성 매크로가 삽입된 문서 파일에서 시작하는 점, 알려진 닷넷 기반의 코드에서 확인되는 특징적인 함수·변수들의 이름과 StrReverse 함수를 활용하는 점, 외부에서 추가 악성파일을 내려받은 뒤 메모리에서 실행하는 전체적인 TTP를 토대로 Threat Actor를 추정했다”며 “추가로 다운로드 되는 악성파일은 AgentTesla와 같은 닷넷 기반의 인포스틸러 악성코드 유형인 것으로 확인된다”고 덧붙였다.
[김영명 기자(boan@boannews.com)]

<저작권자: 보안뉴스(www.boannews.com) 무단전재-재배포금지>