Ders 1.63: Kısa ömürlü süreçleri eBPF ile yakalamak
Bazı saldırılar hiç çalışan bir süreç bırakmaz: bir iş her iki dakikada bir başlar, bir betik indirir, işini üç saniyede yapar ve çıkar. ps ve osquery anlık görüntüleri onu neredeyse her zaman kaçırır. eBPF küçük programların 'bir program çalıştırıldı' ya da 'bir dosya açıldı' gibi olaylarda çekirdeğin içinde çalışmasını sağlar; BCC araçları da bunu kullanarak her olayı olduğu anda yazar. Laboratuvarda raporlama veritabanı her iki dakikada bir bilinmeyen bir adrese biraz trafik gönderiyor. Onu execsnoop, opensnoop ve tcpconnect ile izliyor, bir müşteri tablosunun dışa aktarıldığını görüyor, işi buluyor ve durduruyorsun.
17 dk
Bu derste öğreneceklerin
- Anlık görüntülerin kısa ömürlü süreçleri neden kaçırdığını açıklamak
- Her execve'yi execsnoop ile izlemek
- Dosya açmalarını ve TCP bağlantılarını izlemek
- PID ve PPID'lerden bir süreç ağacı kurmak
- Düzeltmeyi yeniden izleyerek doğrulamak
Temel terimler
- eBPF
- Olaylarda (sistem çağrıları, izleme noktaları, ağ paketleri) çekirdeğin içinde çalışan küçük, doğrulanmış programlar.
- BCC araçları
- Hazır eBPF araçları; Ubuntu'da -bpfcc ile adlandırılırlar (execsnoop-bpfcc).
- execsnoop
- Her program çalıştırmayı yazar: komut, PID, ebeveyn PID, dönüş kodu, argümanlar.
- opensnoop
- Her dosya açmayı yazar: PID, komut, dosya tanımlayıcısı, hata, yol.
- tcpconnect
- Her giden TCP bağlantı girişimini yazar.
- timeout
- Bir komutu belirli bir süre çalıştırır, sonra durdurur (çıkış kodu 124).
← Kabuk geçmişi ve araç izleri · Tüm dersler · Sosyal mühendisliğin psikolojisi →