Kurdish Ritovanguard Ultra Ud User Ve KernelX64 Drivers

Sana tecrübeyle orantılı bi hikayemi anlatiyim :D Eskiden şu an tozlu raflara kalkmış herkesin çok beğendiği benimde aşırı beğendiğim bi hile vardı, bi arkadas aradim onu ikna etmesi falan derken kurcallatirdi bilgisayarini sağolsun. İki farklı driver loadlıyor senin dediğin cert kullanıp service üzerinden vanguard'dan önce loadlanma işini yapıyor kısaca. Biri spoof diğeride injectörünün driveri işte.

Sonra bende gereken parayi topladım bende öyle bi sertifika aldım windows service kullanılması onaylanmış certlerden. Şöyle bi muhabbet var, driverinde kullandığın bazı ioctllerden tut functionlar vanguarddan önce loadlanıyor. Bana kalırsa bu yuzden vanguard hem boota hem usermode'da kullanıyor kendisini. Vanguard boot-time'daki service groupunda kendini "System Reversed" listinde loadlıyor. En erken list de bu zaten, ekstra bi list eklemeye calisirsan direkt oyun acilirken van hatası atıyor oyuna sokmuyor bile seni. Bunun önüne geçmenin tek yoluda alfabetik sıralarla abuselamakti yani driverlarının ismini AAAAAAAAA.sys BBBBBBBBB.sys falan yapman gerek. Çünkü alfabetik sıraya göre yüklüyor windows bu driverları. Sonra bisey oldu uzun süre götürdü ondan sonra vanguard kendisinden önce loadlanan tüm "System Reversed" order groupundaki driverlari checklemeye başladı. Genellikle hiç ama hiç tercih edilmeyen bi group oldugu icin whitelist blacklist diye ayirlamalari kolay oldu sonra o boot-time işinin en temiz yolunu da patlattılar :D

BitBlt muhabbetinede direkt vgk.sys'yi uc de biraz deobf etmisler oradan konusundan atiyim direkt.

JWy6nHo.png


Bunun önüne geçmek icin kaspersky ya da malwarebytes kurup online bir bankacilik sitesi actiginda bu virüs korumalarinin driverlari hook atip freezeliyor bu apiyi.. Yani bitblt ile alinan tüm ssleri siyah ekran donduruyor iyi bir cozum olabilir bence :D
baba sen naptın ya oha ya vallahi şaşırdım ekrana baktım kaldım helal olsun eli öpülecek adamsın
 
Sana tecrübeyle orantılı bi hikayemi anlatiyim :D Eskiden şu an tozlu raflara kalkmış herkesin çok beğendiği benimde aşırı beğendiğim bi hile vardı, bi arkadas aradim onu ikna etmesi falan derken kurcallatirdi bilgisayarini sağolsun. İki farklı driver loadlıyor senin dediğin cert kullanıp service üzerinden vanguard'dan önce loadlanma işini yapıyor kısaca. Biri spoof diğeride injectörünün driveri işte.

Sonra bende gereken parayi topladım bende öyle bi sertifika aldım windows service kullanılması onaylanmış certlerden. Şöyle bi muhabbet var, driverinde kullandığın bazı ioctllerden tut functionlar vanguarddan önce loadlanıyor. Bana kalırsa bu yuzden vanguard hem boota hem usermode'da kullanıyor kendisini. Vanguard boot-time'daki service groupunda kendini "System Reversed" listinde loadlıyor. En erken list de bu zaten, ekstra bi list eklemeye calisirsan direkt oyun acilirken van hatası atıyor oyuna sokmuyor bile seni. Bunun önüne geçmenin tek yoluda alfabetik sıralarla abuselamakti yani driverlarının ismini AAAAAAAAA.sys BBBBBBBBB.sys falan yapman gerek. Çünkü alfabetik sıraya göre yüklüyor windows bu driverları. Sonra bisey oldu uzun süre götürdü ondan sonra vanguard kendisinden önce loadlanan tüm "System Reversed" order groupundaki driverlari checklemeye başladı. Genellikle hiç ama hiç tercih edilmeyen bi group oldugu icin whitelist blacklist diye ayirlamalari kolay oldu sonra o boot-time işinin en temiz yolunu da patlattılar :D

BitBlt muhabbetinede direkt vgk.sys'yi uc de biraz deobf etmisler oradan konusundan atiyim direkt.

JWy6nHo.png


Bunun önüne geçmek icin kaspersky ya da malwarebytes kurup online bir bankacilik sitesi actiginda bu virüs korumalarinin driverlari hook atip freezeliyor bu apiyi.. Yani bitblt ile alinan tüm ssleri siyah ekran donduruyor iyi bir cozum olabilir bence :D
sertifikan olduktan sonra driverini taraması pek birşey ifade etmiyor bence eğer manuel taranmıyorsa import protect çakıp mmcopymemory go brr takılabilirsin

(bkz: )

gamerdocun manuel kernelindeki driverleri checklemesi haricinde signed driverini dt düşürmek için zaten özel bi çabaya ihtiyacın oluyo efi örneği vermemin sebebiyse vul driver flagıydı sadece yoksa driverin kernelde durduğu memory vul driverden daha büyük bi detection factor amaç bunu en düşüğe çekmek zaten

ucde olanlarıda okumuştum zaten kaspersky olaylarınıda günün sonunda ss not a big deal ama bypassı varsa stream proof değildir diye yorumluyorum.
 
sertifikan olduktan sonra driverini taraması pek birşey ifade etmiyor bence eğer manuel taranmıyorsa import protect çakıp mmcopymemory go brr takılabilirsin

(bkz: )

gamerdocun manuel kernelindeki driverleri checklemesi haricinde signed driverini dt düşürmek için zaten özel bi çabaya ihtiyacın oluyo efi örneği vermemin sebebiyse vul driver flagıydı sadece yoksa driverin kernelde durduğu memory vul driverden daha büyük bi detection factor amaç bunu en düşüğe çekmek zaten

ucde olanlarıda okumuştum zaten kaspersky olaylarınıda günün sonunda ss not a big deal ama bypassı varsa stream proof değildir diye yorumluyorum.
attığınız mmcopymemory sizce çalışır mı
 
attığınız mmcopymemory sizce çalışır mı
piyasadaki ud olan physical memory rw funcları zaten mmcopymemory ve uzun süredir gayet güzel çalışıyor mmcopymemorye hook atcaklarını sanmıyorum açıkcası (but why not ama bu apayrı bi konu) kısaca şuanlık ud ve gayet iyi çalışıyo
 
piyasadaki ud olan physical memory rw funcları zaten mmcopymemory ve uzun süredir gayet güzel çalışıyor mmcopymemorye hook atcaklarını sanmıyorum açıkcası (but why not ama bu apayrı bi konu) kısaca şuanlık ud ve gayet iyi çalışıyo
bunu bize yapabilirmisin çalışır hale getirip bu kadar anlatımdan sonra bu konuıda yardımcı olabileceğinizi düşünyorum
 
bunu bize yapabilirmisin çalışır hale getirip bu kadar anlatımdan sonra bu konuıda yardımcı olabileceğinizi düşünyorum
zaten driverinizi incelediğimde mmcopymemory kullandığınızı gördüm (utils readprocessmemory funcu)

attığım şey import protect sadece o mmcopymemoryden ayrı import table taranıyorsa gizlenmesi sağlıyor sadece manuel bi driver kontrolünden kaçamaz ama ac importlara bakıyorsa ki neden bakmasın gayet mantıklı flaglanan driverlerin import tablesine bakması kullanabilirsiniz kli'yi ki birçok benzeride var kernel import hider şeklinde araştırırsanız

eğer hata alırsanız mmgetroutineadressle callayabilirsiniz ntoskernel exportlarını
 
zaten driverinizi incelediğimde mmcopymemory kullandığınızı gördüm (utils readprocessmemory funcu)

attığım şey import protect sadece o mmcopymemoryden ayrı import table taranıyorsa gizlenmesi sağlıyor sadece manuel bi driver kontrolünden kaçamaz ama ac importlara bakıyorsa ki neden bakmasın gayet mantıklı flaglanan driverlerin import tablesine bakması kullanabilirsiniz kli'yi ki birçok benzeride var kernel import hider şeklinde araştırırsanız

eğer hata alırsanız mmgetroutineadressle callayabilirsiniz ntoskernel exportlarını
hocam bu bende farklı bir SRC daha var IOCLT driver aynı şekilde ama driver REMOVE kısmı biraz fakrlı bunu size göstermem gerekli yardımcı olurssanız minnetar olurm
 
hocam bu bende farklı bir SRC daha var IOCLT driver aynı şekilde ama driver REMOVE kısmı biraz fakrlı bunu size göstermem gerekli yardımcı olurssanız minnetar olurm
yapcağın şey çok basit ya githubdaki bi import protect librarysini kullanarak sıkıntı çıkarabilcek call'ları gizle (mmcopymemory etc)
ben driverimde libden ziyade mmgetroutineadress kullanıyorum örnek kod:

Kod:
//rust

 let fn_name = /*fonksiyon adı asdasd falan filan ntoskrnldeki export adı                */   
 let mut rt_string: UNICODE_STRING = zeroed();
 RtlInitUnicodeString(&mut rt_string, fn_name.as_ptr()); //unicode stringe cakma parti
 let func = MmGetSystemRoutineAddress(&mut rt_string); //fonksiyon alma
 let wrapper:extern "C" fn(u64) = mem::transmute(func); //fonksiyonu callanabilir hale castleme
 wrapper(0); //callama

gptye c++'a çevirtebilirsiniz
 
yapcağın şey çok basit ya githubdaki bi import protect librarysini kullanarak sıkıntı çıkarabilcek call'ları gizle (mmcopymemory etc)
ben driverimde libden ziyade mmgetroutineadress kullanıyorum örnek kod:

Kod:
//rust

 let fn_name = /*fonksiyon adı asdasd falan filan ntoskrnldeki export adı                */  
 let mut rt_string: UNICODE_STRING = zeroed();
 RtlInitUnicodeString(&mut rt_string, fn_name.as_ptr()); //unicode stringe cakma parti
 let func = MmGetSystemRoutineAddress(&mut rt_string); //fonksiyon alma
 let wrapper:extern "C" fn(u64) = mem::transmute(func); //fonksiyonu callanabilir hale castleme
 wrapper(0); //callama

gptye c++'a çevirtebilirsiniz
#include <windows.h>#include <winternl.h> // UNICODE_STRING tanımı içinextern "C" { NTSTATUS NTAPI RtlInitUnicodeString(OUT PUNICODE_STRING DestinationString, IN PCWSTR SourceString); PVOID NTAPI MmGetSystemRoutineAddress(IN PUNICODE_STRING SystemRoutineName);}int main() { const wchar_t* fn_name = L"YourExportedFunctionName"; // Çağırmak istediğiniz fonksiyonun adını buraya yazın UNICODE_STRING rt_string; RtlInitUnicodeString(&rt_string, fn_name); // UNICODE_STRING yapısını başlatma PVOID func = MmGetSystemRoutineAddress(&rt_string); // Fonksiyon adresini alma if (func == nullptr) { // Hata durumu: Fonksiyon bulunamadı return 1; } // Elde edilen adresi doğru fonksiyon işaretçi türüne dönüştürme auto wrapper = reinterpret_cast<void(*)(ULONG64)>(func); // Fonksiyonu çağırma wrapper(0); // Gerekirse 0 yerine gerçek bir argümanı yazın return 0;}
 

  Şuanda konuyu görüntüleyen kullanıcılar


Üst Alt