CyberDefenders — HawkEye CTF Write-Up

CyberDefenders — HawkEye CTF Write-Up

CyberDefenders — HawkEye CTF Write-Up

Merhabalar, bu yazımda CyberDefenders platformu üzerindeki “HawkEye” labını çözümlemeye çalışacağım. Sorularımız ile labımızı çözümlemeye başlayabiliriz.

Lab Konusu: Kuruluşunuzdaki bir muhasebeci, indirme bağlantısı içeren bir faturayla ilgili bir e-posta aldı. E-postayı açtıktan kısa bir süre sonra şüpheli ağ trafiği gözlemlendi. Bir SOC analisti olarak ağ izini araştırın ve sızma girişimlerini analiz edin.

Cevap: 3

8-) What is the name of the most active computer at the network level? (Ağ düzeyinde en aktif bilgisayarın adı nedir?)

Burada bakmamız gereken paketleri DHCP protokolü üzerinden filtreleme ile aktif pc’nin adını bulabiliriz. DHCP şeklinde filtrelediğimizde karşımıza 2 paket çıkmaktadır. Çıkan paketleri incelediğimizde broadcast IP adresinin bulunduğu ilk pakette “Follow->UDP Stream” seçeneği ile paket içeriğini incelediğimizde karşımıza PC bilgisi çıkmaktadır. Ekstradan diğer paket içeriğini incelediğimizde paket içeriğinde kayda değer bilgi bulunmadığını görebiliriz.

Cevap: Beijing-5cd1-PC

9-) What is the IP of the organization’s DNS server? (Kuruluşun DNS sunucusunun IP’si nedir?)

Soruda DNS sunucusunu belirtildiği için Wireshark üzerinde sadece DNS paketlerini filtrelemek için “dns and dns.flags.response == 0” komutu ile response(istek) yapılan sunucu bilgisini elde edebiliriz. Çıktıda da gözüktüğü gibi destination(hedef) sunucu olan “10.4.10.4 IP’ li” adrese istekler yapılmıştır yani kuruluşun IP adresini belirlemiş olduk.

Cevap: 10.4.10.4

10-) What domain is the victim asking about in packet 204? (Kurban 204 paketinde hangi etki alanını(domain) soruyor?)

Wireshark trafiğindeki 204 nolu paket “Follow->UDP Stream” şeklinde paket içeriğini incelediğimizde domain bilgisini görebilmekteyiz.

Cevap: proforma-invoices.com

11-) What is the IP of the domain in the previous question? (Önceki sorudaki etki alanının (domain) IP’si nedir?)

Domain bilgisine erişmek için trafik içerisinde akan http trafiğini incelememiz yeterli olacaktır. Yani önceki soruda bulduğumuz domain bilgisini Wireshark üzerinde http.host==”proforma-invoices.com” komutu ile filtrelediğimizde destination adresinden aradığımız domainin IP bilgisine erişebiliriz.

Cevap: 217.182.138.150

12-) Indicate the country to which the IP in the previous section belongs. (Önceki bölümdeki IP’nin ait olduğu ülkeyi belirtin.)

Bu bilgiye erişmek için basitçe “Whois” kaydından IP adresinin ait olduğu ülke bilgisine erişebiliriz.

Cevap: France

13-) What operating system does the victim’s computer run? (Kurbanın bilgisayarı hangi işletim sistemini çalıştırıyor?)

Bu işletim sistemi bilgisine cmd üzerinden pcap dosyasını strings toolu ile filtreleme yaparak ulaşabiliriz fakat daha basit bir yöntem olarak kurban makinenin domain adresini 11 soruda filtrelediğimiz paket içerisindeki bilgilerden de çıkarabilmekteyiz.

Cevap: Windows NT 6.1

14-) What is the name of the malicious file downloaded by the accountant? (Muhasebeci tarafından indirilen kötü amaçlı dosyanın adı nedir?)

Menülerden "Statistics-> Endpoints" kısmından bir filtreleme yaptığımızda paket boyutu ve trafik yoğunluğunu görüntüleyebilmekteyiz. Burada ise kurban makinemiz olan “217.182.138.150 ‘li” IP adresini filtreleyip trafiği incelediğimizde trafik akışındaki “info” sütunundan indirilen kötü amaçlı yazılımı görebilmekteyiz.

Cevap: tkraw_Protected99.exe

15-) What is the md5 hash of the downloaded file? (İndirilen dosyanın md5 hash değeri nedir?)

İndirilen dosyanın hash karmasını en doğru bir şekilde tespit edebilmek için indirilen dosyayı exe olarak dışarıya aktarmamız gerekmektedir. Bunun için “File->Export Objects-> HTTP Objects” ile bu işlemi gerçekleştirebiliriz. Çıkardığımız çalışabilir exe dosyasının md5 hash değerini hesaplamak için dosyamızı browser üzerinde online bir toola exe dosyamızı yüklediğimizde md5 hash değerine ulaşabilmekteyiz.

Cevap: 71826ba081e303866ce2a2534491a2f7

16-) What is the name of the malware according to Malwarebytes? (Malwarebytes’e göre kötü amaçlı yazılımın adı nedir?)

Zararlı yazılımın Malwarebytes platformu üzerindeki durumunu incelemek için birçok AV platformundaki verileri açık bir şekilde sunan bir tool olan “Virustotal’e” .exe uzantılı dosyamızı attığımızda zararlı yazılımın adını görebilmekteyiz.

Cevap: Spyware.HawkEyeKeyLogger

17-) What software runs the webserver that hosts the malware? (Kötü amaçlı yazılımı barındıran web sunucusunu hangi yazılım çalıştırır?)

Web sunucu ile ilgili bilgileri görebilmemiz için yine Wireshark üzerindeki menülerden “File->Export Objects->http” seçeneğini takip ederek zararlı dosyamızın bulunduğu satırı bir kere click’lediğimizde otomatikmen trafik akışına zararlı yazılımın trafik akışı düşmektedir. Burada ilk paketten başlayıp “Follow->TCP Stream” ile incelediğimizde karşımıza server bilgisi çıkmaktadır.

Cevap: LiteSpeed

18-) What is the public IP of the victim’s computer? (Kurbanın bilgisayarının genel IP’si nedir?)

Burada önceki işlemlerden yola çıkarak http akışından bu veriyi çıkarabiliriz. Trafik akışını “http” ile filtrelediğimizde karşımıza birkaç paket çıkmaktadır. GET paketlerinden ziyade bizim için “HTTP 200 OK” paketlerine bakmak daha sağlıklı olacaktır. Çünkü dönen OK mesajları public IP ye dönecektir. Bu bilgiden yola çıkarak “Follow->TCP Stream” ile hareket ettiğimizde paket içeriğinde Public IP bilgisine ulaşmış olacağız.

Cevap: 173.66.146.112

19-) In which country is the email server to which the stolen information is sent? (Çalınan bilgilerin gönderildiği e-posta sunucusu hangi ülkede?)

Trafik akışını izlediğimizde saldırganın IP adresini görebilmekteyiz. Sorumuzda çalınan bilgilerin e-posta sunucusu sorulduğundan bu bilgilerin SMTP protokolünün sağlandığı paketler ile gönderildiği sunucusunu tespit edebiliriz. (SMTP, bir e-posta göndermek için sunucu ile istemci arasındaki iletişim şeklini belirleyen protokoldür.) Bundan yola çıkarak saldırgan IP adresini ve SMTP prokolünü “ip.addr == 10.4.10.132 && smtp.req” veya basitçe “smtp” komutu ile filtrelediğimizde trafik akışını daha sade bir şekilde görebiliriz.

Filtrelediğimiz alanda saldırgan ve gönderdiği hedefin IP adres bilgisi gözükmektedir. IP adres bilgisini browser üzerinden yine “Whois” kaydını sorguladığımızda gönderilen çalıntı bilgilerin hangi ülke sunucusuna gittiğini tespit etmiş olmaktayız.

Cevap: United States

20-) What is the domain’s creation date to which the information is exfiltrated? (Bilgilerin sızdırıldığı domain’in oluşturulma tarihi nedir?)

Burada bir önceki soruda filtrelediğimiz paketlerden giden sunucunun paket içeriğini “info” sütunundan kontrol ettiğimizde ve daha kolayca trafik akışını incelediğimizde çalınan bilgilerin gittiği domain’in bilgisine ulaşabilmekteyiz. Daha sonra bu domain bilgisinin “Whois” kaydına baktığımızda ise oluşturulma(created) tarihine ve daha birçok bilgiye ulaşabiliriz.

Cevap: 2014–02–08

21-) Analyzing the first extraction of information. What software runs the email server to which the stolen data is sent? (Bilginin ilk çıkarımını analiz etme. Çalınan verilerin gönderildiği e-posta sunucusunu hangi yazılım çalıştırır?)

Bu soruda referans alacağımız nokta sızdırma işleminin yapıldığı mail sunucusu olmalıdır. Mail bilgisini biliyoruz fakat bunun hangi araç yolu ile yaptığını tespit edebilmemiz için “SMTP” ile filtrelediğimiz paketlerden sunucu mail adresinin olduğu herhangi bir paketin içeriğini “Follow->TCP Stream” ile incelediğimizde aradığımız araç bilgisine erişmiş olacağız.

Ayrıca kısa bir araştırma ile exploitler için kullanılan bir araç olduğunu ve araç hakkında genel bir bilgi sahibi olarak hangi teknikler için kullanılabileceğini de görebiliriz. Bu işlemleri yapmak analiz süreçlerinde saldırganların mantığını anlayabilmek açısından önemlidir.

Cevap: Exim 4.91

22-) To which email account is the stolen information sent? (Çalınan bilgiler hangi e-posta hesabına gönderilir?)

Bu sorunun cevabını yine bir önceki soruda/sorularda incelediğimiz paket içeriğinde ve trafik akışında görebiliriz.

Cevap: [email protected]

23-) What is the password used by the malware to send the email? (Kötü amaçlı yazılımın e-postayı göndermek için kullandığı parola nedir?)

Önceki sorularda “SMTP” filtresi ile çalıntı bilgilerin gittiği sunucu hakkında paketleri incelerken trafik akışında “login user” ve “password” bilgileri açık bir şekilde görüntülenmektedir.

Ayrıca ilgili paketlerden herhangi birini “Follow->TCP Follow” ile incelediğimizde “authentication success” bilgisi ile login işleminin gerçekleştiğini görebilmekteyiz. Burada password bilgisinin base64 ile şifrelendiğini görmekteyiz. Bunu herhangi bir base64 decoder toolu ile çözümleyebiliriz. Ben burada severek kullandığım toollardan biri olan “Cybercheff” ile decode etmeye çalıştım. Buradan da password bilgisine erişmiş olduk.

Cevap: Sales@23

24-) Which malware variant exfiltrated the data? (Hangi kötü amaçlı yazılım varyantı verileri sızdırdı?)

Aslında bu soruda bize verileri çalan aracın versiyonunu sormaktadır. Bir önceki soruda password bilgisinin bulunduğu paketi incelediğimizde ve biraz aşağıya doğru kaydırdığımızda anlamsız, sanki base64 ile şifrelenmiş uzun bir veri bloğu dikkatimizi çekmektedir. Bu veri bloğunu farklı bir text dosyasına kaydedip online bir base64decoder’e yüklediğimde çıkan çıktıyı inceleme imkanı buldum. Çıktı içerisinde hemen ilk satırda “HawkEye Keylogger” yani “tuş kaydedici” aracın varyant bilgisi olan “Reborn v9” bilgisine erişmiş oluyoruz.

Cevap: Reborn v9

25-) What are the bankofamerica access credentials? (username:password) (bankofamerica erişim kimlik bilgileri nelerdir? (Kullanıcı adı Şifre))

Bu bilgiye de az önce decode ettiğimiz veri bloğunun çıktısının içerisinde görebilmekteyiz.

Cevap: roman.mcguire:P@ssw0rd$

26-) Every how many minutes does the collected data get exfiltrated? (Toplanan veriler kaç dakikada bir sızdırılır?)

Wireshark üzerinde menülerden “View > Time Display Format (Görüntüle > Zaman Görüntüleme Formatı) UTC Date and Time of Day” filtrelemesini seçtiğimizde ve verilerin gönderildiği e-posta sunucusu hakkında inceleme yapacağımız için de “SMTP” filtrelemesi yaptığımızda zaman akışı karşımıza çıkacaktır ve paketlerin kaç dakikada bir gönderildiğini görüntüleyebiliriz.

Trafik akışını incelediğimizde paketlerin 10 dakikada bir karşı sunucuya iletildiğini(sızdırıldığını) görebilmekteyiz (20:38, 20:48, 20:58 şeklinde).

Cevap: 10

Buraya kadar vakit ayırıp okuduğunuz için teşekkür ederim. Bir sonraki yazılarımda ve lab çözümlerimde görüşmek üzere. Keyifli okumalar dilerim:)

Adım Furkan ve 23 yaşındayım. Fırat Üniversitesi Adli Bilişim Mühendisliği 2023 mezunuyum ve aktif olarak çalışmaktayım. Kurucu ortaklarından olduğum "sibermetin.com" sitesinde yöneticilik/editörlük yapmaktayım. Beni aşağıdaki sosyal medya hesaplarımdan takip edebilirsiniz. Keyifli okumalar dilerim:)