Ir al contenido

Herramientas, automatización y NSE para R-services

Por

Madurezreviewed
Última revisión
Publicado
Última actualización

El workflow de R-services explica el modelo de confianza basado en host y usuario. La automatización debe conservar el origen real. Cambiar de pivot, interfaz o hostname puede cambiar el resultado aunque las credenciales permanezcan iguales.

Ventana de terminal
sudo nmap -sV -n -Pn -p 512,513,514 TARGET_IP
rpcinfo -p TARGET_IP

TCP 512 puede ser rexec, TCP 513 rlogin y TCP 514 rsh, pero esa asociación solo propone un protocolo. Confírmalo con el cliente correspondiente. rpcinfo se usa para rusers cuando el servicio se publica mediante RPC.

Ventana de terminal
rusers -al TARGET_IP

La respuesta puede exponer usuario, terminal, origen y tiempo de inactividad. No demuestra que rlogin o rsh confíen en ese usuario.

Ventana de terminal
rlogin -l REMOTE_USER TARGET_IP
rsh -l REMOTE_USER TARGET_IP id

rlogin abre una sesión interactiva. rsh ejecuta un comando. Registra usuario local, usuario remoto, nombre local resuelto por el servidor y dirección de origen.

rexec usa usuario y contraseña, por lo que pertenece a un modelo distinto:

Ventana de terminal
rexec TARGET_IP -l USERNAME COMMAND

Evita colocar la contraseña en argumentos. Comprueba la sintaxis del cliente instalado, ya que difiere entre implementaciones y muchas distribuciones ya no lo incluyen.

No existe una herramienta moderna que sustituya la validación del trust. Los scripts NSE disponibles se centran en descubrimiento de servicios RPC o banners. El dato decisivo suele estar en /etc/hosts.equiv, .rhosts, resolución directa e inversa y puertos de origen reservados.

Con acceso local, find permite localizar archivos de confianza sin seguir una lista fija de usuarios. -name .rhosts limita el nombre, -type f exige un archivo regular y -ls conserva propietario, permisos y ruta:

Localizar archivos .rhosts
find /home -name .rhosts -type f -ls 2>/dev/null

Si un framework prueba acceso, reproduce el resultado con rlogin o rsh y conserva el comando exacto. Una shell obtenida cambia de fase y requiere registrar procesos y cambios del sistema.