Son yıllarda özellikle finansal kurumlara gerçekleştirilen hedeflenmiş siber saldırılara (APT) bakıldığında, sızma testi uzmanlarının da yakından bildiği Cobalt Strike aracının kullanıldığını görebilirsiniz. Hatta Rusya’nın merkez bankası yetkililerine kulak verirseniz, 2017 yılında bu araçla 240 bankaya yapılan siber saldırılar sonucunda 17 milyon doların çalındığını öğrenebilirsiniz. Siber saldırganların taktik, teknik ve prosedürlerinin başarılı bir şekilde simülasyonunu yapmaya imkan tanıyan, özellikle gizli haberleşme özelliği ile istismar sonrası (post exploitation) kullanılan bir araç olan Cobalt Strike, özellikle güvenlik teknolojileri ve insan kaynağı yatırımdan yoksun kurumlara karşı kullanıldığında ciddi derecede sıkıntılara yol açabilmektedir.
Bu hikaye 2018 yılının Nisan ayında, finansal kurumlara ödeme sistemleri ve çözümleri sunan bir firmanın çalışanının kurumsal e-posta adresinden, bir bankanın çalışanına e-posta gönderilmesiyle başlar. E-postanın ekinde yer alan Powerpoint sunum dosyasına bakıldığında firma tarafından hazırlanmış masum bir dosya gibi görünse de, güvenlik sistemlerinde alarm üretip engellenmesi sebebiyle şüpheleri üzerine çeker ve ardından bankanın güvenlik analistleri tarafından analiz edilmeye başlanır.
Powerpoint dosyası açıldığında ortaya çıkan uyarı mesajı, dosyanın içeriğinde bağlantılar olduğunu işaret eder. Bağlantılara detaylı olarak bakıldığında, uyarı mesajında çıkan “Update Links” butonuna basıldığında Litvanya’daki bir sunucuya ait olan http://213[.]252.244.174/download/ web adresinden file.ext dosyasının indirilip çalıştırılacağı anlaşılır.
Bu bağlantının sunum dosyasının neresinde olduğunun öğrenilmesi için ise sunum.pptx dosyası 7-Zip aracı ile açılıp ortaya çıkan klasörlerde 213[.]252.244.174 adresi aratıldığında bu adresin sunum\ppt\slides\_rels\slide29.xml.rels dosyası içinde, 29. slaytta olduğu anlaşılır. 29. slayta dikkatlice bakıldığında ise bağlantının sağ alt köşeye gizlendiği görülür.
file.ext dosyasının içeriğine bakıldığında, VBS (Visual Basic Script) betiği içerisinde çağrılan, base64 ile gizlenmiş (encode) bir powershell betiği olduğu görülür. Bu betik çözüldükten (decode) sonra ise bu defa bellekte bir alana enjekte edildikten sonra CreateThread API’si ile çalıştırılan, base64 ile gizlenmiş başka bir kod ortaya çıkar. Çoğunlukla son adımda ortaya çıkan bu kod parçası bir kabukkodu olur. (shellcode)
Kabukkodu xxd aracı ile analiz edilebilir hale çevrildikten sonra Radare2‘nin rabin2 aracı ile karakter dizilerine (strings) bakıldığında bunun http(s)://213[.]252.244.174/QYkG adresi ile haberleşen bir HTTP(S) kabukkodu olabileceği anlaşılır.
Kabukkodunu dinamik olarak analiz etmeden önce 213.252.244.174 IP adresi çevrimdışı olduğu için daha önce dinamik sistem analizi esnasında Fiddler aracı ile elde edilen, https://213[.]252.244.174/QYkG adresinden indirilen ancak okunaklı olmayan pakedin (2. stage payload), Charles Proxy aracı ile test.com adresine yönlendirilmesi ve daha önce elde edilen paketi diskten okuyup istekte bulunan herhangi bir programa göndermesi sağlanır.
Dinamik sistem analizi esnasında Fiddler ile kayıt edilen HTTPS trafiğinde yer alan gizlenmiş Cookie bilgisine göre bu kabukkodunun Cobalt Strike aracına ait olduğu ihtimali güçlenir.
Kabukkodunu dinamik olarak analiz etmek için Code Cave yönteminden faydalanılarak ilgili kabukkodu (shellcode-ctek.bin), calc.exe programının son bölümündeki boş alanlara (000000000…) yerleştirilir ve bu kod parçasına kesme noktası (breakpoint) koyularak program akışının kabukkodundan devam etmesi (CreateThread) sağlanarak, kod parçası analiz edilmeye çalışılır.
Bellekte 0265000 adresine açılan DLL dosyasının karakter dizileri (strings) incelenip, araştırıldığında (#1) ve ayrıca ortaya çıkan API adresleri de Google arama motoru üzerinde araştırıldığında bu DLL dosyasının CobaltStrike aracına ve kabukkodunun da bu araçta kullanılan Metasploit’in Block Reverse Http(s) kabukkoduna ait olduğu olduğu anlaşılır.
Analizin devamında ortaya çıkan ilave bilgiler de Google arama motorunda araştırıldığında FireEye‘ın 2017 yılında Çin devleti tarafından desteklendiği iddia edilen, hukuk ve yatırım firmaları hedef aldığı belirtilen APT19 grubu ile ilgili yayınlamış olduğu araştırma yazısına ulaşılır.
Bu girişimin ardında APT 19 grubu mu vardır ve hedef mi büyütmüşlerdir bilinmez ancak tehdit raporlarında 3. parti firmalar üzerinden hacklenen firmalarla ilgili yazılar okuyan bir siber güvenlik araştırmacısı olarak bu tür hedeflenmiş, organize, ileri seviye siber saldırıların ülkemizde de gerçekleştirildiğine bu analiz yazısı ile dikkat çekmek ve özellikle finans sektöründeki firmaların bu tür siber saldırılara karşı çok dikkatli olmalarını öneririm.
Bir sonraki yazıda görüşmek dileğiyle herkese güvenli günler dilerim.
Not:
13 comments
Merhabalar hocam.Cobalt strike metasploit gibi dış ağlarda calısıyormu ? Galiba islem yapabilmemiz icin o ağa bağlı olmamiz gerekiyor.Türkçe bir cobalt strike kaynağı bulamadim.Kobalttada port acma kapama islemleri yapmamiz gerekli değilmi ? Ve dış ağlardaki windowslara oluşturduğumuz payloadlarla sızmak mumkun degilmi hocam ??
Merhabalar hocam.Cobalt strike metasploit gibi dış ağlarda calısıyormu ? Galiba islem yapabilmemiz icin o ağa bağlı olmamiz gerekiyor.Türkçe bir cobalt strike kaynağı bulamadim.Kobalttada port acma kapama islemleri yapmamiz gerekli değilmi ? Ve dış ağlardaki windowslara oluşturduğumuz payloadlarla sızmak mumkun degilmi hocam ?
Mert hocam,
Cobalt Strike kullanımı öğrenmem gerekiyor acaba nereden başlamalıyım? haftaya bununla ilgili bir sunum vermem gerekiyor :/ Benim ise hiç bir fikrim yok. Networking ve yazılım konusunda fena değilim ancak bu Cobalt hiç alışılagelmiş bir şey değil benim için. Bunu nasıl öğrenebilirim nereden başlamalıyım hocam? Çok teşekkür ederim anlayışınız için
Google’da “Cobalt Strike tutorial” anahtar kelimesi ile arama yaparak çok sayıda okuyacak kaynağa ulaşabilirsin.
Makale ile ilgili sorularım var hocam? Yardimci olur musun
Herkes gibi sorularını buradan veya iletişim sayfası üzerinden iletebilirsin.
2.5
4.5
Hocam elinize emeğinize sağlık, yine mükemmel bir yazı olmuş.
Beğendiğinize sevindim. ;)
Üstadım elinize sağlık, çok güzel bir içerik olmuş
;)
5