
Analizador de Código ABAP
Pruebas estáticas de seguridad de aplicaciones (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 administració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 se ejecuta sobre código ABAP personalizado: a menudo millones de líneas, escritas a lo largo de décadas, que impulsan nóminas, finanzas y logística. Ese código rara vez se revisa en materia de seguridad y es una fuente frecuente de errores de inyección, path traversal y secretos hardcodeados, mientras que las herramientas estándar de SAP son pesadas y están ligadas al 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. Intégrala 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 el escaneo finalice, encontrarás abap_security_scan_report.xlsx en la carpeta del proyecto:
| Opción | Descripción | Por defecto |
|---|---|---|
path | Directorio de código fuente ABAP a escanear | (obligatorio) |
-c, --config | Ruta al archivo de configuración YAML |
El escáner lee un archivo YAML (por defecto config.yml, se puede reemplazar con -c). Elige los checks que se ejecutarán, 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: de tu archivo de configuración.# Unix-like
./run_tests.sh
# Windows
run_tests.bat
Las pull requests son bienvenidas: nuevos checks, 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 descrito en SECURITY.md; no abras un issue público para reportes de seguridad.
MIT. Contribuido y mantenido originalmente por RedRays. Las ediciones Cloud (SAP BTP) y Web (Consola de administración) son productos comerciales; este proyecto de OWASP (la CLI de código abierto) es gratuito y de código abierto.
config.yml