Kural Yazımı
Özelleştirilebilir kontrol tanımları
Kontrol tanımları okunabilir YAML dosyalarıdır. Yeni bir zafiyet duyurulduğunda güvenlik ekibiniz kontrolü tanımlar, imzalı dağıtımla tüm tarama sunucularına yayar.
Kontrol kuralını kurum yazar
Zafiyet tarayıcılarının çoğunda kontrol kuralı üründen gelir; yeni bir açık duyurulduğunda kurum, üreticinin kural paketini yayınlamasını bekler. Sorumluluk kurumda, zamanlama üreticide kalır.
Cyprob bu ilişkiyi tersine çevirir. Kontrol tanımı okunabilir bir metin dosyasıdır. Ağınızı sizden iyi kimse bilmediği için, aramasını istediğiniz şeyi siz tarif edersiniz.
Bir kontrol neye benzer?
Kontroller YAML biçiminde yazılır. Aşağıdaki örnek, kimlik doğrulaması olmadan yanıt veren bir yönetim arayüzünü arar.
id: kurum-yonetim-paneli
name: Yönetim paneli dışarı açık
type: exposed-panel
info:
severity: high
tags: [panel, discovery]
format: http-template
target_scope: SERVICE
execution_phase: vuln_scan
http_requests:
- method: GET
endpoints: [/admin/login]
matcher_logic: all
matchers:
- type: status
status: [200]
- type: word
part: body
words: ["Yönetim Paneli"]
Dosyayı yazan kişinin programlama bilmesi gerekmez. Ne aradığını bilmesi yeterlidir.

Yazdığınız kural nasıl yayılır?
Tek yerde tanımlanır
Kural yönetim düğümüne eklenir. Tarama sunucuları görevi üstlendiğinde kuralı oradan alır; her sunucuya tek tek kurulum yapılmaz.
İmzalı gelir
Ürünle dağıtılan kontroller kriptografik imza taşır. İmzası doğrulanmayan ya da iptal listesine alınmış bir kontrol çalıştırılmaz.
Sonuç kanıtla gelir
Her bulgu, hangi isteğin gönderildiği ve hangi yanıtın alındığı bilgisiyle kaydedilir. Bulguyu denetleyen kişi kararı kendi doğrulayabilir.
Ne zaman işe yarar?
Kurumunuza özel bir yazılım kullanıyorsanız, o yazılımın açığı hiçbir üreticinin kataloğunda bulunmaz. Sektörünüze özel bir yapılandırma hatası arıyorsanız, aynı durum geçerlidir. Kuralı yazabilen ekip, kataloğun bittiği yerde durmaz.
Yeni bir açık kamuya duyurulduğunda da aynı yol açıktır. Kontrolü yazar, dar bir varlık grubunda denersiniz, doğru çalıştığını gördükten sonra ağın tamamına açarsınız.
Merak edilenler
Kural yazmak için programlama bilmek gerekir mi?
Gerekmez. Kontrol tanımı okunabilir bir YAML dosyasıdır; dosyayı yazan kişinin ne aradığını bilmesi yeterlidir. Örnek tanımlar sayfadaki biçimin aynısıdır.
Yazdığım kural ağın tamamına nasıl çıkar?
Kademeli. Kural önce dar bir varlık grubunda denenir, davranışı görüldükten sonra imzalı dağıtımla tüm tarama sunucularına yayılır.
Yeni bir CVE duyurulduğunda üreticiyi beklemek gerekir mi?
Gerekmez. Kontrol kuralının sahipliği kurumdadır; güvenlik ekibi kontrolü kendisi tanımlar ve yayar. Üreticinin kural paketi takvimi kurumun aciliyetini belirlemez.