Bu proje, web sitelerindeki güvenlik açıklarını otomatik olarak tespit etmek için tasarlanmış kapsamlı bir güvenlik tarayıcısıdır. Modern web teknolojileri kullanılarak geliştiri4. PostgreSQL bağlantı hatası: PostgreSQL şifresini kontrol edinmiş olup, hem frontend hem de backend bileşenlerinden oluşmaktadır.
- XSS Tarayıcısı: Cross-Site Scripting güvenlik açıklarını tespit eder
- Nmap Tarayıcısı: Port tarama ve servis tespiti
- Nuclei Tarayıcısı: Şablon tabanlı güvenlik açığı taraması
- OWASP ZAP Tarayıcısı: Otomatik web uygulama güvenliği taraması
- SQLMap Tarayıcısı: SQL injection güvenlik açıklarını tespit eder
- Nikto Tarayıcısı: Web sunucu güvenlik açıkları taraması
- Shodan Tarayıcısı: İnternet cihazları arama ve analiz
- Modern ve responsive tasarım (Next.js + TypeScript)
- Gerçek zamanlı tarama ilerleme takibi
- Güvenlik açıklarının detaylı raporlaması
- Dashboard ve analitik görünümler
- Çoklu tarama türü desteği (Hızlı, Standart, Tam)
- Python tabanlı mikro servis mimarisi
- MSSQL veritabanı desteği
- Redis ile önbellekleme ve kuyruk yönetimi
- Asenkron tarama işlemleri
- RESTful API endpoints
- Next.js 14 - React framework
- TypeScript - Tip güvenliği
- Tailwind CSS - Stil sistemi
- Framer Motion - Animasyonlar
- Zustand - State yönetimi
- React Query - Veri fetching
- Recharts - Grafikler ve analitikler
- Python 3.11 - Ana programlama dili
- FastAPI - REST API framework
- SQLAlchemy - ORM ve veritabanı işlemleri
- PostgreSQL - Veritabanı
- Celery - Asenkron görev kuyruğu
- Redis - Önbellekleme ve mesaj kuyruğu
- Docker & Docker Compose - Konteynerleştirme
- Nginx - Reverse proxy (opsiyonel)
- Docker ve Docker Compose
- En az 4GB RAM
- 2GB boş disk alanı
- İnternet bağlantısı (scanner araçları için)
Aşağıdaki güvenlik tarama araçlarının sistemde kurulu olması gerekir:
- Nmap - Port tarama aracı
- Nuclei - Şablon tabanlı tarayıcı
- OWASP ZAP - Web uygulama güvenlik tarayıcısı
- SQLMap - SQL injection testi
- Nikto - Web sunucu tarayıcısı
- Shodan CLI - İnternet cihazları arama
aiohttp>=3.8.0
beautifulsoup4>=4.11.0
sqlalchemy>=1.4.0
fastapi>=0.100.0
uvicorn>=0.20.0
celery>=5.3.0
redis>=4.5.0
psycopg2-binary==2.9.9
pydantic>=2.0.0
python-multipart>=0.0.6
git clone https://github.com/Serkangrcndev/Web-Security-Scanner.git
cd Web-Security-Scanner# Ubuntu/Debian için
sudo apt update
sudo apt install nmap nikto sqlmap
# Nuclei kurulumu
go install -v github.com/projectdiscovery/nuclei/v3/cmd/nuclei@latest
# OWASP ZAP kurulumu
wget https://github.com/zaproxy/zaproxy/releases/download/v2.12.0/ZAP_2.12.0_Linux.tar.gz
tar -xzf ZAP_2.12.0_Linux.tar.gz
# Shodan CLI kurulumu
pip install shodan# Tüm servisleri başlat
docker-compose up -d
# Logları takip et
docker-compose logs -f# Frontend: http://localhost:3000
# Backend API: http://localhost:8000
# PostgreSQL: localhost:5432
# Redis: localhost:6379İlk çalıştırmada PostgreSQL tabloları otomatik olarak oluşturulacaktır. Varsayılan PostgreSQL bilgileri:
- Database: guardmesh_db
- User: guardmesh_user
- Password: secure_password_2024
- Port: 5432
- Web tarayıcıda
http://localhost:3000adresine gidin - Ana sayfada hedef URL'yi girin
- Tarama türünü seçin:
- Hızlı Tarama: Temel kontroller (5-10 dakika)
- Standart Tarama: Kapsamlı analiz (15-30 dakika)
- Tam Tarama: Tüm testler (30-60 dakika)
- "Taramayı Başlat" butonuna tıklayın
- Gerçek zamanlı ilerlemeyi takip edin
- Tarama tamamlandığında sonuçları görüntüleyin
# Tarama başlatma
curl -X POST http://localhost:8000/scan/start \
-H "Content-Type: application/json" \
-d '{"url": "https://example.com", "scan_type": "quick"}'
# Tarama durumunu kontrol etme
curl http://localhost:8000/scan/status/{scan_id}
# Tarama sonuçlarını alma
curl http://localhost:8000/scan/results/{scan_id}# Backend için (.env dosyası)
DATABASE_URL=postgresql://guardmesh_user:secure_password_2024@guardmesh-postgres:5432/guardmesh_db
REDIS_URL=redis://guardmesh-redis:6379
SECRET_KEY=guardmesh-secret-key-2024
DEBUG=True
# Frontend için (.env.local dosyası)
NEXT_PUBLIC_API_URL=http://localhost:8000scanners/ klasöründeki her scanner için yapılandırma dosyaları oluşturabilirsiniz:
# Örnek: xss_scanner_config.py
XSS_CONFIG = {
"timeout": 30,
"max_payloads": 100,
"custom_payloads": ["<script>alert('test')</script>"]
}- Güvenlik açıklarının severity seviyesine göre sınıflandırılması
- CVSS skorlaması
- Tarama loglarının detaylı kayıt edilmesi
- Dashboard üzerinden istatistikler ve grafikler
- PDF/JSON formatında rapor dışa aktarımı
- Bu araç sadece yetkili sistemlerde kullanılmalıdır
- Tarama işlemleri hedef sistem üzerinde etki yaratabilir
- Üretim ortamlarında dikkatli kullanılmalıdır
- Tarama sonuçları gizli tutulmalıdır
- Docker servisleri başlamıyor: Docker ve Docker Compose sürümlerini kontrol edin
- Scanner araçları bulunamıyor: Sistem PATH'inde olduğundan emin olun
- Veritabanı bağlantı hatası: MSSQL şifresini kontrol edin
- Frontend yüklenmiyor: Node.js sürümünü kontrol edin (18.0.0+)
# Backend logları
docker-compose logs guardmesh-backend
# Frontend logları
docker-compose logs guardmesh-frontend
# Tüm loglar
docker-compose logs- Fork edin
- Feature branch oluşturun (
git checkout -b feature/amazing-feature) - Değişikliklerinizi commit edin (
git commit -m 'Add amazing feature') - Branch'inizi push edin (
git push origin feature/amazing-feature) - Pull Request oluşturun
Uyarı: Bu araç güvenlik araştırması ve penetration testing için tasarlanmıştır. Yasal olmayan kullanımlar sorumluluğunuzdadır.