SSH a traves de proxy. Corkscrew no sirve

Iniciado por djbill, 21 Junio 2017, 14:37 PM

0 Miembros y 1 Visitante están viendo este tema.

djbill

Buenas tardes, en este primer mensaje me gustaría empezar fuerte ;D

Escenario: Organización con puestos de cliente Windows 7 plataformados y sin privilegios de administrador. Navegación hacia internet a traves de proxy autenticado.

Antecedentes: Para evitar el filtrado del proxy venía utilizando BitviseSSH que me permitía establecer una conexión SSH a traves del Proxy HTTP con destino un servidor SSH en el puerto 443 y a su vez levantar un proxy SOCKSv5 local que podía configurar en mi Firefox portable.
Ahora esto lo han capado e independientemente de la IP de destino ya no es posible establecer SSH a traves del proxy (Anteriormente solo iban capando direcciones IP)

He probado Corkscrew pero el proxy sigue denegando la conexión SSH.

Pregunta: ¿Qué opciones tengo para poder saltarme el filtrado del proxy HTTP de la organización?

Muchas gracias anticipadas.

warcry.

pero puedes navegar por https?

si puedes navegar por ejemplo a https://google.es, entonces no es problema del puerto

me explico, si puedes navegar vía https, lo que habrán hecho es una white list, lo normal de este tipo de proxy es una black list, osea se van metiendo las paginas web o las ip,s no deseadas y el proxy las bloquea.

al hacer una white list es al contrario, se van metiendo las web y las ip,s permitidas y el resto del mundo lo bloquean.

si no tienes posibilidad de navegar por https, es que han bloqueado el puerto 443, por lo que tienes que mirar que puertos están permitidos, si esta permitido el 8080, pues tendrás que migrar a ese puerto, si solo esta permitido el 80, pues tendrás que migrar al 80, lo que pasa que en esos puertos va a ser muy fácil que te pillen, porque en el momento que admin detecte trafico cifrado por puertos de trafico sin cifrar se va a dar cuenta en seguida y bloqueara las ip,s de destino
HE SIDO BANEADO --- UN PLACER ---- SALUDOS

djbill

Buenas tardes, efectivamente puedo navegar por HTTPS (Puerto 443)

Cuando lanzo la conexion con el Bitvise me devuelve el siguiente error:

Started a new SSH2 session.
Connecting to SSH2 server SERVIDORSSH:443 via SERVIDORPROXY:8080 HTTP CONNECT proxy.
Connecton failed. Error class: Http, code: 403, message: FlowProxyConnector: HTTP CONNECT request for 'SERVIDORSSH' failed: status 403, reason: Forbidden.
The SSH2 session has been terminated.


Y cuando lo lanzo desde Corkscrew en MobaXterm devuelve:

Proxy could not open connection to SERVIDORSSH: Forbidden


He probado con diferentes servidores SSH y todos devuelven el mismo error por lo que deduzco que están realizando una inspección de los paquetes y descubren que es SSH sobre HTTP

warcry.

#3
no lo creo, ese error lo he tenido esta mañana

me he conectado con teamviwer a mi servidor, lo he reiniciado y a funcionar, durante toda la mañana me ha estado dando por culo el mismo error, porque el windows me cerraba el servidor pero al final lo que he hecho es iniciar el servidor ssh con privilegios de administrador y he estado funcionando ya sin problemas.

no creo que sea problema del proxy, es de tu servidor.

si lo tienes sobre windows, como yo, es posible que alguna actualización nos este jodiendo, por que es muy raro que me haya pasado a mi lo mismo esta mañana

Cita de: djbill en 21 Junio 2017, 18:45 PM
que están realizando una inspección de los paquetes y descubren que es SSH sobre HTTP

eso es imposible, es trafico cifrado sobre https (443) que es trafico cifrado, luego no es trafico cifrado sobre http, eso si se darían cuenta si utilizaras el puerto 80 y utilizaras trafico cifrado, pero lo que va por el puerto 443 es cifrado, si o si
HE SIDO BANEADO --- UN PLACER ---- SALUDOS

djbill

El servidor SSH principal corre en Linux, el secundario en otra linea en un OpenWRT y los demás que he probado los he montado en Azure y en AWS en diferentes regiones.

Respecto a inspeccionar los paquetes es totalmente viable ya que lo que estoy haciendo es poner a escuchar un servidor SSH en el puerto 443, pero los paquetes que viajan por ahí no van cifrados, esa decir, se saben que son de tipo SSH. El mero hecho de utilizar el puerto 443 no significa que la comunicación esté cifrada, el cifrado te lo facilita el protocolo de comunicación.
Lo que inpeccionan es la cabecera que empieza por SSH y entonces cortan la comunicación. Si vieran una sesión WEB TLS standard lo dejarían pasar seguramente.

Un saludo.

warcry.

Cita de: djbill en 21 Junio 2017, 19:12 PM
El mero hecho de utilizar el puerto 443 no significa que la comunicación esté cifrada, el cifrado te lo facilita el protocolo de comunicación.

hasta ahí, de acuerdo

CitarLo que inpeccionan es la cabecera que empieza por SSH y entonces cortan la comunicación. Si vieran una sesión WEB TLS standard lo dejarían pasar seguramente.

Un saludo.


si eres tan amable ponme unas capturas de eso que dices porque yo no lo tengo tan claro

donde va eso que dices en el datagrama ?

HE SIDO BANEADO --- UN PLACER ---- SALUDOS

djbill

Buenas, aquí te adjunto una captura de Wireshark: https://drive.google.com/open?id=0BxLUQ-gTRfN0MGpUMG13cXZBTkE

Como puedes ver antes de establecer la comunicación tanto el cliente como el servidor se presentan y esos pueden ser los bytes de Datos por los que el proxy HTTP puede descartarme la conexion.

warcry.

Cita de: djbill en 21 Junio 2017, 19:36 PM
Buenas, aquí te adjunto una captura de Wireshark: https://drive.google.com/open?id=0BxLUQ-gTRfN0MGpUMG13cXZBTkE

Como puedes ver antes de establecer la comunicación tanto el cliente como el servidor se presentan y esos pueden ser los bytes de Datos por los que el proxy HTTP puede descartarme la conexion.

estoy mirando la captura

tengo del 1 al 22

donde dices exactamente que se ve lo del ssh ?
HE SIDO BANEADO --- UN PLACER ---- SALUDOS

djbill

En los paquetes 4 y 6 en el campo "Data" puedes observar las cadenas de texto plano que delatan que se trata de una conexión SSH.

warcry.

#9
vale ya lo vi

el paquete 4  es la negociación que hace el bitvise SSH Client

y el paquete 6 y 7 es método de autenticacion.

es una cosa particular de bitvise, pero ya me has dejado con la mosca detrás de la oreja para ver que pasa desde una shell

edito: no creo que el proxy este filtrando conexiones por la interpretacion de paquetes, prueba a montar un servidor web en el puerto 80 y conectarte a traves del proxy http a una pagina de prueba, igual lo que tienes es bloqueada la ip,

HE SIDO BANEADO --- UN PLACER ---- SALUDOS