¿Cómo utilizar HTTP para evasión a nivel de Firewall?

Conocimiento pertenece al mundo
Tweet about this on TwitterShare on FacebookShare on LinkedInShare on Google+Share on StumbleUponShare on TumblrShare on RedditPin on PinterestEmail this to someone

HTTP versión 0.9 fue la primera versión del protocolo HTTP, definido en 1991 pero ya utilizado antes. Simplemente consiste en una petición GET sobre el lado del cliente que se asemeja levemente solicitud de GET actual, seguido de una respuesta en el lado del servidor. Contrario HTTP 1.0 (especificado 1996) la respuesta no consiste en el encabezado de respuesta y el cuerpo de la respuesta, pero solo contiene el cuerpo según expertos de Webimprints, empresa de seguridad informática. Esto significa que no es posible definir  los tipos de datos (Content-type), compresiones (Content-Encoding) o dar la longitud del cuerpo (Content-Length), por lo que la respuesta simplemente termina con el cierre de la conexión TCP subyacente por el servidor menciona Dave Smith especialista de seguridad informática en México.

¿Cómo utilizar evasión HTTP y malware a nivel de Firewall?

Por ejemplo, hoy HTTP 1.1 contienen cabecera y el c

uerpo y verse así:

HTTP/1.1 200 ok

Content-type: application/octet-stream

Content-length: 68

alguno-malware-aquí

Mientras que con HTTP 0.9 sería sólo el cuerpo sin cabecera:

alguno-malware-aquí

Curiosamente, HTTP 0.9 respuestas a peticiones HTTP 1.1 son aceptadas por todos los principales navegadores, aunque uno no esperaría  que los servidores habla este protocolo hoy en día según experto de proveedor de seguridad informática.

Una respuesta HTTP 0.9 no parece ser la respuesta esperada de la HTTP 1.x, ya que no incluye una cabecera de respuesta. Así que uno esperaría de un firewall para bloquear esa respuesta, porque se ve como una violación del protocolo HTTP. Y ningún firewall hoy debe asumir que existe un verdadero servidor que todavía se utiliza HTTP 0.9 en la producción. Alternativamente, el firewall puede hacer un análisis de malware de la respuesta HTTP 0.9 explica experto de proveedor de seguridad informática.

Pero, sorprendentemente, la mayoría de los firewalls, simplemente pasan una respuesta HTTP/0,9 a través sin inspección adicional. Ya que no analizan estos HTTP 0.9 respuestas en busca de malware, uno pueden asumir que estos firewalls simplemente pase todo lo no entiendan.

Puesto que en el momento que se definió HTTP 0.9 fue utilizado para mostrar HTML solamente, se podría considerar que no es peligroso, ya que sólo se muestra en el navegador. Pero mediante la combinación de la vieja HTTP 0.9 con el HTML 5 moderna uno podría simplemente hacer cumplir una descarga mediante el atributo de descarga:

<a href=”http://attack.com/http09-response” download=”virus.exe”>

Del mismo modo una respuesta HTTP 0.9 podría utilizarse como secuencia de comandos, imagen o página HTML mediante la incorporación dentro del contexto apropiado explica especialista de empresa de pruebas de penetración:

<script src=”http://attack.com/http09-response.js”>

<img src=”http://attack.com/http09-response.gif”>

<a href=”http://attack.com/http09-response.html”>

Evasión por Firewall a nivel HTTP son peligrosas, no sólo porque el malware puede transmitirse al usuario, sino también porque a menudo no dejan huellas y así consiguen totalmente desapercibido explica especialista de empresa de pruebas de penetración. Si uno tiene una mirada en el código fuente de soluciones IDS actuales como el uso común Snort, Bro o Suricata uno puede ver que la mayoría supone que el atacante utiliza, respuestas HTTP conformación estándar común y tratará la entrada en consecuencia. Es decir tomarán las partes de la respuesta HTTP que ellos puedan entender fácilmente y por lo general ignoran en silencio el resto. Las experiencias con los productos comerciales demuestran que confían a menudo ciegamente en la capa de HTTP de una manera similar.

Conocimiento pertenece al mundo
Tweet about this on TwitterShare on FacebookShare on LinkedInShare on Google+Share on StumbleUponShare on TumblrShare on RedditPin on PinterestEmail this to someone