Español | English
rss facebook linkedin Twitter

¿Qué haces hijo? -Estudiar matemáticas papá-

...mientras tanto, al otro lado de la habitación...

young
Si ahora convierto 216.163.137.3 a binario obtengo 11011000 10100011 10001001 00000011 ahora lo transformo a decimal y me queda 3634596099 que pasándolo finalmente al sistema hexadecimal ya tengo d8a38903, esto es, http://0xd8a38903
-----------

Existe gran cantidad de información disponible sobre esta técnica de ofuscación de urls aprovechándose del desconocimiento de su estructura, pero, ¿cuál es la base de todo esto?. Gran parte, se debe a las diversas implementaciones que se realizan a partir de una especificación estándar.

Sección 7.4 del RFC3986
[..]
Adding further to the
confusion, some implementations allow each dotted part to be
interpreted as decimal, octal, or hexadecimal, as specified in the C
language (i.e., a leading 0x or 0X implies hexadecimal; a leading 0
implies octal; otherwise, the number is interpreted as decimal).

These additional IP address formats are not allowed in the URI syntax
due to differences between platform implementations. However, they
can become a security concern if an application attempts to filter
access to resources based on the IP address in string literal format.
[...]

Se podría tratar como un viejo y conocido bug en múltiples navegadores que interpreta erróneamente los nombres de host numéricos como direcciones IP.

El caso es que, hasta ahora, este tipo de ambigüedades venía siendo explotada por spammers y phishers como método de ofuscación de urls. Pero últimamente, se está viendo su uso por jóvenes en grandes ISPs con sistemas de filtrado de contenidos. ¿Quién dijo que las matemáticas no servían para nada?

Afortunadamente, parece que este tipo de debilidad, será reforzada o solucionada de alguna manera a partir del nuevo borrador para la seguridad del protocolo http, del cual ya indicamos su existencia anteriormente.
"Many users do not understand the construction of URIs [RFC3986], or their presentation
in common clients [...]. As a result, forms are extremely vulnerable to spoofing."
Mientras esto llegue, podremos seguir viendo urls como:
http://216.0xa3.137.3/
http://216.10717443/
http://0xd8a38903/
http://033050704403/

Lo de los jóvenes saltándose sistemas de filtrado a través de esta técnica podría quedar como mera anécdota si lo comparamos con los riesgos actuales de XSS y CSRF, más peligrosos de lo que la gente quiere creer.

Emilio Casbas
S21sec labs

(+34 902 222 521)


24 horas / 7 días a la semana



© Copyright S21sec 2013 - Todos los derechos reservados


login