Quicktools

Quicktools

El propósito de esta sección, es ir alimentandolo, a medida que encuentre comandos recurrentes e importantes, para así tener un acceso rápido a estos, junto a una pequeña descripción

Reconocimiento

Nmap

Es una herramienta de escaneo de puertos que permite descubrir hosts en una red y determinar qué servicios están disponibles en esos hosts. Ayuda a recopilar información sobre la infraestructura de red y los sistemas objetivo.

Es importante tener permisos de Amdn, para así poder utilizar el parámetro -Pn

1
sudo nmap -p- --open -sS --min-rate 5000 -vvv -n -Pn {ip_target} -oG allPorts

Una vez tenemos los puertos, es importante obtener la versión y el servicio que se estan ejecutando en los puertos anteriormente encontrados

1
nmap -sCV -p{ports} {ip_target} -oN target

Gobuster

1
gobuster dir -u {url} -w {wordList} -t {Threads}

A nivel de Subdominios:

1
gobuster vhost -u {url} -w {wordList} -t {Threads:20}

WFUZZ

Hydra

Hydra es la mejor herramienta para aplicar fuerza bruta en distintos componentes

ssh

Fuerza bruta a un servicio ssh

1
2
3
4
5
6
hydra -L <dicUsers.txt> -P <dicPass.txt> <IP Target> ssh -t <threads> # Usamos diccionarios
hydra -l pepito -p pepitoPass <IP Target> ssh -t <threads> # Conocemos Usuario o Contraseña
hydra -s <port> # Cambia el puerto
hydra -M <IP Targets List> # Tenemos una lista de IPs
-V # Agrega verbosidad por pantalla
-e nsr # Uso en CTFs n:Null - s:SamePass - r:reverse

Puertos y servicios

lsof

Puede ser útil en la fase de enumeración para identificar procesos en ejecución y los archivos asociados a ellos, lo que puede revelar información valiosa sobre el sistema objetivo.

1
2
lsof -i :{port_number}
lsof -i :80

netstat

Se utiliza para mostrar información y estadísticas relacionadas con las conexiones de red activas, los puertos abiertos y otros datos de red.

1
2
netstat -tulnp
netstat -nat
ParámetroFunción
-tconexiones TCP establecidas
-uconexiones UDP establecidas
-lPuertos en escucha
-nDirecciones IP y puertos en números
-pProceso asociado a cada conexión o servicio
-aTodas las conexiones y puertos, incluyendo los que están en escucha y los que están establecidos

tcpdump

Para ponernos en escucha, en espera a recibir una traza icmp

1
tcpdump -i {interface} icmp -n

Explotación y Post-Explotación

Tratamiento de la TTY - Linux

Primero es importante colocar algún puerto en escucha utilizando ncat

1
nc -nlvp <port>
ParámetroFunción
-nSolo conexiónes mediante IP no DNS
-lEscucha (Listen)
-vVerbose, más detalle por pantalla
-pPuerto por el que va a trabajar (Escuchar)

Posterior vamos a ejecutar esta serie de comandos, lo que esté en {} va a ser opcional

1
2
3
4
5
6
7
8
9
10
11
script /dev/null -c bash
Ctrl + Z
stty raw -echo; fg
reset xterm
export TERM=xterm
# Si quieres colores puedes realizar esto
export TERM=xterm-256color
source /etc/skel/.bashrc

→ stty size 
stty rows (45) columns (184) 

Tratamiento de la TTY - Windows

Primero es importante colocar algún puerto en escucha utilizando ncat, acá podemos jugar también con rlwrap

1
rlwrap -cAr nc -nlvp <port>
ParámetroFunción
-cHabilita el autocompletado de nombres de archivo
-AFunciona mejor con comandos que utilizan colores ANSI
-rrecordar todas las palabras para autocompletado

Tareas Cron

Para ver que se está ejecutando a intervalos regulares de tiempo, podemos ejecutar este comando

1
systemctl list-timers

Este sirve para ver que está corriendo, y que usuario lo ha ejecutado

1
ps -eo user,command

John The Ripper

1
john --wordlist=/usr/share/wordlists/rockyou.txt hash

watch

Para revisar el mismo comando cada $x$ tiempo:

1
2
watch -n {s} {command}
watch -n 1 ls -l /bin/bash

searchsploit

1
2
3
4
5
6
7
8
9
10
11
12
13
❯ searchsploit elastix
------------------------------------------------------------------------------ ------------------------
 Exploit Title                                                                |  Path
------------------------------------------------------------------------------ ------------------------
Elastix - 'page' Cross-Site Scripting                                         | php/webapps/38078.py
Elastix - Multiple Cross-Site Scripting Vulnerabilities                       | php/webapps/38544.txt
Elastix 2.0.2 - Multiple Cross-Site Scripting Vulnerabilities                 | php/webapps/34942.txt
Elastix 2.2.0 - 'graph.php' Local File Inclusion                              | php/webapps/37637.pl
Elastix 2.x - Blind SQL Injection                                             | php/webapps/36305.txt
Elastix < 2.5 - PHP Code Injection                                            | php/webapps/38091.php
FreePBX 2.10.0 / Elastix 2.2.0 - Remote Code Execution                        | php/webapps/18650.py
------------------------------------------------------------------------------ -------------------------
Shellcodes: No Results
1
2
3
4
5
6
7
❯ searchsploit -x php/webapps/37637.pl
  Exploit: Elastix 2.2.0 - 'graph.php' Local File Inclusion
      URL: https://www.exploit-db.com/exploits/37637
     Path: /usr/share/exploitdb/exploits/php/webapps/37637.pl
    Codes: N/A
 Verified: True
File Type: ASCII text

crackmapexec

1
crackmapexec smb <ip_target>

responder

smbclient

rpcclient

kerberos

evil-winrm

1
evil-winrm -i {ip_target} -u {user_target} -p {user_passwd}

Ataques

AS-REP Roasting Attack

Que utiliza la suite impacket, se debe tener en cuenta que debemos tener: [ x ] Listado de usuarios (users.txt) [x] Dominio (contoso.com)

La máquina Forest toca esta vulnerabilidad

1
GetNPUsers.py contoso.com/ -no-pass -usersfile users.txt