salvacybersec c62478937e dockerized
2025-11-11 04:30:25 +03:00
2025-11-11 04:30:25 +03:00
2025-11-10 20:01:41 +03:00
2025-11-11 04:30:25 +03:00
2025-11-10 20:01:41 +03:00
2025-11-10 20:01:41 +03:00
2025-11-11 04:30:25 +03:00
2025-11-11 04:30:25 +03:00
2025-11-10 20:01:41 +03:00
2025-11-10 20:01:41 +03:00
2025-11-10 20:01:41 +03:00
2025-11-11 04:30:25 +03:00
2025-11-11 04:30:25 +03:00
2025-11-11 04:30:25 +03:00
2025-11-11 04:30:25 +03:00
2025-11-11 04:30:25 +03:00
2025-11-11 04:30:25 +03:00

Oltalama Test Yönetim Paneli

Güvenlik farkındalık eğitimleri için basit ve etkili phishing test yönetim sistemi.

Özellikler

  • 🏢 Şirket Bazlı Yönetim - Her şirket için ayrı tracking
  • 📧 Gmail Entegrasyonu - App Password ile kolay mail gönderimi
  • 💬 Telegram Bildirimleri - Gerçek zamanlı tıklama bildirimleri
  • 🤖 Ollama AI Entegrasyonu - AI ile otomatik mail şablonu oluşturma
  • 📊 Detaylı İstatistikler - IP, konum, cihaz bilgileri
  • 💾 SQLite - Tek dosya, kolay yedekleme
  • 🎨 Modern UI - React ile responsive admin paneli
  • ✉️ Mail Şablonları - HTML editör, önizleme ve test gönderimi

🚀 Hızlı Başlangıç

Backend TAMAMLANDI

cd backend
npm install  # ✅ Yapıldı
npm run db:migrate  # ✅ Yapıldı
npm run db:seed  # ✅ Yapıldı
npm run dev  # ✅ Çalışıyor (background)

API: http://localhost:3000
Default Admin: Kurulum sırasında oluşturulur

Frontend TAMAMLANDI

cd frontend
npm install  # ✅ Yapıldı
npm run dev  # ✅ Çalışıyor (background)

UI: http://localhost:5173
Default Admin: Kurulum sırasında oluşturulur

📂 Proje Yapısı

oltalama/
├── backend/              ✅ TAMAMLANDI (100%)
│   ├── src/
│   │   ├── controllers/  ✅ 7 dosya (auth, company, token, vb.)
│   │   ├── models/       ✅ 6 model + ilişkiler
│   │   ├── routes/       ✅ 7 route dosyası
│   │   ├── services/     ✅ Mail, Telegram, Token, Ollama AI
│   │   ├── utils/        ✅ GeoIP, User-Agent, Token Generator
│   │   └── app.js        ✅
│   └── database/         ✅ oltalama.db (3 şirket, 2 şablon)
├── frontend/             ✅ TAMAMLANDI (100%)
│   ├── src/
│   │   ├── services/     ✅ 5 servis (auth, company, token, stats, template)
│   │   ├── context/      ✅ Auth context
│   │   ├── pages/        ✅ 6 sayfa (Login, Dashboard, Companies, Tokens, Templates, Settings)
│   │   └── components/   ✅ Layout + Navigation
└── devpan.md             ✅ Detaylı plan

Backend Tamamlandı (Faz 1-7)

1 Authentication

  • Session-based auth
  • Login/Logout endpoints
  • bcrypt password hashing
  • Auth middleware

2 Company Management

  • CRUD operations
  • Company stats (auto-update)
  • Company tokens listing
  • Validators & routes

3 Token Management

  • Unique token generation (crypto)
  • Create with/without mail
  • Company stats auto-update
  • Click history

4 Tracking Endpoint

  • /t/:token public endpoint
  • IP address capture
  • GeoIP location (geoip-lite)
  • User-Agent parsing
  • Landing page redirect

5 Telegram & Mail

  • Telegram real-time notifications
  • Gmail + Nodemailer integration
  • Handlebars template rendering
  • Test buttons in settings

6 Templates & Settings

  • Mail templates (2 seeded)
  • Template preview
  • Settings CRUD
  • Gmail/Telegram config

7 Stats & Analytics

  • Dashboard stats
  • Recent clicks
  • Company-based stats
  • Click logs with full details

📡 API Endpoints (35+)

Backend API çalışıyor: http://localhost:3000

✅ /api/auth/*           - 4 endpoints
✅ /api/companies/*      - 7 endpoints  
✅ /api/tokens/*         - 8 endpoints
✅ /api/templates/*      - 3 endpoints
✅ /api/settings/*       - 5 endpoints
✅ /api/stats/*          - 3 endpoints
✅ /t/:token             - Public tracking
✅ /health               - Health check

🗄️ Database (SQLite)

Lokasyon: backend/database/oltalama.db

6 Tablo - Tamamen İlişkili:

  • companies (3 örnek: Türk Telekom, İş Bankası, PTT)
  • tracking_tokens (company_id FK)
  • click_logs (IP, GeoIP, User-Agent)
  • mail_templates (2 şablon: Banka, E-Devlet)
  • settings (Gmail, Telegram)
  • admin_user (admin/admin123)

🧪 Backend Test

# Health check
curl http://localhost:3000/health

# Login
curl -X POST http://localhost:3000/api/auth/login \
  -H "Content-Type: application/json" \
  -d '{"username":"admin","password":"admin123"}'

# Get companies
curl http://localhost:3000/api/companies

# Get dashboard stats
curl http://localhost:3000/api/stats/dashboard

📊 Durum

Backend: 100% Tamamlandı (37 dosya)
Frontend: 100% Tamamlandı (15 dosya)
Dokümantasyon: 4 dosya (README.md, devpan.md, KULLANIM.md, QUICKSTART.md)
Toplam Kaynak Kod: 58 dosya
Toplam Satır: 6677+ satır
Toplam İlerleme: 100% Production Ready

Tamamlanan Frontend Sayfaları

Core Pages:

  • Login (Session-based auth)
  • Dashboard (Stats, recent clicks)
  • Companies (CRUD, grid view + detail)
  • Tokens (Create & send, detail & history)
  • Mail Şablonları (HTML editör + önizleme)
  • Settings (Gmail, Telegram config)

Components:

  • Layout (Sidebar, header, mobile responsive)
  • Auth Context (Global auth state)
  • API Services (5 services)

🚀 Proje Hazır!

Sistem kullanıma hazır. Gmail ve Telegram ayarlarını yaparak phishing testlerinizi başlatabilirsiniz.

🚀 Sunucu Kurulumu (Production)

Otomatik Kurulum

cd /opt/oltalama
sudo ./deploy.sh

Manuel Kurulum

Detaylı sunucu kurulum talimatları için:

cat DEPLOYMENT.md

Önemli dosyalar:

  • DEPLOYMENT.md - Detaylı sunucu kurulum kılavuzu
  • deploy.sh - Otomatik kurulum scripti
  • systemd/ - Systemd servis dosyaları
  • nginx/ - Nginx konfigürasyon örneği

Portlar:

  • Backend: 3000 (değiştirilebilir)
  • Frontend: 4173 (değiştirilebilir)

Domain Seçenekleri:

  • Tek Domain (önerilen): yourdomain.com - Path-based routing
  • İki Domain: api.yourdomain.com + panel.yourdomain.com - CORS aktif

Process Manager:

  • PM2 (önerilen - otomatik restart, monitoring)
  • Systemd (native Linux service)

Reverse Proxy:

  • Nginx Proxy Manager (önerilen - GUI)
  • Nginx (manuel konfig: nginx/oltalama.conf)

🛠️ Yardımcı Scriptler

Admin Kullanıcı Yönetimi

# Yeni admin kullanıcısı oluştur
node scripts/create-admin.js

# Admin şifresini değiştir
node scripts/change-password.js

Özellikler:

  • İnteraktif kullanıcı oluşturma
  • Şifre güvenlik validasyonu (min 8 karakter, harf+rakam)
  • Benzersiz kullanıcı adı kontrolü
  • Güvenli bcrypt hash'leme

📚 Dokümantasyon

  • Ana Doküman: README.md (bu dosya)
  • Sunucu Kurulumu: DEPLOYMENT.md 🚀 (Production kurulum)
  • Ollama AI Entegrasyonu: OLLAMA_SETUP.md 🤖 (AI mail şablon oluşturma)
  • Domain Yapılandırma: docs/DOMAIN_SETUP.md 🌐 (Tek/İki domain)
  • Nginx Proxy Manager: docs/NGINX_PROXY_MANAGER.md 🔄 (Reverse proxy)
  • Güvenlik Rehberi: SECURITY.md 🔒 (Güvenlik en iyi uygulamaları)
  • Hızlı Başlangıç: QUICKSTART.md (5 dakika)
  • Kullanım Kılavuzu: KULLANIM.md 📖 (Detaylı)
  • Development Plan: devpan.md 🏗️ (Teknik detay)
  • Backend API: backend/README.md
  • Frontend Guide: frontend/README.md
  • Gmail Setup: devpan.md içinde
  • Telegram Setup: devpan.md içinde

⚠️ Güvenlik Uyarısı

Bu sistem yalnızca yasal ve etik phishing testleri için tasarlanmıştır. Kötü niyetli kullanım yasaktır.


Versiyon: 1.0.0
Durum: Production Ready
Son Güncelleme: Backend ve Frontend tamamlandı - Sistem kullanıma hazır!

Description
No description provided
Readme 687 KiB
Languages
JavaScript 87.9%
Shell 9.2%
HTML 1.9%
Dockerfile 0.6%
CSS 0.4%