Network Darcomet Rat Sadece Local Ağ'da Mı Çalışır?

Kenwob

Yeni üye
7 Nis 2020
18
0
Merhabalar DarkComet Rat İle Sadece Local Ağdaki Bilgisayarları Mı Kontrol Edebiliyoruz? Port Olayını Tam Çözemedim Mesela Uzaktaki Birinin Bilgisayarı İçin Darcomet Rat'dan Bir Exe Oluştursak Atsak Çalışır Mı? Çalışması İçin Ne Yapmam Gerek? Teşekkürler :ehiste
 

S4R3N

Uzman üye
6 Haz 2016
1,038
1
Dostum bunun hakkında daha iyi anlaman için server client nedir mantığı nedir ve nasıl çalışır gibi konuları araştırmanı tavsiye ediyorum
 

DeepDarknes

Yeni üye
10 Eyl 2019
29
0
Mesela bende linuxda kage kullanıyorum android için trojan hazırladım bi tane ondada yine ip sabitleme ve port açma gibi olayları yapmam lazım dimi aynı ağda olmayan birisine atmak için
 

Mapzilla

Adanmış Üye
23 Eyl 2016
7,205
13
RAT'lar (Remote Administration Tool) backdoor mantığını ele alır, böylece ağ üzerinden Client, Server'ın isteklerini yerine getirir. Yani kurban bilgisayar, hackerın istediklerini yerine getirir.
Günümüzde ev kullanıcılarını hacklemek için Reverse Shell kullanılır. Yani Server = Hacker, Client = Kurban olur. Port dinlemeyi Hacker yapar.
Sunucularda ise Bind Shell kullanılır. Yani Server = Kurban, Client = Hacker olur. Hacker sunucuya bağlantı kurar.

JvuU1S.png



Günümüzde çoğu açık fixlenebildiği ve fixlendiği için güncellemelerle beraber; genelde sosyal mühendislik ile kullanıcı kandırılır ve zararlı yazılım olan executable kullanıcı tarafından çalıştırılır. Böylece Hacker, kurban bilgisayar ile bağlantı kurmuş olur.

Backdoor'ların mantığını anlamak için örnek 2 program kodlayalım C#.NET'te.
Bu yapacağımız programda;

Server tarafı, kurban bilgisayardan gelen bilgileri ekrana yazdıracak ve sonsuz döngü içinde sürekli komut isteyip Client tarafına gönderecektir Soket üzerinden.

Client tarafı, kurban bilgisayardan gelen komutları gizli bi' cmd.exe uygulamasına input olarak girdirticek ve gelen çıktıları Server'a, yani Hacker'a yollayacaktır. Bildiğiniz üzere cmd.exe üzerinden bir çok sistem fonksiyonu gerçekleştirilebiliyor.

Server;

JvxODs.png


Ne yaptık? İlk önce TCP ve her IP adresinin bağlanabileceği sadece 4444 portlu bi' Soket oluşturduk. Sonrasında dinlemeye aldık. Daha sonrasında 1 kullanımlık için bağlantı kabul etmek için Socket.BeginAccept kullandık. Bağlantı kabul edildiğinde, Client Soketini Socket.BeginReceive'a yolladık ve o Soket'ten veri almaya başladık. Aldığımız verileri ekrana yazdırdık ve tekrar Socket.BeginReceive ile aynı Soket'ten veri almaya devam ettik. Sonrasında program sonsuz bi' döngüye (!) girdi ve bizden herhangi bi' Command Prompt (cmd) komutu istiyor. Bunu Client'a, yani kurbana yolluyor. Eğer Soket'le bağlantısını keserse 10053 hata kodlu Exception veriyor, bunun MSDN'de anlamı vardır.

Jvx4hH.png



Bkz: https://docs.microsoft.com/en-us/win...-error-codes-2

Client;

JvxD0q.png


Burada ne yaptık? Program Console bi' .NET uygulaması olduğu için ShowWindow API'si ile gizlemek zorunda kaldık. API'yi projeye dahil etmek için P/Invoke kullandık.
0 = Disable
1 = Enable olarak anlamaktadır fonksiyon. Biz 0 ile görünmez hale, yani Disable hale getirdik.

Sonrasında TCP bi' Soket oluşturduk ve Server'a, yani Hacker'a 4444 portundan bağlandık. Daha sonrasında Process class'ı ile cmd.exe'yi başlattık. Process.StartInfo.CreateNoWindow ile ekranın görünmesini engelledik.

Process.StartInfo.RedirectStandardOutput, Process.StartInfo.RedirectStandardInput, Process.StartInfo.RedirectStandardError değişkenlerini true yaptık CLI olan programdan veri alacağımıza dair uyarı bu...

Process.OutputDataReceived için ise delegate oluşturduk, Console'dan gelen veriyi böyle alıcaz. Delegate olan fonksiyonda ise DataReceivedEventArgs.Data'yı, yani Console'daki çıktıyı Server'a, yani Hacker'a yolladık.

Sonrasında da Process.Start ile cmd.exe'yi başlattık ve Process.BeginOutputReadLine ile asenkron çıktı almayı başlattık. Sonrasında da Socket.BeginReceive ile Server'dan, yani Hacker'dan veri almaya başladık ve Soket'i ReceiveHandler fonksiyonuna yönlendirdi. Gelen veriyi Process.StandardInput.WriteLine ile Console'a input olarak yolladık, bu komut çalıştığında CMDHandler fonksiyonu devreye girecek. Sonrasında bi' döngü gibi Socket.BeginReceive ile tekrardan Server'dan, yani Hacker'dan bilgi almaya başladık. Son olarak cmd.exe'nin kapanmaması için Process.WaitForExit kullandık.

Hemen deniyelim;

İlk önce Server programımı başlattım, sonra Client yani virüsü başlattım.

JvxwNI.png


Gördüğünüz üzere rahat bi' şekilde çalışmakta.
...

Yani illa bi' sunucuya ihtiyacınız var. Haberleşmelerde illa bi' taraf Client, bi' taraf Server olur. C&C (Command and Control) taktiğini kullanabilirsiniz. PHP bi' sunucu olur, oraya verilerinizi yollarsınız.

Server kodları: https://paste.ubuntu.com/p/mJGb6w5tsr/
Client kodları: https://paste.ubuntu.com/p/2sGYf4CJqk/
 

Kenwob

Yeni üye
7 Nis 2020
18
0
Cevaplar İçin Teşekkürler. Ama Ben Pek Anlayamadım Doğrusu. Çünkü dns port işlerini pek bilmiyorum. Şimdi Ben Local Ağdayım ve bir exe oluşturdum. Bunu victim'e attım. Programı açınca çalışmaz mı? Çalışmıyor derseniz ne yapmam gerektiği hakkında bir konu var mı veya basitçe açıkarsanız :)
 

musto85

Uzman üye
8 Haz 2016
1,108
0
Niğde
Peki karşımızdaki ıp değiştirdiğinde bağlantı kopuyomu daha birisine atmadım ratı bluestacks üzerinden denedim çalışıyodu

Hayır karşıdaki kurbanımızın bilgisyarı açık olduğu sürece bize bağlantı gelir. Fakat Port ve gerekli ayarları eksiksiz yapman gerekiyor portun açık olup olmadığını tarayıcının arama motoruna canyouseeme ya da port check yazarak kontrol edebilirsin.
 

Kenwob

Yeni üye
7 Nis 2020
18
0
Mesela Ben Wifi Ağıma Bağlandım Oluşturduğum exe'yi açtım. Sonra Mobil Hotspot Dan Bağlandım Açtım Yine Çalışıyordu. Aynı pc olduğu için midir? Çünkü Farklı Ağlara Bağlandım :/
 

Mapzilla

Adanmış Üye
23 Eyl 2016
7,205
13
Mesela Ben Wifi Ağıma Bağlandım Oluşturduğum exe'yi açtım. Sonra Mobil Hotspot Dan Bağlandım Açtım Yine Çalışıyordu. Aynı pc olduğu için midir? Çünkü Farklı Ağlara Bağlandım :/

127.0.0.1 her zaman local bağlantıyı temsil eder. (Aslında bu farklı bi' şekilde tanıtılabilir)
Siz Public IP ile backdoor'u oluşturacaksınız.
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.