En realidad, saber si una IP proviene de un nodo TOR es relativamente sencillo y no requiere magia de ningún tipo.
El propio proyecto TOR te explica como hacerlo y ofrece un montón de ejemplos para hacerlo desde múltiples lenguajes de programación (Python, PHP, Perl ...)
Por si no fuera poco, la lista de nodos TOR es pública y se puede consultar desde esta URL.
Pensando desde un punto de vista forense, tal vez sí echo a faltar
herramientas que permitan analizar el contenido de un fichero de logs
Apache e indique cuales de esos accesos provienen desde una red TOR.
Como no he encontrado nada que me haya convencido, decidí hacer mi propia implementación.
Cuando me puse a ello, tenía dos opciones posibles: O bien me iba a las
consultas DNS (como en los ejemplos antes mencionados) o lo hacía de una
forma un poco diferente.
Creo que es poco óptimo el ir IP por IP del fichero de log y lanzar una
consulta DNS, así que pensé que era mejor descargar la lista completa de
nodos TOR, parsearla para obtener la IP y comparar con lo que iba
encontrando.
El resultado es este:
Para ejecutarlo, tan solo toma como parámetro el fichero de log a analizar.
$ python parsetor.py access_log
Cabe señalar un matiz: Si en el momento en el que se realiza el análisis
el nodo TOR no se encuentra activo, no aparecerá, así que cuanto más
frescos sean los datos, más oportunidades hay de tener un resultado más
fiable
FUENTE :SDB
No hay comentarios:
Publicar un comentario