
grep rough audit - herramienta de auditoría de código fuente
=============================================================================== graudit es un script simple y conjuntos de firmas que te permite encontrar posibles fallos de seguridad en código fuente usando la utilidad GNU grep. Es comparable a otras aplicaciones de análisis estático como RATS, SWAAT y flaw-finder, manteniendo los requisitos técnicos al mínimo y siendo muy flexible.
La instalación se puede realizar como usuario o globalmente como root, simplemente ejecuta make con el argumento userinstall o install. Sin embargo, se recomienda usar graudit directamente clonando el repositorio git, ya que incluye reglas de base de datos adicionales no incluidas en los archivos de distribución. Esto también te permite obtener actualizaciones entre versiones. Para hacer esto, ejecuta el siguiente comando:
git clone https://github.com/wireghoul/graudit
Luego puedes agregar graudit a tu PATH, usando los valores apropiados para tu shell preferido:
echo 'PATH="$HOME/graudit:${PATH:+:${PATH}}"; export PATH;' >> ~/.bashrc
Si graudit no está en tu directorio personal, puedes configurar la variable de entorno GRDIR al directorio de firmas en tu archivo .bashrc file.
export GRDIR=/path/to/graudit/signatures
graudit admite varias opciones y trata de seguir buenas prácticas de shell. Para una lista de las opciones puedes ejecutar graudit -h o ver a continuación. La forma más sencilla de usar graudit es;
graudit [opts] /path/to/scan
OPTIONS
-d <dbname> database to use or /path/to/file.db (uses default if not specified)
-A scan unwanted and difficult (ALL) files
-x exclude these files (comma separated list: -x *.js,*.sql)
-i case in-sensitive scan
-c <num> number of lines of context to display before and after a match, default is 1
-B suppress banner
-L vim friendly lines
-b colour blind friendly template
-z suppress colors
-Z high contrast colors
-l lists databases available
-v prints version number
-h prints this help screen
Puedes configurar opciones predeterminadas de línea de comandos mediante la variable de entorno GRARGS. Esto puede afectar el uso de graudit en scripts, por lo que se recomienda usar solo las opciones B, L, b, z y Z para este propósito.
echo 'GRARGS="-b -L"; export GRARGS' >> ~/.bashrc
graudit usa expresiones regulares extendidas (POSIX) como sus firmas y viene con varias bases de datos listas para usar. Puedes extender las bases de datos existentes o crear las tuyas propias si necesitas firmas adicionales.
Las bases de datos se pueden cargar desde múltiples ubicaciones, el orden de precedencia es el siguiente:
Una lista de los archivos de base de datos en orden de precedencia se muestra con la opción -l: graudit -l
Las siguientes bases de datos están incluidas:
Un video tutorial/introducción se puede encontrar en: https://youtu.be/b8Xbzer1n94
Si deseas contribuir a graudit, por favor haz un fork del repositorio en https://github.com/wireghoul/graudit y úsalo. En particular, son muy bienvenidas las reglas de lenguaje, scripts adicionales y contribuciones de documentación. Si te gusta graudit, por favor da las gracias y compártelo.
Si deseas ponerte en contacto conmigo, envíame un mensaje en github o twitter: @wireghoul