
Analizador de Código ABAP
Pruebas de seguridad de aplicaciones estáticas (SAST) para SAP ABAP. Una CLI gratuita y de código abierto para encontrar vulnerabilidades de seguridad en código ABAP personalizado, sin conexión y en CI.
| Edición | Qué es | Dónde |
|---|---|---|
| CLI de código abierto (gratuita, MIT) | Escanea código fuente ABAP exportado localmente o en CI | Este repositorio (abajo) |
| Cloud (SAP BTP) | SaaS comercial que lee ABAP a través de destinos BTP | Edición Cloud / BTP |
| Web (Consola de gestión) | SAST web comercial que se conecta a SAP mediante JCo / RFC | Edición Web |
Las ediciones comerciales son de RedRays; este proyecto de OWASP (la CLI de código abierto) es gratuito y de código abierto.
SAP funciona con código ABAP personalizado, a menudo millones de líneas, escritas durante décadas, que impulsan nóminas, finanzas y logística. Ese código rara vez se revisa desde el punto de vista de la seguridad y es una fuente frecuente de errores de inyección, path-traversal y secretos codificados, mientras que las herramientas estándar de SAP son pesadas y dependen del sistema.
Esta CLI analiza estáticamente el código fuente ABAP exportado sin conexión — sin conexión a SAP, sin agente, sin telemetría — y genera un informe XLSX sobre el que puedes actuar. Inclúyela en CI para controlar las pull requests.
Requiere Python 3.9+ y
pip.
git clone https://github.com/OWASP/abap-code-scanner.git
cd abap-code-scanner
pip install -r requirements.txt
python main.py path/to/abap/source
Cuando finalice el escaneo, encontrarás abap_security_scan_report.xlsx en la carpeta del proyecto:
| Opción | Descripción | Predeterminado |
|---|---|---|
path | Directorio del código fuente ABAP a escanear | (obligatorio) |
-c, --config | Ruta al archivo de configuración YAML | config.yml |
El escáner lee un archivo YAML (por defecto config.yml, se puede sobrescribir con -c). Elige las comprobaciones a ejecutar, las extensiones de archivo a incluir y los patrones a excluir:
checks:
- CheckCrossSiteScripting
- CheckSQLInjection
- CheckDirectoryTraversal
file_extensions:
- .abap
- .txt
exclude_patterns:
- "**/test/**"
checks/.run.checks: en tu archivo de configuración.# Unix-like
./run_tests.sh
# Windows
run_tests.bat
Las pull requests son bienvenidas: nuevas comprobaciones, casos de prueba, correcciones de errores y documentación, todo ayuda. Consulta CONTRIBUTING.md y sigue el Código de Conducta de OWASP.
¿Has encontrado una vulnerabilidad en el propio escáner? Sigue el proceso de divulgación responsable en SECURITY.md — no abras un issue público para informes de seguridad.
MIT. Contribuido y mantenido originalmente por RedRays. Las ediciones Cloud (SAP BTP) y Web (Consola de gestión) son productos comerciales; este proyecto de OWASP (la CLI de código abierto) es gratuito y de código abierto.