Ön tarafa yazılan kelimeler
Koadic hakkında bu aracı tesadüfen öğrendim, bu yüzden neyin görüneceğini görmek için "javascript rundll32 exploit" anahtar kelime kombinasyonunu yapmaya karar verdim. Bu yüzden Koadic'in daha sonra rootkit geliştirmeye başladım Koadic'i öğrenmek için, Sean Dillon ve Zach Harding'in Defcon'daki gösterilerine başvurabilirsiniz. Koadic, komut dosyası tabanlı aşamalandırma ve implant cihaz işlevleriyle PowerShell Empire'a benzer. Ancak temel fark, Koadic'in kurbanın bilgisayarındaki JavaScript ve VBScript'e güvenmesidir. Ancak şimdi güvenlik ekibi, Windows olay günlüğünde olağandışı PS etkinliklerini bulmaya daha fazla önem veriyor. Sanırım buna JavaScript Empire denilebilir.
Başlat
Bu yazıda, Koadic'in yeteneklerine ve mimarisine kısa bir giriş yapacağız. Koadic, saldırganların yeni ortama hızla uyum sağlamak için herhangi bir zamanda kodu değiştirmesine izin veren bir özelliğe sahiptir. Bu konuyu daha sonra bu makale dizisinde tartışacağım, ancak dikkatinizi Windows olay günlüğünden temel dosya sistemine kaydırmanız gerektiği açıktır. İlk olarak, yazılımı Github'a AWS ortamında bir Ubuntu bulut sunucusuna kurduk. Bazı zorluklarla karşılaştık, ancak bu kısa sürede çözüldü - Koadic'in Python modülü yeniden yüklendi. Evet, Koadic'in sunucu tarafı python'a dayanıyor. Çalışmayı tamamlamak için Koadic, uzak JavaScript veya VBScript'i gizlice tanıtacak Windows ikili kodunu kullanıyor. Mshta aşamasının (testte kullanılan aşamalayıcı) kurbana bir kimlik avı e-postası aracılığıyla gönderildiğini varsayalım. Etkinleştirildiğinde, Koadic bir "zombi" yaratacaktır. Kurbanın makinesini bu şekilde kontrol ediyorlar.
Gerçek bir yazılı test senaryosunda, ilk görev kimin ve nerede sorunlarının çözülmesidir. Temel parametrelerin ne olduğunu görmek için "bilgi" komutunu girin ve ardından bunları uygun şekilde ayarlayın.
İkinci adım
Temel bilgileri öğrendikten sonra, kullandığınız Windows ortamının tam nitelikli etki alanı adını (FQDN) keşfetmenize yardımcı olabilirsiniz. Göreceğimiz gibi, bilgisayarı orijinal olarak saldırıya uğradığı yerde bırakmak için alan adına ihtiyacınız olacak. Bunun için cmd parametresini GetHostByName ($ env: computerName) olarak ayarlayarak PowerShell'i kullanmam gerekiyor. İyi huylu bir PS cmdlet'idir.
Kısaca: Koadic, önemli çevresel bilgileri elde etmek için yerleşik desteğe ve elbette boşlukları doldurmak için kabuk komutları çalıştırma yeteneğine sahiptir. Bu arada, tüm komutların açıklamaları Github ana sayfasında bulunabilir.
üçüncü adım
Bilgisayar korsanının şansı patlamadıkça ve sunucuda oturum açan milyonlarca şifrelenmemiş kredi kartı numarası yoksa, başka bir bilgisayara atlaması gerekecek. Bunu yapmanın yolu, etki alanı düzeyinde kimlik bilgileri elde etmek, sonunda yükseltilmiş ayrıcalıklara sahip kimlik bilgilerini bulmak ve ardından yatay penetrasyon gerçekleştirmektir. Bir zamanlar mimikatz ve psexec kullanarak bunu nasıl yapacağımı yazmıştım. Koadic, SAM depolamasından kimlik bilgilerini almak için mimikatz tabanlı bir tane ve psexec'i desteklemek için bir tane sağladı. İpucu: psexec çalıştırılabilir dosyasını kurbanın bilgisayarına açıkça yüklemeli ve yol adını belirlemelisiniz. Örneğin, kimlik bilgilerini almak için implant / inject / mimikatz_dynwrapx çalıştırdım:
NTLM karmasını görebilir ve gerekirse çevrimdışı olarak kırabilirsiniz. Ancak düz metin parolalar elde etmek için wdigest güvenlik boşluklarını da kullanabilirsiniz. Bu makalede asıl yanal hareketin nasıl gerçekleştirileceğini göstermeyeceğim, ancak aşağıda implant / pivot / psexec ayarlarını görebilirsiniz:
Son sözler
Bir dahaki sefere bir grup botnet'in nasıl oluşturulacağını anlatacağım. Bizi izlemeye devam edin!
* Referans kaynağı: Zhou Datao tarafından derlenen varonis, lütfen FreeBuf.COM'dan olduğunu belirtin