
RIPS - Un analizador estático de código fuente para detectar vulnerabilidades en scripts PHP
Un analizador estático de código fuente para vulnerabilidades en scripts PHP
Siga las instrucciones de la página principal.
Consulte el formulario html original de escaneo de php-rips (index.php) para más opciones.
php index.php [option=value]
| Opciones | Valor |
|---|---|
| loc | archivo/carpeta objetivo de escaneo |
| subdir | recurrir subdirectorios [0|1] |
| ignore_warning | [0|1] |
| vector | vectores de escaneo [all|...] |
| verbosity | verbosidad del registro [0-9] |
| treestyle | estilo de salida html [0|1] |
| stylesheet | hoja de estilos de salida html [ayti|...] |
Ejemplo: escanear recursivamente ./code en busca de todas las clases de vulnerabilidades
php index.php loc=./code subdirs=1 vector=all verbosity=2
Nota: en modo cli, argv se analizará en $_POST, por lo que le permite establecer cualquier variable POST.
instale el complemento publicador de html
configure (múltiples) scm para clonar tanto este repositorio como el código fuente que desea escanear en carpetas distintas
agregue un paso de compilación: ejecutar shell
# config - remove this if you configure it via jenkins parameterized builds
PATH_RIPS=rips-scanner
PATH_REPORT=report
FILE_REPORT=report.html
PATH_TARGET=code
RIPS_RECURSE_SUBDIR=1
RIPS_VECTOR=all
RIPS_VERBOSITY=2
# copy dependencies
mkdir -p report
cp -r rips-scanner/css report
cp -r rips-scanner/js report
# run analysis
echo "========================================================="
echo "[**] running scan ... $PATH_TARGET"
echo "========================================================="
php $PATH_RIPS/index.php ignore_warning=1 loc=$PATH_TARGET subdirs=$RIPS_RECURSE_SUBDIR vector=$RIPS_VECTOR verbosity=$RIPS_VERBOSITY treestyle=1 stylesheet=ayti > $PATH_REPORT/$FILE_REPORT
echo "========================================================="
echo "[**] scan done ... check out $PATH_REPORT/$FILE_REPORT"
echo "========================================================="
agregue un paso de compilación: ejecutar python
import os, sys
import rips_stats as rips
if __name__=="__main__":
report = os.path.join(os.environ.get("PATH_REPORT","report"),os.environ.get("FILE_REPORT","report.html"))
sys.exit(rips.main([report]))
La rama community de RIPS es una bifurcación de la versión 0.55 y no cuenta con soporte oficial de RIPS Technologies.
RIPS Technologies ofrece una solución completamente reconstruida que supera las limitaciones fundamentales de la versión de código abierto y realiza análisis de seguridad de última generación.
Obtenga más información sobre la próxima generación de RIPS en https://www.ripstech.com/product/datasheets/.
agregue un paso posterior a la compilación: publicar html, seleccione la carpeta 'report' con el nombre 'vulnerability-report'. Aparecerá un nuevo icono de acción en el que se puede hacer clic, 'vulnerability-report', que apunta al resultado del escaneo archivado.
| Característica comparada | RIPS 0.5 | Next Generation |
|---|
| Lenguaje PHP soportado | PHP 3-4, sin OOP | todo, PHP 3-7 |
| Análisis estático de código | Solo basado en tokens | Completo |
| Precisión del análisis | Baja | Muy alta |
| Análisis específico de versión PHP | No | Sí |
| Escalable a códigos grandes | No | Sí |
| Soporte API / CLI | No | Sí |
| Integración continua | No | Sí |
| Cumplimiento / Estándares | No | Sí |
| Almacenar resultados de análisis | No | Sí |
| Exportar resultados de análisis | No | Sí |
| Sistema de revisión de incidencias | No | Sí |
| Resultados en tiempo real | No | Sí |
| Tendencias de vulnerabilidades | No | Sí |
| Detecta riesgos recientes | No | Sí |
| Detecta vulnerabilidades complejas | Limitado | Sí |
| Tipos de incidencias soportados | 15 | >140 |
| Velocidad | Rápida | Rápida |