Giriş
Siber güvenlikte, kaba kuvvet Başarılı olana kadar kimlik bilgilerini veya kriptografik anahtarları tahmin etmeye yönelik metodik, kapsamlı bir girişim anlamına gelir. Kırmızı ekip operasyonları, sızma testleri ve parola kurtarma egzersizleri için temel bir tekniktir. Kaba kuvvet, "sihirli hackleme" ile ilgili değildir; tanımlanmış sınırlar içinde kalıcılığın ve sistematik aramanın operasyonel hale getirilmesidir. Sözlük saldırılarından yapay zekadan yararlanan hibrit yaklaşımlara kadar kaba kuvvet, yinelemeli hesaplamanın insan ve sistem savunmalarının üstesinden nasıl gelebileceğini göstermektedir.
Otomasyon ve yapay zeka çağında bile kaba kuvvet geçerliliğini korumaktadır. Mühendislere saldırı yüzeyine maruz kalma, parola ilkesinin etkinliği ve hız sınırlama mekanizmaları hakkında bilgi verir. Dahası, modern yapay zeka odaklı güvenlik platformları bu teknikleri temel alarak saldırıları kontrollü, denetlenebilir ve tekrarlanabilir bir şekilde düzenler.

Kaba Kuvvet Neden Önemlidir?
Kaba kuvvet hem pratik bir test aracı hem de kavramsal bir ölçüt görevi görür. Kimlik doğrulamadaki zayıflıkları vurgular, parola politikalarındaki entropiyi ölçer ve hız sınırlama gibi savunma kontrollerini doğrular, MFAve kilitleme mekanizmaları.
Uygunluğun temel boyutları:
- Güvenlik Kontrollerinin Doğrulanması - Savunmaların kapsamlı saldırı girişimlerine dayanıp dayanmadığını onaylar.
- Yapay Zeka Eğitim Alanı - Yapay zeka odaklı sızma testi aracıları için ampirik veriler sağlar.
- Kırmızı-Mavi Takım Hizalaması - Hücum tekniği anlayışını savunma stratejisi uygulaması ile birleştirir.
Kaba Kuvvet Araçlarının Sınıflandırılması ve Yetenekleri
Kaba kuvvet operasyonları hedef, strateji ve otomasyon seviyesine göre kategorize edilebilir.
| Kategori | Temel İşlev | Yetenek Özellikleri | Örnek Araçlar |
|---|---|---|---|
| Şifre Tahmin Etme | Hesaplara karşı kullanıcı şifrelerini deneme | Sözlük ve hibrit, paralel yürütme, yeniden deneme yönetimi | Hydra, Medusa, Patator |
| Anahtar Kırma | Kriptografik anahtarları kurtarma | GPU hızlandırma, kural tabanlı mutasyon, dağıtılmış | Karındeşen John, Hashcat, Cain & Abel |
| Web Formu Saldırıları | Kaba kuvvet giriş uç noktaları | Hız sınırı farkındalığı, oturum yönetimi, CAPTCHA işleme | Burp Suite İzinsiz Giriş, OWASP ZAP, wfuzz |
| Protokol Saldırıları | SSH, RDP, FTP gibi saldırı protokolleri | Bağlantı havuzu oluşturma, otomatik yeniden deneme, gizli ayarlama | Ncrack, THC-Hydra, BruteSSH |
Uygulamada Mühendislik: Kaba Kuvvetin Operasyonelleştirilmesi
Operasyonelleştirme, kaba kuvvet testlerinin tekrarlanabilirliğini, denetlenebilirliğini ve ölçeklenebilirliğini sağlar.
Temel uygulamalar:
- Çıktı Sözleşmeleri: parametreler, zaman damgaları, sonuçlar dahil olmak üzere yapılandırılmış çıktılar (JSON / SARIF / özel şema).
- Konteynerli Yürütme: her bir aracı izole ortamlarda çalıştırın.
- Microservices & Message Bus: araçları uzaktan çağrılabilir işler olarak sarın, Kafka/RabbitMQ aracılığıyla zincirleyin.
- CI/CD Entegrasyonu: kontrollü aşamalarda atakları tetikler.
- Kanıt ve Denetim İzi: yakalama komutu, stdout/stderr, çıkış kodu, ana bilgisayar bilgisi.
Python örneği - paralel parola denemeleri ve birleşik JSON çıktısı:
import subprocess, json, concurrent.futures, os, time
HEDEFLER = ["10.0.0.5", "10.0.0.7"]
RESULT_DIR = "./out"
os.makedirs(RESULT_DIR, exist_ok=True)
def run_brute(tool_cmd):
meta = {"cmd": tool_cmd, "started_at": time.time()}
try:
proc = subprocess.run(tool_cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=600, text=True)
meta.update({
"rc": proc.returncode,
"stdout": proc.stdout,
"stderr": proc.stderr,
"duration": time.time() - meta["started_at"]
})
except Exception as e:
meta.update({"rc": -1, "stdout": "", "stderr": str(e), "duration": time.time() - meta["started_at"]})
meta döndür
def brute_target(hedef):
hydra_cmd = ["hydra", "-L", "users.txt", "-P", "passwords.txt", f "ssh://{target}"]
hashcat_cmd = ["hashcat", "-m", "0", "hashes.txt", "wordlist.txt"]
res = {"target": hedef, "runs": {}}
res["runs"]["hydra"] = run_brute(hydra_cmd)
res["runs"]["hashcat"] = run_brute(hashcat_cmd)
dönüş res
def main():
out = {"generated_at": time.time(), "results": {}}
with concurrent.futures.ThreadPoolExecutor(max_workers=4) as ex:
futures = {ex.submit(brute_target, t): t for t in TARGETS}
for fut in concurrent.futures.as_completed(futures):
t = futures[fut]
out["sonuçlar"][t] = fut.result()
with open(f"{RESULT_DIR}/brute_results.json", "w") as fh:
json.dump(out, fh, indent=2)
if __name__ == "__main__":
main()
Penligent: 200'den Fazla Hacking Aracı ile Akıllı Pentesting
Penligent, kaba kuvvet ve daha geniş pentesting iş akışlarını yapay zeka tarafından yönetilen, denetlenebilir süreçlere dönüştürür. Platform, doğal dil talimatlarını ayrıştırarak uygun araçları (Hydra/Hashcat gibi kaba kuvvet motorları dahil) otomatik olarak seçer, bulguları doğrular, riskleri önceliklendirir ve profesyonel raporlar oluşturur.
Örnek senaryo:
Emredin: "X alt alan adını zayıf parolalar ve SSH maruziyeti için kontrol edin"
İş akışı: varlık keşfi → uç nokta numaralandırma → sözlük / hibrit kaba kuvvet → doğrulama → rapor oluşturma. Tüm meta veriler, günlükler ve çıktılar izlenebilirlik için kaydedilir.
Penligent, CI/CD işlem hatlarında sürekli güvenlik geri bildirimi sağlar: herhangi bir kod veya altyapı değişikliği hedefli taramaları tetikler, yüksek öncelikli bulgular bilet oluşturur ve hafifletme kılavuzu otomatik olarak eklenir. Kaba kuvvet saldırıları böylece kurumsal uyumluluk standartları dahilinde güvenli bir şekilde operasyonel hale getirilir.
Güçlendirme oyun kitabı - önceliklendirilmiş mühendislik kontrolleri
Hızlı önceliklendirilmiş matris
| Öncelik | Kontrol | Etki | Çaba |
|---|---|---|---|
| P0 | Tüm ayrıcalıklı hesaplar için MFA'yı zorunlu kılın | Çok Yüksek | Düşük-Orta |
| P0 | Bilinen sızdırılmış kimlik bilgilerini (HIBP) kimlik doğrulama sırasında engelleyin | Çok Yüksek | Orta |
| P0 | Kimlik doğrulama uç noktalarında uyarlanabilir hız sınırlaması + bot yönetimi | Çok Yüksek | Orta |
| P1 | Güçlü parola karma (ayarlanmış params ile Argon2id) | Yüksek | Düşük |
| P1 | Çoklu IP / hız anomalileri için SIEM tespitleri | Yüksek | Orta |
| P2 | Oturum ve cihaz risk puanlaması (SSO/risk motoru) | Orta | Orta-Yüksek |
| P2 | Şüpheli akışlar için WAF kuralları + meydan okuma sayfaları | Orta | Orta |
| P3 | Kanarya hesaplar / kimlik bilgisi doldurma için aldatma tuzakları | Orta | Orta |
| P3 | SSH / RDP'yi güçlendirin (ana bilgisayarları atlayın, koşullu erişim) | Orta | Düşük-Orta |
Çok Faktörlü Kimlik Doğrulamayı (MFA) uygulayın - pratik politikalar
- Politika: Tüm ayrıcalıklı roller ve provizyon/infra/UI konsollarına erişen tüm personel için zorunlu MFA. Kademeli olarak tüm kullanıcılara yaygınlaştırın. Yöneticiler için kimlik avına dayanıklı yöntemleri (FIDO2/WebAuthn, donanım anahtarları) tercih edin.
- Uygulama ipuçları:
- SSO (OIDC/SAML) için şunları gerektirir
akrveyaauthnContextClassRefMFA'yı ifade eder. - Riskli eylemler (parola değiştirme, API anahtarı oluşturma) için kademeli kimlik doğrulama uygulayın.
- MFA'yı yerel olarak destekleyemeyen eski uygulamalar için, bunları MFA'yı zorlayan bir SSO veya proxy ile önleyin.
- SSO (OIDC/SAML) için şunları gerektirir
- İzlemeMFA etkin olan ayrıcalıklı kullanıcıların %'sini, başarısız MFA denemelerini ve yükseltme olaylarını izleyin. Ayrıcalıklı oturum açma işlemlerinin > X%'sinde MFA yoksa uyarı verin.
Bilinen sızdırılmış kimlik bilgilerini engelleyin - HaveIBeenPwned (HIBP) entegrasyon örneği
- Yaklaşım: Kayıt sırasında ve her girişte (veya şifre değişikliğinde), aday şifresini sızdırılmış şifre beslemesine karşı kontrol edin. Tam parola göndermekten kaçınmak için k-anonimlik HIBP API'sini kullanın. Şifrenin ihlal edildiği gözlemlenirse, engelleyin ve rotasyona zorlayın.
- HIBP k-anonimlik akışı (taslak):
- SHA-1(parola) → önek (ilk 5 hex karakter) ve soneki hesaplayın.
- Sorgu
https://api.pwnedpasswords.com/range/{prefix}→ soneklerin listesini + sayıları alır. - Son ekinizin mevcut olup olmadığını kontrol edin - evet ise ihlal edilmiş olarak değerlendirin.
- Politika: sızdırılan en iyi N parolayı reddedin; isteğe bağlı olarak sızıntı sayısı > eşik (örn. > 100) olan tüm parolaları reddedin. Olayları günlüğe kaydedin ve kullanıcıları bilgilendirin.
Kod (Python) taslağı:
import hashlib, requests
def is_pwned(şifre):
s = hashlib.sha1(password.encode('utf-8')).hexdigest().upper()
prefix, suffix = s[:5], s[5:]
r = requests.get(f"")
return sonek r.text içinde
# Kullanımı: şifre ayarlandığında/değiştirildiğinde veya periyodik olarak depolanan şifreleri (karma) kontrol edin, kırılmışsa engelleyin
Uyarlanabilir hız sınırlama ve bot yönetimi - somut yapılandırmalar
- Prensipler: (a) IP, (b) hesap, (c) IP+hesap ve (d) ASN/jeolokasyona göre hız limiti. Tekrarlanan arızalarda aşamalı geri alma ile patlama toleransı için token kovasını birleştirin.
- Nginx örneği (IP'ye göre temel oran sınırı):
# nginx.conf snippet
limit_req_zone $binary_remote_addr zone=auth_zone:10m rate=5r/s;
sunucu {
konum /login {
limit_req zone=auth_zone burst=10 nodelay;
proxy_pass http://auth_service;
}
}
- Cloudflare / WAFBot Yönetimini etkinleştirin, şüpheli puanlar için zorluk ayarlayın; yüksek istek hızına sahip auth POST'lar için özel WAF kuralı oluşturun.
- Aşamalı yanıt: ilk eşikte → 429 veya CAPTCHA sunun; daha yüksek önem derecesinde → geçici engelleme / şifre sıfırlama gerektirir.
Hesap kilitleme ve parola püskürtme azaltma - kalibre edilmiş politikalar
- Problem: naif hesap başına kilitleme, saldırganların hesaplara karşı hizmet reddini test etmesine olanak tanır. Parola püskürtme, birçok hesapta birkaç ortak parola deneyerek hesap başına kilitlenmeleri önler.
- Önerilen kalibre edilmiş politika:
- Hesap başına: N_failures = 10 dakika içinde 10 başarısızlıktan sonra → zorluğu artırın (CAPTCHA / MFA step-up) veya geçici yumuşak kilit (örneğin, 15 dakika).
- Püskürtme algılama: birçok farklı hesap aynı IP / ASN'den tek başarısızlık gösteriyorsa → IP kısıtlamasını tetikleyin veya kaynak IP'de CAPTCHA gerektirir.
- İlerici: kalıcı kilitleme yerine artan bir politika uygulayın: meydan okuma → MFA → geçici kilit → yönetici incelemesi.
- Örnek kural:
if failures(account) >= 10 && unique_ips(account) >= 5 -> parola sıfırlama ve MFA gerektirir.
Parola depolama ve karma - Argon2id önerilen parametreler
- Kullanmayın: düz SHA veya tuzsuz MD5. Modern KDF'leri kullanın. Argon2id yeni sistemler için önerilir; gerekirse bcrypt'e geri dönülür.
- Önerilen temel parametreler (2025 kılavuzu):
time_cost = 3,memory_cost = 64 * 1024KB (64 MB),paralellik = 2- donanım izin verdiği ölçüde yukarı doğru ayarlayın.- Tuz (≥ 16 bayt) ve KDF paramlarını hash ile birlikte saklayın.
- Rotasyon: bir geçiş yolu sağlayın - params eskiyse bir sonraki girişte yeniden yayınlayın. Pahalı hashing yoluyla DOS'tan kaçınmak için ortalama bcrypt/Argon2 zamanlamasını önbelleğe alın/izleyin.
SIEM / algılama kuralları - Splunk & KQL örnekleri
Aynı IP'den farklı hesaplara çok sayıda başarısız giriş tespit edin (kimlik bilgisi püskürtme göstergesi):
index=auth_logs action=failure | stats dc(user) as users, count as failures by src_ip | where users > 20 AND failures>50
Yüksek benzersiz IP'lere sahip şüpheli hesabı 5 dakika içinde tespit edin:
index=auth_logs earliest=-5m | stats dc(src_ip) as uniq_ips, count as fails by user | where uniq_ips > 5 AND fails > 10
KQL (Azure) örneği
SigninLogs
| burada ResultType != 0 ve TimeGenerated > ago(10m)
| summarize failures = count(), distinctIPs = dcount(ClientIP) by UserPrincipalName
| arızaların > 10 ve farklıIP'lerin > 4 olduğu durumlarda
Bot yönetimi ve WAF entegrasyonu - oyun kitabı öğeleri
- Bir bot yönetim çözümü dağıtın (Cloudflare Bot Management, Akamai, PerimeterX). Bot puanını karar verme sürecine bağlayın - örneğin, puan > 80 → meydan okuma, > 95 → engelleme.
- Kritik kimlik doğrulama uç noktaları için: POST gövde modellerini incelemek için WAF kurallarını ayarlayın; bilinen kimlik bilgisi doldurma imzalarını engelleyin ve şüpheli IP'leri kısın.
- WAF günlüklerinin SIEM'i yeniden oynatma/POC doğrulaması gerçekleştirmek için yeterli istek bağlamıyla beslediğinden emin olun.
Aldatma ve kanarya hesapları - tespit amplifikasyonu
- Güçlü ama gerçekçi isimlerle izlenen "kanarya" hesapları oluşturun; bunlara yönelik başarısız girişimler yüksek güvenirlikli tehditlerdir (çünkü normal kullanımda değillerdir).
- Yüksek öncelikli uyarılar üretmek ve kaynak IP'leri otomatik olarak engellemek için kanaryaları enstrümante edin. Hiçbir zaman meşru trafik almayan sahte oturum açma uç noktaları kullanın.
Test, metrikler ve SLA'lar - başarı nasıl ölçülür
İzlenecek temel metrikler
- Kimlik bilgisi doldurma olayları için Ortalama Tespit Süresi (MTTD).
- Kaynak IP'leri engellemek / düzeltmeye yükseltmek için Ortalama Yanıt Süresi (MTTR).
- MFA etkinleştirilmiş % ayrıcalıklı girişler.
- Kaba kuvvet tespitlerinin yanlış pozitif oranı (ayarlamadan sonra hedef < 5%).
- Başarılı hesap ele geçirme sayısı (hedef: 0); tespit ve kontrol altına alma arasındaki süre.
Test
- Kontrolleri doğrulamak için kırmızı ekip simülasyonları / ajan pentest çalışmaları planlayın. Kontrollü kimlik bilgisi püskürtme testleri için hazırlama ortamını kullanın. Çalıştırmayı olay oyun kitaplarıyla entegre edin.
Sonuç
Kaba kuvvet, hem bir öğretim aracı hem de operasyonel bir gereklilik olarak temel bir teknik olmaya devam etmektedir. Düzgün bir şekilde tasarlanan, izlenen ve yapay zeka tarafından düzenlenen bu teknik, basit bir saldırı yönteminden tekrarlanabilir, denetlenebilir bir güvenlik testi stratejisine dönüşür. Penligent gibi platformlar, akıllı otomasyonun kaba kuvveti nasıl güvenli bir şekilde operasyonel hale getirebileceğini, daha geniş pentesting iş akışlarıyla nasıl entegre edebileceğini ve savunmaları sürekli olarak nasıl güçlendirebileceğini göstermektedir.

