===== Extraer timestamps de cabeceras gzip en respuestas HTTP para ubicar geográficamente un dominio / IP =====
Analizar un dominio para extraer el timestamp de cabeceras gzip en respuestas HTTP.
curl -sL0 --raw -k --compressed nickelfreesolutions.com | dd bs=4 skip=1 count=1 status=none > /tmp/caca; grep -qb V /tmp/caca && date -d @`od -t d4 /tmp/caca | awk '{print $2}'`
mié mar 11 15:12:31 CET 2014
Analizar los dominios de un fichero llamado "dominios.txt"
cat dominios.txt | while read LINE; do echo $LINE; curl -sL0 --raw -k --compressed $LINE | dd bs=4 skip=1 count=1 status=none > /tmp/caca; grep -qb V /tmp/caca && date -d @`od -t d4 /tmp/caca | awk '{print $2}'`; done
Ejemplo de salida, ejecutado a fecha "mié mar 11 18:20:46 CET 2014"
mié mar 11 18:22:31 CET 2014 <--- UTC
pricerabbit.com
mié mar 11 15:16:20 CET 2014 <--- Hora local
nickelfreesolutions.com
mié mar 11 11:23:41 CET 2014 <--- Hola local
bing.com
mié mar 11 18:23:44 CET 2014 <--- UTC
i.reddit.com
mié mar 11 18:23:45 CET 2014 <--- UTC
reddit.com
* Sólo se muestran los dominios que tienen en la cabecera el timestamp (no llega al 5%).
* Los resultados pueden ser variados dependiendo de la IP a la que apunte el dominio en ese momento.
* Los servidores que contienen la hora local y no usan UTC (como reza el estándar) da pistas de la localización geográfica del servidor, incluso cuando se encuentra detrás de redes como TOR .
**Enlaces de interés**.
* **Date leak gzip Tor**: [[http://jcarlosnorte.com/security/2016/02/21/date-leak-gzip-tor.html]]
* **Código PHP (PoC)**: [[https://github.com/jcarlosn/gzip-http-time]]