PentestGPT: Yapay Zeka Destekli Sızma Testi Asistanı

Sızma testleri (Pentest), bilgi toplama, zafiyet analizi, sömürü (exploitation), yetki yükseltme ve raporlama gibi birçok aşamadan oluşan karmaşık bir süreçtir. Büyük dil modellerinin (LLM) gelişmesiyle birlikte yapay zekâ destekli sızma testi araçları ortaya çıkmıştır. Bunlardan biri de PentestGPT'dir.


PentestGPT, sızma testi uzmanlarına yardımcı olmak amacıyla geliştirilmiş, büyük dil modellerini kullanan bir yapay zekâ destekli güvenlik asistanıdır.

 PentestGPT'nin:

  • Ne olduğu

  • Nasıl çalıştığı

  • Kurulumu

  • Kullanımı

  • Pratik örnekleri

  • Avantajları ve dezavantajları

  • Etik kullanımı

ayrıntılı olarak incelenecektir.


PentestGPT Nedir?

PentestGPT, sızma testi uzmanlarının gerçekleştirdiği işlemleri organize eden ve yönlendiren bir yapay zekâ platformudur.

Temel amacı:

İnsan uzmanın yerine geçmek değil, uzmanın daha hızlı ve sistematik çalışmasını sağlamaktır.

Araç;

  • Nmap çıktılarını analiz edebilir.

  • Web uygulaması zafiyetlerini yorumlayabilir.

  • Sonraki adımları önerebilir.

  • Sızma testi sürecini planlayabilir.

  • Karmaşık çıktıların özetini oluşturabilir.

  • Rapor hazırlama sürecine yardımcı olabilir.


PentestGPT'nin Çalışma Mantığı

PentestGPT genellikle aşağıdaki iş akışını izler:

Hedef Belirleme
Bilgi Toplama
Çıktı Analizi
Yapay Zekâ Değerlendirmesi
Sonraki Adımların Önerilmesi
Sızma Testi Sürecinin Devamı

Örneğin kullanıcı:

nmap -sC -sV 10.10.10.10

komutunun çıktısını PentestGPT'ye verir.

Araç şu tür yorumlar üretebilir:

  • Açık servisleri tanımlar.

  • Potansiyel zafiyetleri belirtir.

  • Kullanılabilecek exploitleri önerir.

  • Yetki yükseltme senaryoları sunar.


Mimari Yapısı

PentestGPT temel olarak üç bölümden oluşur:

1. Görev Yöneticisi (Task Manager)

Pentest sürecinin genel akışını yönetir.

Örneğin:

1. Port taraması yap.
2. Web dizinlerini keşfet.
3. SMB paylaşımını incele.
4. Yetki yükseltme dene.

2. Hafıza Modülü (Memory Module)

Önceki adımları unutmaz.

Örneğin:

22/tcp -> SSH
80/tcp -> Apache
445/tcp -> SMB

Bir sonraki aşamada bu bilgileri kullanabilir.


3. Yorumlama Motoru

LLM tarafından desteklenir.

Örneğin:

  • GPT modelleri

  • Yerel LLM modelleri

  • API tabanlı modeller


PentestGPT Kurulumu

Gereksinimler

  • Linux (tercihen Kali Linux)

  • Python 3.9+

  • Git

  • API anahtarı


Depoyu Klonlama

git clone https://github.com/GreyDGL/PentestGPT.git
cd PentestGPT

Sanal Ortam Oluşturma

python3 -m venv venv

Aktifleştirme:

source venv/bin/activate

Gerekli Paketleri Kurma

pip install -r requirements.txt

Yapılandırma Dosyasını Düzenleme

Örnek:

cp .env.example .env
nano .env

Dosya içeriği:

OPENAI_API_KEY=API_ANAHTARINIZ

Aracı Başlatma

python3 main.py

Kullanım Senaryoları

Senaryo 1: Nmap Sonucunu Analiz Ettirme

Örnek Nmap çıktısı:

PORT     STATE     SERVICE     VERSION
22/tcp     open     ssh     OpenSSH 8.2
80/tcp     open     http     Apache 2.4.41
445/tcp     open     smb     Samba 4.13

PentestGPT'ye:

Analyze the following scan result.

şeklinde gönderilebilir.

Olası analiz:

- SMB enumeration önerilir.
- Web dizin taraması yapılabilir.
- SSH brute-force düşünülmemelidir.
- Apache sürümü incelenmelidir.

Senaryo 2: Web Pentest Yardımı

Örnek:

Nikto çıktısını analiz et.

PentestGPT:

- Directory traversal olasılığı
- Eski PHP sürümü
- HTTP başlık eksiklikleri

tespitlerini yapabilir.


Senaryo 3: Yetki Yükseltme

Kullanıcı:

sudo -l

çıktısını yapay zekâya verir.

Araç:

- GTFOBins kontrol et.
- SUID dosyalarını incele.
- PATH hijacking denenebilir.

önerilerinde bulunabilir.


Örnek İş Akışı

1. Keşif

nmap -sC -sV -A 10.10.10.5

2. Sonuçları PentestGPT'ye Ver

Analyze this output and suggest next steps.

3. Dizin Keşfi

gobuster dir -u http://10.10.10.5 -w wordlist.txt

4. Sonuçları Tekrar Analiz Ettir

I found /admin and /backup directories.

5. Yeni Adımların Planlanması

PentestGPT:

- /backup klasörünü incele.
- Kimlik doğrulama mekanizmasını test et.
- Yedek dosyaları analiz et.

PentestGPT ile Kullanılabilecek Araçlar

AraçAmaç
Nmap                    Ağ keşfi
Gobuster                    Dizin keşfi
FFUF                    Fuzzing
Nikto                    Web taraması
Burp Suite                    Web güvenliği
SQLMap                    SQL Injection testi
Metasploit                    Exploitation
LinPEAS                    Linux privilege escalation
WinPEAS                    Windows privilege escalation

İlk kullanımda şu araç adları özellikle incelenebilir:

  • Nmap

  • Gobuster

  • Burp Suite

  • Metasploit Framework

  • SQLMap


Avantajları

✅ Büyük çıktıları hızlı analiz eder.

✅ Pentest sürecini organize eder.

✅ Yeni başlayanlara rehberlik eder.

✅ Zafiyetleri yorumlamayı kolaylaştırır.

✅ Raporlama sürecini hızlandırır.

✅ Karmaşık güvenlik verilerini özetler.


Dezavantajları

❌ İnsan uzmanın yerini tutamaz.

❌ Yanlış öneriler verebilir.

❌ Halüsinasyon (uydurma bilgi) üretebilir.

❌ API maliyetleri oluşabilir.

❌ Hassas verilerin üçüncü taraf sistemlere gönderilmesi gizlilik riski oluşturabilir.


Güvenlik ve Etik Hususlar

PentestGPT yalnızca:

  • Kendi laboratuvar ortamınızda,

  • Yazılı izin aldığınız sistemlerde,

  • Eğitim amaçlı platformlarda

kullanılmalıdır.

Örnek yasal eğitim platformları:

  • Hack The Box

  • TryHackMe

  • PortSwigger

İzinsiz sistemlerde gerçekleştirilen faaliyetler hukuki sonuçlar doğurabilir.


Sonuç

PentestGPT, modern sızma testi süreçlerinde yapay zekâ destekli güçlü bir yardımcıdır. Özellikle keşif sonuçlarının yorumlanması, sonraki adımların planlanması ve raporlama süreçlerinde önemli kolaylık sağlar. Ancak elde edilen önerilerin mutlaka bir güvenlik uzmanı tarafından doğrulanması gerekir.

Yorumlar

Bu blogdaki popüler yayınlar

Android Telefon/Tablet Ekranını Pardus ETAP 23 Yüklü Akıllı Tahtaya Yansıtma

Pardus Etap 23’de Unutulmuş Etap Yetkili Parolasını Sıfırlama

Pardus Etap 23 Yazıcı Kurulumu