Velociraptor, açık kaynaklı bir EDR platformudur ve ağdaki birçok endpointte sanal olarak ve toplu olarak artifact toplama, analiz ve izleme süreçlerini kolaylaştırmak için tasarlanmıştır. Başlıca Michael Cohen tarafından geliştirilen ve aktif olarak bir topluluk tarafından sürdürülen Velociraptor, dijital forensic, incident ve threat hunting için esnek ve güçlü bir çözüm sunar.
Velociraptor’un ana özellikleri şunlardır:
- Artifact Toplama: Velociraptor, kullanıcıların inceleme ve izleme için ilgili verileri toplamak için endpointlerde artifact toplama sorgularını tanımlamasına ve dağıtmasına olanak tanır. Bu artifact, file metadata bilgileri, registry key’ler, process bilgileri, network connection’ları, ve daha bir çok artifact içerebilir.
- Ölçeklenebilirlik: Velociraptor, verimli bir şekilde ölçeklenmesi için tasarlanmıştır ve kullanıcıların binlerce endpointten gelen verileri yönetmesine ve analiz etmesine olanak tanır. Mimarisi performans için optimize edilmiş olup kurumsal ortamlarda büyük ölçekli dağıtımları işleyebilir.
- Özelleştirme: Kullanıcılar, kendi artifact toplama sorgularını ve analiz iş akışlarını oluşturabilir ve özelleştirebilirler. Velociraptor, bu özelleştirmeyi kolaylaştırmak için güçlü bir sorgu dili sağlar.
- Gerçek Zamanlı İzleme: Velociraptor, endpoint etkinliğini gerçek zamanlı olarak izleme olanağı sağlar ve kullanıcıların olası tehditlere anında tepki vermesine yardımcı olur. Önceden tanımlanmış koşullara dayalı bildirimler ve uyarılar sunarak güvenlik ekiplerinin potansiyel tehditler hakkında bilgilendirilmesine yardımcı olur.
- Forensic Analizi: Velociraptor, endpoint verilerinin detaylı adli tıp analizini destekler ve kullanıcıların güvenlik olaylarının nedenlerini ve kökenlerini belirlemelerine yardımcı olur. Timeline analizi, file carving ve diğer forensic teknikleri için araçlar sağlar.
- Açık Kaynaklı: Açık kaynaklı olması, Velociraptor’ün topluluk katkılarından ve işbirliğinden faydalanmasını sağlar. Kullanıcılar kaynak koduna erişebilir, iyileştirmeler veya uzantılar ekleyebilir ve platformu özel ihtiyaçlarını karşılamak için özelleştirebilirler.
“Uzaktan ve toplu olarak artifact toplama” terimi, bir ağdaki birden fazla bilgisayardan veri ve bilgi toplamayı ifade eder. Bu, bir şirketin veya bir organizasyonun tüm bilgisayarlarında benzer veri örneklerini almak için bir gereklilik olabilir. Bu tür bir toplu veri toplama genellikle güvenlik incelemeleri, tehdit avı veya genel network monitoring gibi amaçlarla yapılır.
Bu tür bir toplu ve uzaktan artefakt toplama işlemi için EDR çözümleri ve Velociraptor gibi araçlar kullanılır. EDR çözümleri, ağdaki uç noktalarda (bilgisayarlar, sunucular, mobil cihazlar vb.) tehditleri tespit etmek ve yanıt vermek için kullanılan yazılım platformlarıdır. Velociraptor ise, özellikle büyük ölçekli ortamlarda veri toplama, analiz ve izleme için özel olarak tasarlanmış bir açık kaynaklı araçtır.
Geleneksel DFIR prosedürleri 3 temel fazı vardır:
Acquisition, Post Processing, Analysis and Reporting
- Acquisition: Bu aşamada, bir olayla ilgili tüm dijital kanıtların toplanması gereklidir. Bu, bilgisayarların memory imajları, disk imajları, ağ trafiği kayıtları, olay günlükleri ve diğer veri kaynaklarından veri toplamayı içerir. Acquisition aşaması, olayın kapsamını belirlemek ve daha sonra analiz için gerekli olan tüm verileri toplamak için hayati öneme sahiptir.
- Post Processing: Bu aşamada, edinilen ham verilerin analiz edilebilir hale getirilmesi için çeşitli işlemler yapılır. Bu işlemler, veri normalleştirme, filtreleme, indeksleme ve diğer veri düzenleme işlemlerini içerir. Bu aşama, ham verilerden anlamlı bilgi çıkarmak için gereklidir ve genellikle otomatik araçlar ve özel yazılımlar kullanılarak gerçekleştirilir.
- Analysis and Reporting: Bu aşamada, son işlenmiş veriler üzerinde detaylı analiz yapılır ve olayın incelenmesi için önemli bulguların raporlanması sağlanır. Analiz ve raporlama aşaması, saldırı vektörlerini belirlemek, zararın kapsamını değerlendirmek ve olaya yanıt olarak alınması gereken adımları belirlemek için kritik öneme sahiptir. Bu aşama genellikle adli raporlar ve diğer resmi belgelerin hazırlanmasıyla sonuçlanır.
Bu üç temel aşama, bir dijital adli inceleme ve olay yanıtı sürecindeki ana iş akışını oluşturur ve olaylara hızlı ve etkili bir şekilde yanıt vermek için kullanılır.
Velociraptor’de geleneksel süreçten farklı olan ana nokta, verilerin işlenme ve analiz edilme yöntemidir. Geleneksel dijital adli inceleme ve olay yanıtı (DFIR) süreçlerinde, genellikle tüm veriler öncelikle toplanır, ardından bir merkezi sunucuya getirilir ve son işleme ve analiz için bu sunucuda işlenir. Ancak, Velociraptor’de bu yaklaşım değişir.
Velociraptor felsefesi, verileri doğrudan endpointlerden çekmeye ve orada analiz etmeye dayanır. Yani, Velociraptor, tüm verileri bir merkezi sunucuya getirmek yerine, hedeflenen sorguları doğrudan endpointe gönderir ve verileri endpointte işler. Bu, ağ üzerindeki trafik miktarını azaltır ve veri toplama sürecini daha ölçeklenebilir hale getirir.
Bu yaklaşımın avantajları şunlardır:
- Veri trafiğinin azalması: Tüm verilerin merkezi bir sunucuya taşınması yerine, sadece hedeflenen verilerin endpointlerden çekilmesi, ağ trafiğini azaltır.
- Ölçeklenebilirlik: Velociraptor, büyük ağlarda bile etkili bir şekilde kullanılabilir. Çünkü veri işleme ve analiz işlemleri uç noktalarda gerçekleştirilir, bu da sistemin daha ölçeklenebilir olmasını sağlar.
- Hızlı yanıt: Verilerin doğrudan endpointlerden alınması, response verme süresini azaltır. Çünkü verilerin merkezi bir sunucuya taşınması gerekmeksizin, analiz ve yanıt süreleri önemli ölçüde azalır.
Velociraptor ana sitesinde Forensic katagorisi altında Dosya Adlarını Aramayı,Content aramayı, NTFS analizini,Volatile dataları nasıl göreceğinize kadar anlatıyor ben de uygulamalı olarak göstermiş olacagım.
Yeni bir Hunt başlatmak için;
Windows.KapeFiles.Targets ‘i artifact olarak seçiyoruz.
Kullanacagımız collection’u belirtiyoruz:
Burdan sonra Hunt’i başlatmak için Launch’a tıklamamız yeterli.
Tamamlanınca kendiniz için indirebilirsiniz.
Arşivden çıkardıktan sonra detayları şu şekilde görebilirsiniz.
Upload dizini altıda örneğin şu şekilde görünmektedir.
Şimdi de bir memory dump collection’u kullanalım.
New hunt’a basalım ve bu sefer Windows.Memory.Acquisition
artifact’ini seçelim.
Hunt tamamlandıktan sonra ortaya çıkan arşivi indirin. İçinde, PhysicalMemory.raw
memory dump’ını içeren bir dosya bulacaksınız .
Örnek sorular:
Localimde velociraptor’ü ayaga kaldırdım. Soru ise şu,
VAD (Virtual Address Descriptor) analizi kullanarak şüpheli bir işlemi tespit etmeniz ve cevabınızı bir dosya adı formatında girmeniz isteniyor.
NOT:
VAD (Virtual Address Descriptor), Windows işletim sistemindeki bellek yönetimi alt sistemlerinden biridir. VAD, her bir işlem tarafından kullanılan sanal bellek alanlarını (virtual memory regions) temsil eder. Bu alanlar, işlem tarafından kullanılan bellek bölgelerini yönetmek için kullanılır.
VAD, işlem belleğindeki her bir bölgenin özelliklerini tanımlar. Bu özellikler arasında bölgenin başlangıç adresi, bitiş adresi, koruma düzeyi (read, write, execute gibi), bölgenin tipi (örneğin, bir veri bölgesi mi yoksa bir kod bölgesi mi) gibi bilgiler bulunur. Bu bilgiler, işletim sistemi ve uygulamaların belleği yönetirken bellek bölümlerini düzenlemesine ve güvenlik politikalarını uygulamasına yardımcı olur.
Güvenlik araştırmalarında VAD, kötü amaçlı yazılım analizi gibi durumlarda önemli bir rol oynar. Örneğin, kötü amaçlı yazılımların bellek içinde nasıl davrandığını anlamak için VAD analizi kullanılabilir. VAD’nin içeriği, işletim sistemi ve işlem belleği yönetimi hakkında önemli bilgiler sağlar ve bu da kötü amaçlı yazılımların tespit edilmesi ve analiz edilmesi süreçlerinde faydalı olabilir.
Şimdi labı çözeceğim Velociraptor’e gelip Client ID yanındaki sembole tıklıyorum ve aktif Client ID varsa görüyorum.
Bir tane buldum şimdi buna tıklayalım ve collected diyelim.
Yeni collection’i listeye eklemek için ise:
Collection’lar içinde Exchange.Windows.Detection.Malfind ‘i buluyorum. Ve launch’a geliyorum.
Soruda istediği exe’yi buldugumu düsünüyorum.
2.soru bir komuta ve kontrol (C2) sunucusunun IP adresini bulmanızı istiyor.
Bu sefer Velociraptor’da ihtiyacım olan Windows.Carving.CobaltStrike artifact’ını seçmem gerek.
Launch ve sonrasında Result dedikten sonra:
C2 server’ı 3.19.219.4 olarak buldum.
3.soru ise persistence için kullanılan registry key’i bulmamızı istiyor.
Bu sefer Velociraptor’da Windows.Sys.StartupItems altına bakıyorum.
Ve sonuç Result altında görünmekte:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
4.soru ise Mimikatz ile ilgili dosyaların bulunduğu klasörü belirlemenizi istiyor.
Bu sefer ise Windows.Search.Yara artifact’ini seçmek işime yarıyor:
Ancak bu sefer Configure Paramters ‘e tıklıyorum ve wrench icon’unu seçiyorum.
mimikatz’ı tespit etmek için bir YARA kuralı oluşturmamız gerek sanırım. Bu, mimikatz repository’de gösterildiği gibi aşağıdaki kuralla başarılabilir:
Buldugum yer==> https://github.com/Neo23x0/signature-base/blob/master/yara/gen_mimikatz.yar
rule mimikatz
{
meta:
description = "mimikatz"
author = "Benjamin DELPY (gentilkiwi)"
tool_author = "Benjamin DELPY (gentilkiwi)"
strings:
$exe_x86_1 = { 89 71 04 89 [0-3] 30 8d 04 bd }
$exe_x86_2 = { 8b 4d e? 8b 45 f4 89 75 e? 89 01 85 ff 74 }
$exe_x64_1 = { 33 ff 4? 89 37 4? 8b f3 45 85 c? 74}
$exe_x64_2 = { 4c 8b df 49 [0-3] c1 e3 04 48 [0-3] 8b cb 4c 03 [0-3] d8 }
$dll_1 = { c7 0? 00 00 01 00 [4-14] c7 0? 01 00 00 00 }
$dll_2 = { c7 0? 10 02 00 00 ?? 89 4? }
$sys_x86 = { a0 00 00 00 24 02 00 00 40 00 00 00 [0-4] b8 00 00 00 6c 02 00 00 40 00 00 00 }
$sys_x64 = { 88 01 00 00 3c 04 00 00 40 00 00 00 [0-4] e8 02 00 00 f8 02 00 00 40 00 00 00 }
condition:
(all of ($exe_x86_*)) or (all of ($exe_x64_*)) or (all of ($dll_*)) or (any of ($sys_*))
}
İlgili Yara Rule’u config ettikten sonra Launch deyip bir kaç dakika tamamlanmasını bekliyoruz ve Resultta şu şekilde görmemiz gerek:
Yani cevap:
C:\Users\j0seph\AppData\Local\mimik
5.soru “j0seph” adlı bir kullanıcının en son eriştiği Microsoft Word belgesini bulmanızı istiyor.
Windows.Registry.RecentDocs diye bir artifact dikkatimi çekmişti bunun içine bakıyorum:
Ve cevap burada:
insurance.DOCX
Referanslar: