
ABAP-Code-Analysator
Static Application Security Testing (SAST) für SAP ABAP. Ein kostenloses, quelloffenes CLI zum Auffinden von Sicherheitslücken in benutzerdefiniertem ABAP-Code – offline und in CI.
| Edition | Was es ist | Wo |
|---|---|---|
| Open-Source-CLI (kostenlos, MIT) | Exportierten ABAP-Quellcode lokal oder in CI scannen | Dieses Repo (unten) |
| Cloud (SAP BTP) | Kommerzielles SaaS, das ABAP über BTP-Destinations liest | Cloud-/BTP-Edition |
| Web (Management Console) | Kommerzielles Web-SASt, das sich über JCo / RFC mit SAP verbindet | Web-Edition |
Die kommerziellen Editionen stammen von RedRays; dieses OWASP-Projekt (das Open-Source-CLI) ist kostenlos und quelloffen.
SAP läuft auf benutzerdefiniertem ABAP-Code – oft Millionen von Zeilen, über Jahrzehnte geschrieben, die Lohnabrechnung, Finanzen und Logistik antreiben. Dieser Code wird selten sicherheitsüberprüft und ist eine häufige Quelle für Injection-, Path-Traversal- und Hard-coded-Secret-Fehler, während die Standard-SAP-Tooling schwergewichtig und systemgebunden ist.
Dieses CLI analysiert exportierten ABAP-Quellcode statisch offline – keine SAP-Verbindung, kein Agent, keine Telemetrie – und schreibt einen XLSX-Bericht, auf dessen Grundlage Sie handeln können. Binden Sie es in CI ein, um Pull Requests zu prüfen.
Erfordert Python 3.9+ und
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
Wenn der Scan abgeschlossen ist, finden Sie abap_security_scan_report.xlsx im Projektordner:
| Option | Beschreibung | Standard |
|---|---|---|
path | Verzeichnis des zu scannenden ABAP-Quellcodes | (erforderlich) |
-c, --config | Pfad zur YAML-Konfigurationsdatei | config.yml |
Der Scanner liest eine YAML-Datei (Standard config.yml, überschreibbar mit -c). Wählen Sie die auszuführenden Prüfungen, die einzubeziehenden Dateiendungen und die auszuschließenden Muster:
checks:
- CheckCrossSiteScripting
- CheckSQLInjection
- CheckDirectoryTraversal
file_extensions:
- .abap
- .txt
exclude_patterns:
- "**/test/**"
checks/.run.checks: in Ihrer Konfigurationsdatei hinzu.# Unix-like
./run_tests.sh
# Windows
run_tests.bat
Pull Requests sind willkommen – neue Prüfungen, Testfälle, Bugfixes und Dokumentation helfen alle. Siehe CONTRIBUTING.md und befolgen Sie bitte den OWASP Code of Conduct.
Haben Sie eine Schwachstelle im Scanner selbst gefunden? Bitte befolgen Sie den Prozess zur verantwortungsvollen Offenlegung in SECURITY.md – eröffnen Sie kein öffentliches Issue für Sicherheitsmeldungen.
MIT. Ursprünglich beigetragen und gepflegt von RedRays. Die Editionen Cloud (SAP BTP) und Web (Management Console) sind kommerzielle Produkte; dieses OWASP-Projekt (das Open-Source-CLI) ist kostenlos und quelloffen.