« Tüm yayınlar

Sıfırdan Python ile Wazuh Sunucusu: Protokol Tersine Mühendisliği

Geliştirici souzo, Wazuh ajan-sunucu protokolünü paket analiziyle çözüp Python'da wazoo adlı açık kaynak bir Wazuh sunucusu geliştirdi. Şifreleme ve mesaj formatı detaylandırıldı.

Bir geliştirici olan souzo, resmi Wazuh sunucu koduna bakmadan, sadece ağ üzerinden geçen paketleri inceleyerek Wazuh ajan-sunucu protokolünü tersine mühendislikle çözdü ve wazoo adında Python tabanlı bir Wazuh sunucusu geliştirdi. Çalışma, 1515 portundaki kayıt (enrollment) sürecini ve 1514 portundaki güvenli bağlantıyı adım adım analiz ediyor: OSSEC başlıklı kayıt mesajları, sunucunun döndürdüğü ajan ID'si ve bağlantı şifresi, ardından AES-CBC şifreleme, sabit kodlanmış IV değeri ve ajan anahtarının MD5 özetinden türetilen AES anahtarı gibi kritik detaylar ortaya konuyor.

Yazı ayrıca mesaj çerçevelemesini (uzunluk öneki, zlib sıkıştırma, dolgu, MD5 doğrulama, rastgele/global/local sayaçlar) ve kontrol mesajları (#!- ile başlayan agent startup/shutdown/ack) ile gerçek log olaylarının nasıl ayırt edildiğini gösteriyor. Sunucunun ajanlara ACK yanıtı üretme mantığı da tersine çevrilerek tam bir el sıkışma döngüsü elde edilmiş.

Bu çalışma, güvenlik mühendisleri ve altyapı geliştiricileri için önemli çünkü kapalı ya da az belgelenmiş bir protokolün sadece ağ trafiği gözlemlenerek yeniden inşa edilebileceğini gösteriyor. wazoo projesi, gerçek Wazuh ajanlarını kaydedip mesajlarını çözebilen, olayları TCP/UDP/Unix soket veya dosyaya yönlendirebilen hafif bir alternatif sunucu sunarak Wazuh ekosistemini genişletme ve anlama isteyenler için pratik bir referans niteliği taşıyor.

» KaynakHashnode #14