API-Sentinel 3. parti API'leri izlerken kendisi de bir saldırı yüzeyi sunar — credential'lar, web dashboard, REST API, plugin runtime. Aşağıdaki disclosure süreci ile güvenli tutmak istiyoruz.
- Auth bypass / yetki yükseltme açıkları (
AUTH_ENABLED=trueiken bypass) - Credential storage'ında plaintext leak (Fernet şifreleme bozuk)
- Plugin loading'de path traversal / arbitrary code execution
- Schema fetcher'da SSRF (Server-Side Request Forgery)
- Web dashboard'da XSS, CSRF
- REST API'de injection (SQL, command, template)
- Container escape / host file access
- Default config ile çalıştırınca açık olan kontroller
Public issue açmayın. Önce private kanaldan bildirim:
- GitHub Security Advisory (önerilen, tek tıklama): https://github.com/halilibrahimd27/api-sentinel/security/advisories/new
- Veya repo sahibi @halilibrahimd27'a GitHub DM
- 24-72 saat: ilk yanıt + triage
- 7 gün: severity tayini ve aksiyon planı
- 30 gün: fix release veya kabul edilen mitigation
Kritik açıklar (RCE, auth bypass) için hızlandırılmış süreç.
Production deployment için ana adımlar:
# .env — production
SECRET_KEY=<openssl rand -base64 32> # Fernet key + auth secret
AUTH_ENABLED=true
ADMIN_PASSWORD=<güçlü, unique parola>
ALERT_COOLDOWN_SECONDS=600
LOG_LEVEL=WARNING# docker-compose ports
schema-monitor:
ports:
- "127.0.0.1:8080:8080" # localhost-only, reverse proxy önde- Reverse proxy (Caddy/Nginx) + HTTPS + IP whitelist
- Cloud secrets (Vault / AWS Secrets Manager) ile credential yönetimi
- Düzenli
pip install --upgrade -r requirements.txtile dep'leri güncel tut
Plugin'ler runtime'da Python kodu olarak yüklendiği için plugin trust = repo trust.
- Sadece güvendiğiniz kaynaklardan plugin yükleyin
- 3rd party plugin'leri okumadan deploy etmeyin
alerts/,auth/,store/dizinlerine yazma izni dikkatli verin
Bildirim yapanlar — istemezlerse anonim — README'nin "Acknowledgments" bölümünde anılır.