beafn28
  • 👩‍💻¡Bienvenidos a mi HackBook!
  • WRITEUPS
    • DockerLabs
      • BuscaLove
      • Amor
      • Injection
      • BorazuwarahCTF
      • Trust
      • Picadilly
      • Pinguinazo
      • AguaDeMayo
      • BreakMySSH
      • NodeClimb
      • Move
      • Los 40 ladrones
      • Vulnvault
      • Pntopntobarra
      • Library
      • Escolares
      • ConsoleLog
      • Vacaciones
      • Obsession
      • FirstHacking
      • SecretJenkins
      • HedgeHog
      • AnonymousPingu
      • ChocolateLovers
      • Dockerlabs
      • Pressenter
      • Candy
      • JenkHack
      • ShowTime
      • Upload
      • Verdejo
      • WalkingCMS
      • WhereIsMyWebShell
      • Whoiam
      • Winterfell
      • -Pn
      • Psycho
      • Mirame
      • Backend
      • Paradise
      • Balurero
      • Allien
      • Vendetta
      • FindYourStyle
      • Stellarjwt
      • File
      • Redirection (Por completar)
      • Extraviado
      • Patriaquerida
      • Tproot
      • Internship
      • Walking Dead
      • Bicho (Por completar)
      • BaluFood
    • TryHackMe
      • Brooklyn Nine Nine
      • Blue
    • HackTheBox
      • Nibbles
      • Starting Point
        • Meow
        • Fawn
        • Dancing
        • Redeemer
        • Appointment
        • Sequel
        • Crocodile
        • Responder
        • Three
        • Archetype
        • Oopsie
        • Vaccine
        • Unified
        • Explosion
        • Preignition
        • Mongod
        • Synced
        • Ignition
        • Bike
        • Funnel
        • Pennyworth
        • Tactics
        • Included
        • Markup
        • Base
      • BoardLight
      • Cap
      • TwoMillion
      • Lame
      • Legacy
      • Devel
      • Beep
      • Optimum
      • Arctic
      • Jerry
      • Sau
      • GoodGames
      • Challenges
        • Emdee five for life
        • MarketDump
      • Intro to Dante
      • Heist
      • OpenAdmin
      • Nest
      • Curling
    • Vulnhub
      • Wakanda
      • Election (Por terminar)
    • The Hacker Labs
      • Avengers
      • Can you hack me?
      • Fruits
      • Microchoft
      • TickTakRoot
      • Grillo
      • Mortadela
      • Zapas Guapas
      • Sal y Azúcar
      • Cyberpunk
      • Papafrita
      • PizzaHot
      • Decryptor
      • Academy
      • Cocido andaluz
      • Find Me
      • Quokka
      • Campana Feliz
      • Bocata de Calamares
      • Casa Paco
      • Torrijas
    • Vulnyx
      • Fuser
      • Blogguer
      • Lower
      • Exec
      • Diff3r3ntS3c
      • Hacking Station
      • Experience
      • Eternal
      • Agent
      • Infected
      • Admin
      • War
      • Hosting
    • OverTheWire
      • Natas
        • Nivel 0-5
        • Nivel 6-11
        • Nivel 12-17
        • Nivel 18-23
        • Nivel 24-29
        • Nivel 30-34
      • Leviathan
        • Nivel 0-7
      • Krypton
      • Bandit
        • Nivel 0-10
        • Nivel 11-20
        • Nivel 21-30
        • Nivel 31-34
    • Proving Ground Play
      • Monitoring
      • DriftingBlues6
  • APUNTES HACKING
    • Pentesting Basics
      • Web Enumeration
      • Public Exploits
      • Types of Shells
      • Privilege Escalation
      • Transfering Files
    • Network Enumeration with NMAP
      • Host Discovery
      • Host and Port Scanning
      • Saving the Results
      • Service Enumeration
      • Nmap Scripting Engine
      • Performance
      • Firewall and IDS/IPS Evasion
    • Footprinting
      • Domain Information
      • Cloud Resources
      • FTP
      • SMB
      • NFS
      • DNS
      • SMTP
      • IMAP/POP3
      • SNMP
      • MySQL
      • MSSQL
      • Oracle TNS
      • IPMI
      • Linux Remote Management Protocols
      • Windows Remote Management Protocols
    • Information Gathering - Web Edition
      • WHOIS
      • DNS
        • Digging DNS
      • Subdomains
        • Subdomain Bruteforcing
        • DNS Zone Transfers
        • Virtual Hosts
        • Certificate Transparency Logs
      • Fingerprinting
      • Crawling
        • robots.txt
        • Well-Known URIs
        • Creepy Crawlies
      • Search Engine Discovery
      • Web Archives
      • Automating Recon
    • Vulnerability Assessment
      • Vulnerability Assessment
      • Assessment Standards
      • Common Vulnerability Scoring System (CVSS)
      • Common Vulnerabilities and Exposures (CVE)
    • Nessus
      • Getting Started with Nessus
      • Nessus Scan
      • Advanced Settings
      • Working with Nessus Scan Output
      • Scanning Issues
    • OpenVAS
      • OpenVAS Scan
      • Exporting The Results
    • Reporting
    • File Transfers
      • Windows File Transfer Methods
      • Linux File Transfer Methods
      • Transferring Files with Code
      • Miscellaneous File Transfer Methods
      • Protected File Transfers
      • Catching Files over HTTP/S
      • Living off The Land
      • Detection
      • Evading Detection
    • Shells & Payloads
      • Anatomy of a Shell
      • Bind Shells
      • Reverse Shells
      • Payloads
        • Automating Payloads & Delivery with Metasploit
        • Crafting Payloads with MSFvenom
        • Infiltrating Windows
        • Infiltrating Unix/Linux
        • Spawning Interactive Shells
      • Introduction to Web Shells
        • Laudanum, One Webshell to Rule Them All
        • Antak Webshell
        • PHP Web Shells
      • Detection & Prevention
    • Metasploit
      • MSFConsole
      • Modules
      • Targets
      • Payloads
      • Encoders
      • Databases
      • Plugins
      • Sessions
      • Meterpreter
      • Writing and Importing Modules
      • Introduction to MSFVenom
      • Firewall and IDS/IPS Evasion
    • Password Attacks
      • John The Ripper
      • Network Services
      • Password Mutations
      • Password Reuse / Default Passwords
      • Attacking SAM
      • Attacking LSASS
      • Attacking Active Directory & NTDS.dit
      • Credential Hunting in Windows
      • Credential Hunting in Linux
      • Passwd, Shadow & Opasswd
      • Pass the Hash (PtH)
  • WEB SECURITY
    • Path Traversal
    • SQL Injection
    • Control de Acceso
  • Mis CTFs
    • Pequeñas Mentirosas
    • CryptoLabyrinth
    • Elevator
    • Facultad
  • PREPARAR EJPTv2
    • Máquinas
    • Curso de Mario
      • Presentación + Preparación de Laboratorios
      • Conceptos Básicos de Hacking
      • Explotación de Vulnerabilidades y Ataques de Fuerza Bruta
      • Explotación vulnerabilidades Web
      • Enumeración y Explotación del Protócolo SMB, SAMBA, SNMP, IIS y RDP
      • Hacking Entornos CMS
      • Escalada de Privilegios + Post Explotación
      • Pivoting con Metasploit
  • Preparar OSCP
    • Información
    • Máquinas
      • Linux
        • Fácil
        • Medio
        • Difícil
      • Windows
        • Fácil
        • Medio
        • Difícil
Powered by GitBook
On this page
  • 🔍 RECONOCIMIENTO
  • 🔎 EXPLORACIÓN
  • 🚀 EXPLOTACIÓN
  • 🔐 PRIVILEGIOS

Was this helpful?

  1. WRITEUPS
  2. DockerLabs

SecretJenkins

✍️ Autor: El Pingüino de Mario🔍 Dificultad: Fácil 📅 Fecha de creación: 11/05/2024

PreviousFirstHackingNextHedgeHog

Last updated 8 months ago

Was this helpful?

🔍 RECONOCIMIENTO

En primer lugar, tras conectarnos a la máquina, utilizamos el comando:

ping -c 1 172.17.0.2

para verificar la conectividad de red.

A continuación, realizamos el comando:

nmap -sVC -p- -n --min-rate 5000 172.17.0.2

para realizar un escaneo de puertos y servicios detallado en la dirección IP.

Como podemos observar durante el escaneo que el puerto 22 perteneciente al servicio SSH y el puerto 8080 perteneciente al servicio HTTP están abiertos por lo que a continuación se indagará más.

🔎 EXPLORACIÓN

Se utiliza el comando:

sudo nmap -sCV -p22,80 -v 172.17.0.2

para que nos proporcione más información sobre esos puertos específicamente.

Seguimos indagando más sobre los puertos y ahora indagamos sobre el servicio HTTP. Se ingresó la dirección IP en el navegador lo que llevó a que la página web sea un panel de Login.

Revisando el código fuente no encontramos nada relevante.

Ahora buscaremos directorios con la herramienta Gobuster a través de:

gobuster dir -u http://172.17.0.2:8080/ -w /usr/share/wordlists/dirbuster/directory-list-lowercase-2.3-medium.txt

Podemos probar accediendo a ciertos recursos que nos proporcionan respuestas útiles. Por ejemplo, en la sección /people podemos observar tanto la versión en la parte inferior como varias opciones de botones.

Al hacer clic en el botón people, se muestra información sobre dos posibles usuarios.

Probamos con credenciales genéricas para ambos usuarios, pero no pudimos acceder. Dado que tenemos la versión del sistema, buscamos algún exploit que podamos utilizar. Encontramos varias opciones en Google.

python3 script.py -u http://172.17.0.2:8080 -p /etc/passwd

Sabemos que tenemos la capacidad de leer archivos. En este caso, buscaremos las credenciales de los usuarios de Jenkins leyendo el archivo /var/jenkins_home/users/users.xml. Este archivo contiene información sobre los usuarios creados, incluidas las credenciales, permisos y roles asociados. Al ejecutar el comando para leer este archivo, podremos observar el ID de los usuarios.

Una vez que tenemos el identificador del usuario, podemos aprovecharlo para acceder a su archivo de configuración, donde se encuentra su contraseña en formato hash. El archivo está ubicado en el directorio /var/jenkins_home/users/admin_4715893701316860439/config.xml. Al ejecutar el exploit, conseguimos obtener el passwordHash.

Para romper el hash, guardamos el valor en un archivo llamado hash. Intentamos obtener la contraseña, pero no tuvimos éxito, ya que no se encuentra en el diccionario utilizado.

Con john no se puede por lo que probamos por SSH con el usuario bobby.

🚀 EXPLOTACIÓN

Con la información obtenida anteriormente, realizamos el comando:

hydra -l bobby -P /usr/share/wordlists/rockyou.txt ssh://172.17.0.2 -t 5

que utiliza la herramienta Hydra para realizar un ataque de fuerza bruta contra el servicio SSH de una máquina con la IP 172.17.0.2.

Al realizar el ataque de fuerza bruta, hemos descubierto la contraseña de russoski. Sabiendo esto, nos conectamos a través de SSH al usuario con el comando:

ssh bobby@172.17.0.2

🔐 PRIVILEGIOS

Al estar dentro y ejecutar:

whoami

aún no somos root, por lo que hacemos:

sudo -l

para ver si hay algo para explotar.

Antes de ejecutar el comando completo, es necesario agregar la opción -u pinguinito, ya que los permisos están asignados a ese usuario. Si ingresamos el comando correctamente, podremos confirmar que hemos cambiado al usuario pinguinito.

sudo -u pinguinito python3 -c 'import os; os.system("/bin/sh")'

Al inspeccionar el script, verificamos que somos los propietarios del archivo, y además, este tiene permisos de lectura y ejecución. Al abrir el archivo, descubrimos que su función principal es copiar /opt/script.py al directorio /tmp bajo el nombre script_backup.py, seguido de un mensaje que confirma la copia exitosa.

Dado que somos los propietarios, intentamos agregar permisos de escritura al script. Este cambio se realizó correctamente, lo que nos brinda la oportunidad de aprovecharlo para realizar modificaciones adicionales.

chmod +w /opt/script.py

Modificamos el archivo para que podamos tener acceso a una nueva shell.

echo 'import os; os.system("/bin/sh")' > /opt/script.py

Ya tenemos acceso como root por lo que tenemos los máximos privilegios.

Para esta ocasión, utilizaremos un exploit disponible en . Descargamos el archivo .py correspondiente, lo ejecutamos y logramos obtener la información del archivo que estábamos buscando.

Para aprovechar esta situación, visitamos la página de y buscamos la entrada correspondiente a Python. Encontramos un código en la sección de sudo que podemos ejecutar, aunque es importante considerar ciertas modificaciones, ya que no es para obtener acceso root directamente.

Exploit-DB
GTFOBins