hacktricks/network-services-pentesting/pentesting-rpcbind.md

6.7 KiB
Raw Blame History

111/TCP/UDP - Pentesting Portmapper

Aprende hacking en AWS de cero a héroe con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks:

Información Básica

Proporciona información entre sistemas basados en Unix. El puerto es a menudo sondeado, puede ser utilizado para identificar el sistema operativo Nix y obtener información sobre los servicios disponibles. Puerto utilizado con NFS, NIS o cualquier servicio basado en rpc.

Puerto predeterminado: 111/TCP/UDP, 32771 en Oracle Solaris

PORT    STATE SERVICE
111/tcp open  rpcbind

Enumeración

rpcinfo irked.htb
nmap -sSUC -p111 192.168.10.1

A veces no te da ninguna información, en otras ocasiones obtendrás algo como esto:

Shodan

  • port:111 portmap

RPCBind + NFS

Si encuentras el servicio NFS, probablemente podrás listar y descargar (y tal vez subir) archivos:

Lee 2049 - Pentesting NFS service para aprender más sobre cómo probar este protocolo.

NIS

Si encuentras el servicio ypbind ejecutándose:

Puedes intentar explotarlo. De todos modos, primero necesitarás adivinar el "nombre de dominio" NIS de la máquina (cuando se instala NIS se configura un "nombre de dominio") y sin conocer este nombre de dominio no puedes hacer nada.

Al obtener el nombre de dominio NIS del entorno (example.org en este caso), usa el comando ypwhich para hacer ping al servidor NIS y ypcat para obtener material sensible. Deberías introducir los hashes de contraseñas encriptadas en John the Ripper, y una vez descifradas, puedes usarlas para evaluar el acceso al sistema y los privilegios.

root@kali:~# apt-get install nis
root@kali:~# ypwhich -d example.org 192.168.10.1
potatohead.example.org
root@kali:~# ypcat d example.org h 192.168.10.1 passwd.byname
tiff:noR7Bk6FdgcZg:218:101::/export/home/tiff:/bin/bash
katykat:d.K5tGUWCJfQM:2099:102::/export/home/katykat:/bin/bash
james:i0na7pfgtxi42:332:100::/export/home/james:/bin/tcsh
florent:nUNzkxYF0Hbmk:199:100::/export/home/florent:/bin/csh
dave:pzg1026SzQlwc:182:100::/export/home/dave:/bin/bash
yumi:ZEadZ3ZaW4v9.:1377:160::/export/home/yumi:/bin/bash
Archivo maestro Mapa(s) Notas
/etc/hosts hosts.byname, hosts.byaddr Contiene nombres de host y detalles IP
/etc/passwd passwd.byname, passwd.byuid Archivo de contraseña de usuario NIS
/etc/group group.byname, group.bygid Archivo de grupo NIS
/usr/lib/aliases mail.aliases Detalles alias de correo

Usuarios RPC

Si encuentras el servicio rusersd listado así:

Podrías enumerar los usuarios de la caja. Para aprender cómo leer 1026 - Pentesting Rsusersd.

Evitar Puerto de Portmapper Filtrado

Si durante un escaneo con nmap ves puertos abiertos como NFS pero el puerto 111 está filtrado, no podrás explotar esos puertos.
Pero, si puedes simular localmente un servicio de portmapper y túnelas el puerto NFS desde tu máquina a la víctima, podrás usar herramientas regulares para explotar esos servicios.
Más información en https://medium.com/@sebnemK/how-to-bypass-filtered-portmapper-port-111-27cee52416bc

Shodan

  • Portmap

Laboratorios para practicar

Comandos Automáticos HackTricks

Protocol_Name: Portmapper    #Protocol Abbreviation if there is one.
Port_Number:  43     #Comma separated if there is more than one.
Protocol_Description: PM or RPCBind        #Protocol Abbreviation Spelled out

Entry_1:
Name: Notes
Description: Notes for PortMapper
Note: |
Provides information between Unix based systems. Port is often probed, it can be used to fingerprint the Nix OS, and to obtain information about available services. Port used with NFS, NIS, or any rpc-based service.

https://book.hacktricks.xyz/pentesting/pentesting-rpcbind

Entry_2:
Name: rpc info
Description: May give netstat-type info
Command: whois -h {IP} -p 43 {Domain_Name} && echo {Domain_Name} | nc -vn {IP} 43

Entry_3:
Name: nmap
Description: May give netstat-type info
Command: nmap -sSUC -p 111 {IP}
Aprende hacking en AWS de cero a héroe con htARTE (HackTricks AWS Red Team Expert)!

Otras formas de apoyar a HackTricks: