Detecta fallas de seguridad usando Wapiti

Aunque no haya una manera automática que asegure una detección de todas las fallas de seguridad de un aplicativo web, existen herramientas que permiten analizar una herramienta y reportar una capa base de fallas.

Una de estas herramientas, en GPLv2, se llama Wapiti. Descargalo y instala python, python-utidylib, tidy y python-ctypes. Crea una carpeta /tmp/out/ para poner los resultados (cuidado, Wapiti probará de vaciar la carpeta antés de iniciar su reporte).

Descomprima el archivo, entra en la carpeta y ejecuta algo como esto:

python src/wapiti.py http://mi.dokeos.mio/ -f html -o /tmp/out/

y te generará un reporte HTML en /tmp/index.html que podrás analizar tranquilamente, y que te describe que tipo de fallas ha probado.

En el caso de sitios web con authentificación, se usa un cookie, a través del comando más extendid

python src/wapiti.py http://mi.dokeos.mio/ -f html -o /tmp/out/ -c /tmp/cookie.txt -a admin%admin -x http://mi.dokeos.mio/index.php?logout=logout&uid=1

(donde admin%admin es el login/pass del usuario y el último url es un url que el Wapiti debe excluir (para no disconectarse de su sesión).

Esto, junto con el libro “Essential PHP Security”, permite de cubrir una parte muy importante de las fallas de seguridad.