
Analisador de Código ABAP
| Edição | O que é | Onde |
|---|
| CLI de código aberto (gratuita, MIT) | Escaneia código-fonte ABAP exportado localmente ou em CI | Este repositório (abaixo) |
| Cloud (SAP BTP) | SaaS comercial que lê ABAP por meio de destinos BTP | Edição Cloud / BTP |
| Web (Console de Gerenciamento) | SAST web comercial que se conecta ao SAP via JCo / RFC | Edição Web |
As edições comerciais são da RedRays; este projeto OWASP (a CLI de código aberto) é gratuito e de código aberto.
O SAP roda em código ABAP customizado - muitas vezes milhões de linhas, escritas ao longo de décadas, sustentando folha de pagamento, finanças e logística. Esse código raramente passa por revisão de segurança e é uma fonte frequente de bugs de injeção, path-traversal e segredos embutidos no código, enquanto as ferramentas padrão do SAP são pesadas e vinculadas ao sistema.
Esta CLI analisa estaticamente o código-fonte ABAP exportado, offline - sem conexão com o SAP, sem agente, sem telemetria - e gera um relatório XLSX sobre o qual você pode agir. Coloque-a no CI para bloquear pull requests.
Requer Python 3.9+ e
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
Quando a varredura terminar, você encontrará abap_security_scan_report.xlsx na pasta do projeto:
| Opção | Descrição | Padrão |
|---|---|---|
path | Diretório do código-fonte ABAP a ser escaneado | (obrigatório) |
-c, --config | Caminho para o arquivo de configuração YAML | config.yml |
O scanner lê um arquivo YAML (padrão config.yml, substituível com -c). Escolha as verificações a executar, as extensões de arquivo a incluir e os padrões a excluir:
checks:
- CheckCrossSiteScripting
- CheckSQLInjection
- CheckDirectoryTraversal
file_extensions:
- .abap
- .txt
exclude_patterns:
- "**/test/**"
checks/.run.checks: no seu arquivo de configuração.# Unix-like
./run_tests.sh
# Windows
run_tests.bat
Pull requests são bem-vindos - novas verificações, casos de teste, correções de bugs e documentação ajudam. Consulte CONTRIBUTING.md e siga o Código de Conduta da OWASP.
Encontrou uma vulnerabilidade no próprio scanner? Siga o processo de divulgação responsável descrito em SECURITY.md - não abra uma issue pública para relatos de segurança.
MIT. Contribuído e mantido originalmente pela RedRays. As edições Cloud (SAP BTP) e Web (Console de Gerenciamento) são produtos comerciais; este projeto OWASP (a CLI de código aberto) é gratuito e de código aberto.