yazilim-guvenligi-ve-analizi-sonarqube-sunum-odevi
● Java ★ 2 ⑂ 0 Last updated: November 27, 2025
SonarQube Sunum Projesi
Yazılım Güvenliği ve Analizi dersi için hazırlanmış SonarQube demo ve sunum projesi.
📁 Proje Yapısı
sonarqube-presentation/
├── demo-projects/ # Örnek hatalı kodlar
│ ├── python-app.py # Python güvenlik açıkları
│ ├── CSharpApp.cs # C# güvenlik açıkları
│ └── javascript-app.js # JavaScript güvenlik açıkları
├── docker-compose.yml # Lokal SonarQube kurulumu
└── Sunucu Kurulumu.md # K8s production kurulum dokümanı
🚀 Hızlı Başlangıç
Lokal Docker Kurulumu
docker-compose up -d
Erişim:
- URL: http://localhost:9000
- Kullanıcı: admin
- Şifre: admin
Production Kubernetes Kurulumu
Detaylı kurulum adımları için: Sunucu Kurulumu.md
📊 Demo Projeler
demo-projects/ klasöründe kasıtlı güvenlik açıkları içeren örnek kodlar bulunmaktadır:
- Python - SQL injection, hardcoded secrets, code smells
- C# - Güvenlik açıkları, null reference, weak crypto
- JavaScript - eval(), command injection, callback hell
Bu kodlar SonarQube'da çeşitli bulguları göstermek için hazırlanmıştır.
🔍 SonarQube Analizi
GitHub Actions ile
GitHub repository'nize SonarQube analizi eklemek için:
- SonarQube'da proje token'ı oluşturun
- GitHub Secrets'a
SONAR_TOKENekleyin .github/workflows/sonarqube.ymloluşturun
Manuel Analiz
docker run --rm \
--network sonarqube-presentation_sonar_net \
-v "$(pwd):/usr/src" \
-w /usr/src \
sonarsource/sonar-scanner-cli \
-Dsonar.projectKey=demo-project \
-Dsonar.sources=. \
-Dsonar.host.url=http://sonarqube:9000 \
-Dsonar.login=YOUR_TOKEN
🎓 Sunum İçeriği
- SonarQube Nedir? - Statik kod analizi ve güvenlik taraması
- Kurulum - Docker ve Kubernetes seçenekleri
- Canlı Demo - Örnek kodların analizi
- Güvenlik Bulguları - Critical, Major, Minor kategorileri
- CI/CD Entegrasyonu - GitHub Actions örneği
📝 Notlar
- Lokal kurulum demo/test içindir
- Production için Kubernetes kurulumunu kullanın
- Demo kodlar kasıtlı hatalar içerir, production'da kullanmayın
📄 Lisans
MIT
cagatayuresin