
Kvasir: Gestión de Datos de Pruebas de Penetración
¡Bienvenido a Kvasir! En estos directorios se encuentran las herramientas base para una gestión eficaz de datos durante una Prueba de Penetración.
Las pruebas de penetración pueden convertirse en una pesadilla de gestión de datos debido a las grandes cantidades de información que generalmente se obtienen. Los escáneres de vulnerabilidades devuelven muchas vulnerabilidades reales y potenciales para revisar. Los escáneres de puertos pueden devolver miles de puertos para solo unos pocos hosts. ¿Qué tan fácil es compartir todos estos datos con tus compañeros de trabajo?
Para eso está Kvasir. Esto es lo que necesitarás para comenzar:
Kvasir es una aplicación web2py y puede instalarse para cada cliente o tarea. Este diseño mantiene los datos separados y evita que ataques o revises accidentalmente a otros clientes.
Esta herramienta fue desarrollada principalmente para el equipo de Evaluación de Postura de Seguridad (SPA) de Cisco Systems Advanced Services. Si bien puede que no todas las metodologías se alineen directamente, Kvasir es algo que se puede moldear y adaptar para ajustarse a casi cualquier escenario de trabajo. ¡Se recomiendan las pull requests a través de Github!
La documentación actual se mantendrá en la wiki de Github de Kvasir (https://github.com/KvasirSecurity/Kvasir/wiki)
Kvasir fue diseñado principalmente para su uso en compromisos de corta duración centrados en el cliente. Se utilizaría un directorio 'application' para cada cliente, lo que permite una separación de datos mucho más sólida.
Por ejemplo, supongamos dos clientes, Foo Widgets y Bar Napkins.
Los datos de cada cliente se almacenan en /opt/data/$CUSTOMERNAME
Instala Kvasir en el directorio de cada cliente:
Ahora crea un enlace simbólico de Kvasir al directorio de aplicaciones de web2py:
Crea bases de datos independientes:
Copia kvasir.yaml.sample a kvasir.yaml y cambia los valores predeterminados:
¡Estás listo para comenzar!
El sistema de cola de tareas del programador de web2py se utiliza para tareas de larga duración, como lanzar terminales, procesar archivos de informe XML, etc. El programador puede ejecutarse con el proceso principal de web2py o iniciarse desde una terminal separada.
Para iniciarlo como parte del proceso del servidor web de web2py:
cd $WEB2PY_HOME
python web2py.py -a <recycle> -X -K foowidgets,barnapkins
Para iniciarlo como un proceso independiente:
cd $WEB2PY_HOME
python web2py.py -K foowidgets,barnapkins
Se pueden iniciar trabajadores adicionales repitiendo el nombre de la aplicación:
cd $WEB2PY_HOME
python web2py.py -K foowidgets,foowidgets,barnapkins,barnapkins
Por defecto, el nivel de registro de las tareas del programador es DEBUG. Esto puede volverse muy ruidoso en una terminal. Para cambiarlo, copia el archivo logging.conf al directorio principal de web2py. Modifícalo como consideres conveniente.
cd $WEB2PY_HOME
cp applications/$APPNAME/logging.conf .