İçindekiler

    Yazıyı Dinle

    Hazır
    Tarayıcınızın yerleşik ses sentezi özelliğini kullanır.

    Yazı Boyutu

    Küçük Aa
    Normal Aa
    Büyük Aa
    Çok Büyük Aa

    Kaydet

    📑

    Bu makaleyi daha sonra okumak için kaydedin

    Bir PHP ve MySQL ile yazılan web sitesinin güvenlik açıklarını taramak

    Yazıyı dinlemek için oynat butonuna tıklayın

    Bir PHP ve MySQL ile yazılan web sitesinin güvenlik açıklarını taramak için kullanabileceğiniz birçok araç bulunmaktadır. Bu araçlar, SQL enjeksiyonu, XSS (CrossSite Scripting), CSRF (CrossSite Request Forgery), dosya dahil etme açıkları ve diğer yaygın güvenlik zafiyetlerini tespit etmeye yardımcı olur. İşte bu tür açıkları taramak için kullanabileceğiniz popüler araçlar:

     

     1. OWASP ZAP (Zed Attack Proxy)
     Açıklama: OWASP ZAP, web uygulamalarının güvenlik açıklarını taramak için kullanılan açık kaynaklı bir araçtır.
     Özellikler:
      SQL enjeksiyonu, XSS, CSRF gibi açıkları tespit eder.
      Otomatik tarama ve manuel test imkanı sunar.
      REST API desteği ile entegrasyon kolaylığı sağlar.
     Nasıl Kullanılır:
      (https://www.zaproxy.org/) sitesinden indirip kurabilirsiniz.
      Web sitenizin URL'sini girerek otomatik tarama başlatabilirsiniz.

     

     2. Burp Suite
     Açıklama: Burp Suite, web uygulama güvenliği testleri için profesyonel bir araçtır. Ücretsiz (Community Edition) ve ücretli (Professional Edition) sürümleri bulunur.
     Özellikler:
      SQL enjeksiyonu, XSS, CSRF, dosya dahil etme açıkları gibi birçok zafiyeti tespit eder.
      Manuel ve otomatik tarama seçenekleri sunar.
      Proxy özelliği ile HTTP/HTTPS trafiğini analiz edebilirsiniz.
     Nasıl Kullanılır:
      (https://portswigger.net/burp) sitesinden indirip kurabilirsiniz.
      Tarayıcınızın proxy ayarlarını Burp Suite'e yönlendirerek trafiği inceleyebilirsiniz.

     

     3. Nikto
     Açıklama: Nikto, web sunucuları ve uygulamaları için açık kaynaklı bir güvenlik tarayıcısıdır.
     Özellikler:
      Web sunucusu yapılandırma hatalarını ve bilinen güvenlik açıklarını tespit eder.
      PHP ve MySQL tabanlı sitelerdeki yaygın açıkları tarar.
     Nasıl Kullanılır:
      Linux tabanlı sistemlerde terminalden nikto h  komutuyla kullanılır.
      (https://github.com/sullo/nikto) GitHub sayfasından indirilebilir.

     

     4. SQLMap
     Açıklama: SQLMap, SQL enjeksiyonu açıklarını tespit etmek ve sömürmek için kullanılan bir araçtır.
     Özellikler:
      Otomatik SQL enjeksiyonu tespiti ve sömürme imkanı sunar.
      MySQL, PostgreSQL, Oracle gibi veritabanlarını destekler.
     Nasıl Kullanılır:
      Terminalden sqlmap u  komutuyla kullanılır.
      (https://sqlmap.org/) sitesinden indirilebilir.

     

     5. Acunetix
     Açıklama: Acunetix, web uygulamalarının güvenlik açıklarını tarayan profesyonel bir araçtır. Ücretli bir çözümdür.
     Özellikler:
      SQL enjeksiyonu, XSS, CSRF, dosya dahil etme açıkları gibi birçok zafiyeti tespit eder.
      Otomatik tarama ve raporlama özellikleri sunar.
     Nasıl Kullanılır:
      (https://www.acunetix.com/) sitesinden satın alınabilir.

     

     6. Netsparker
     Açıklama: Netsparker, web uygulama güvenliği testleri için kullanılan bir diğer profesyonel araçtır. Ücretli bir çözümdür.
     Özellikler:
      SQL enjeksiyonu, XSS, CSRF gibi açıkları tespit eder.
      Otomatik tarama ve raporlama özellikleri sunar.
     Nasıl Kullanılır:
      (https://www.netsparker.com/) sitesinden satın alınabilir.

     

     7. WPScan (WordPress Siteleri İçin)
     Açıklama: Eğer PHP ve MySQL ile yazılan site bir WordPress sitesiyse, WPScan kullanabilirsiniz.
     Özellikler:
      WordPress eklentileri, temaları ve çekirdek dosyalarındaki güvenlik açıklarını tespit eder.
     Nasıl Kullanılır:
      Terminalden wpscan url  komutuyla kullanılır.
      (https://wpscan.com/) sitesinden indirilebilir.

     

     8. Nessus
     Açıklama: Nessus, hem ağ hem de web uygulama güvenliği taramaları yapabilen profesyonel bir araçtır. Ücretli bir çözümdür.
     Özellikler:
      Web uygulamalarındaki güvenlik açıklarını tespit eder.
      Detaylı raporlama özellikleri sunar.
     Nasıl Kullanılır:
      (https://www.tenable.com/products/nessus) sitesinden satın alınabilir.

     

     9. Vega
     Açıklama: Vega, web uygulama güvenliği testleri için kullanılan açık kaynaklı bir araçtır.
     Özellikler:
      SQL enjeksiyonu, XSS, CSRF gibi açıkları tespit eder.
      Kullanıcı dostu arayüzü vardır.
     Nasıl Kullanılır:
      (https://subgraph.com/vega/) sitesinden indirilebilir.

     

     10. Arachni
     Açıklama: Arachni, web uygulama güvenliği testleri için kullanılan açık kaynaklı bir araçtır.
     Özellikler:
      SQL enjeksiyonu, XSS, CSRF gibi açıkları tespit eder.
      Otomatik tarama ve raporlama özellikleri sunar.
     Nasıl Kullanılır:
      (http://www.arachniscanner.com/) sitesinden indirilebilir.

    Bu araçlarla PHP ve MySQL tabanlı sitenizin güvenlik açıklarını tespit edebilir ve güvenliğini artırabilirsiniz.

     1) Yasal uyarı (ÖNEMLİ)

    Her zaman hedef site sahibinden yazılı izin alın. İzinsiz tarama yasa dışıdır ve zarar verebilir.

     2) Hızlı tarama akışı (recommended workflow)

    1. Kapsam belirleme — hangi hostlar/altalanadlar, test zamanı, hangi uygulama parçaları (API, admin panel vs).
    2. İstihbarat (reconnaissance) — nmap / dirb / gobuster ile servisler, dizinler.
    3. Pasif analiz — kaynak kodu varsa kod incelemesi; erişim yoksa site kullanım davranışı incelemesi.
    4. Otomatik tarama — ZAP / Burp Scanner / Arachni / Acunetix ile breadth tarama.
    5. Hedefli sömürü & doğrulama — SQLmap, Burp Intruder/Repeater, manuel XSS testleri.
    6. Doğrulama & falsepositive temizliği — otomatik sonuçları manuel doğrula.
    7. Raporlama & düzeltme önerileri — CVSS/etkiönceliklendirme ile.
    8. Retest — düzeltmelerden sonra yeniden tarama.

     3) Faydalı komut örnekleri (hızlıstart)

     Nikto (basit web sunucu konfig kontrolü)


    nikto h https://example.com


     SQLMap (basit parametre tespiti)


    sqlmap u "https://example.com/search.php?q=term" batch risk=2 level=3


     WPScan (WordPress)


    wpscan url https://example.com enumerate vp,tt,cb


     Burp: tarayıcı proxy ayarını Burp’e ver, proxy üzerinden gezin, sonra Scanner/Repeater ile test et.
     OWASP ZAP (CLI örneği):


    zap.sh daemon port 8080 config api.disablekey=true
     sonra ZAP UI'den veya API ile tarama başlat


     4) Hedefli testler — neyi nasıl test etmelisiniz

     SQL Enjeksiyonu: ID/arama/filtre parametreleri; boolean/union/error/ timebased testleri. (sqlmap ile otomatik, Burp Repeater ile manuel doğrulama)

    5) Hızlı remediation önerileri (PHP/MySQL özel)

    Hazır SQL kullanmayın — Prepared Statements / Parametrized Queries (PDO veya mysqli ile).
     Input validation & output encoding — kullanıcı girdisini her durumda sanitize etme + çıktıda doğru encoding (HTML entities).
     Stored XSS için: veri kaynağında sanitize yerine çıktı anında encoding (contextaware).
     File upload: MIME tip kontrolü, uzantı engelleme, random dosya isimleri, upload dizinini web root dışına koy, .htaccess ile script çalıştırmayı engelle.
     Password storage: bcrypt/argon2 kullan, asla md5/sha1.
     Error handling: prod ortamında detaylı hata mesajı gösterme. Logla ama kullanıcıya gösterme.
     Session management: session_regenerate_id() login sonrası, secure & HttpOnly cookie, kısa expiry, SameSite=strict/ Lax uygun şekilde.
     Least privilege DB user: uygulama DB kullanıcısına sadece gereken yetkileri verin (örn. DROP/GRANT yok).
     Dependency yönetimi: Composer paketlerini güncel tut, composer audit / sensiolabs/securitychecker benzeri.
     CSP ve güvenlik başlıkları uygulayın.

    6) Raporlama & önceliklendirme

     Bulduğunuz her zafiyeti CVSS veya basit etki/olasılık ölçeği ile sınıflandırın (High / Medium / Low).
     Öncelik: RCE / Auth bypass / SQLi / Sensitive data exposure en yüksek.
     Her bulguya: açıklama, kanıt (PoC — güvenli şekilde), etki, düzeltme adımı, tekrar test önerisi ekleyin.

     7) CI / Otomasyon önerisi

     Düzenli tarama için ZAP veya Nikto’yu CI pipeline’a ekleyin (staging ortamında).
     sqlmap gibi araçları otomatik çalıştırmayın production üzerinde — staging/safe ortamda.

     8) Yan araçlar & loglama

     Fail2ban / WAF (ModSecurity) gibi bruteforce ve bilinen saldırı imzaları için.
     Uygulama seviyesinde audit/log (kim ne zaman ne yaptı) — activity_logs tablosu gibi.

     9) Örnek kısa checklist (kısa)

     [ ] Yazılı izin alındı
     [ ] Staging ortamı hazır
     [ ] Otomatik tarama (ZAP/Burp/Nikto) yapıldı
     [ ] SQLmap ile hedefli SQLi testleri yapıldı
     [ ] Manuel XSS/CSRF/IDOR testleri yapıldı
     [ ] Upload kontrolleri test edildi
     [ ] Güvenlik başlıkları kontrol edildi
     [ ] Düzeltmeler listelendi & CVSS ile sıralandı
     [ ] Retest yapıldı

    tüm dosyaları içeren ZIP arşivini oluşturdum. Aşağıdan indirip kullanabilirsin:

    [Download the ZIP](security_toolkit.zip)

    İçerik:

    * zap_automation.py — ZAP Python otomasyon scripti
    * automation.yaml — ZAP Automation Framework örneği
    * sqlmap_commands.sh — sqlmap komut seti (çalıştırılabilir)
    * intruder_payloads.txt — Burp Intruder için payload listesi
    * burp_project_template.md — Burp proje template & rehberi
    * README.md — hızlı açıklama

    Önceki Yazı
    Windows’ta Sudo Komutu: Nedir ve Nasıl Kullanılır?

    Microsoft, Windows işletim sisteminde geliştiricilerin ve sistem yöneticileri...

    Sonraki Yazı
    WHM/cPanel'de HTML e-posta imzaları oluşturma süreci

    Bu blog yazısı, WHM/cPanel'de HTML e-posta imzaları oluşturma sürecini adı...