wm-audit · webMethods API Gateway · ein Produkt von Leanofy

Was Ihr webMethods-Gateway offenlässt – direkt aus dem Export

Eine API-Spezifikation sagt, was eine Schnittstelle tun soll. Der Export Ihres Gateways sagt, was sie tatsächlich tut: welche Policies greifen, wohin weitergeleitet wird, welche Protokolle erlaubt sind. wm-audit liest diesen Export und zeigt die Lücken – auf Ihrem Rechner, ohne Netzwerk und ohne eine einzige Anfrage an Ihre APIs.

Läuft lokalKein NetzwerkÖffnet keine Passwörter und SchlüsselBericht mit AufgabenlisteJUnit-Bericht für CIWindows · macOS · Linux

Dokumentation: Kommandozeile, JUnit, Prüfregeln →

Open Source · Apache-2.0

Quelltext offen: jede Regel nachlesbar

Der Quelltext von wm-audit liegt öffentlich auf GitHub: das Rust-Programm mit allen Prüfregeln, Berichtsformaten, Prüffällen und Tests – und die vollständige Dokumentation der Kommandozeile. Ihr Security-Team kann jede Aussage im Code prüfen und das Programm selbst bauen.

github.com/cehlert9999/wm-audit

Video · 26 Sekunden

NIS2 verlangt, die Wirksamkeit zu bewerten – auch am API-Gateway

wm-audit prüft die Konfiguration Ihres Gateways bei jeder Änderung automatisch und macht daraus eine Aufgabenliste mit Anleitung und Test je Aufgabe. Jeder Bericht lässt sich als Nachweis archivieren.

Ton per Klick einschalten · Gezeigt: echter Bericht aus einem Lauf gegen unseren Testexport

Echte Ausgabe · Auszug
$ wm-audit gateway-export.zipwm-audit 1.0.0 · gateway-export.zip (zip)10 APIs gelesen (10 eindeutig) · 1 Dateien übersprungen · 2 gesperrte Einträge nicht geöffnet Befunde: 12 (7 belegt)  CRITICAL  belegt          gw.anonymous_allowed          AnonymAPI 1.0  HIGH      belegt          gw.identify_or                OderAPI 1.0  HIGH      belegt          gw.plaintext_backend          RoutingKlartextAPI 2.0  MEDIUM    wahrscheinlich  gw.no_traffic_limit           OhneLimitAPI 1.0  …

Auszug aus einem Lauf gegen unsere Testexporte. Im Browser öffnet sich derselbe Bericht mit Aufgabenliste: was sofort zu beheben ist, mit Schritt-für-Schritt-Anleitung für das Gateway und der Datei im Export, aus der jeder Befund stammt.

Nutzen · Beispiel: 100 APIs

Ein Lauf statt 100 Durchgänge

Von Hand prüft man im API Gateway jede API einzeln: öffnen, Reiter Policies, die Policy-Stufen durchsehen. wm-audit prüft den ganzen Katalog auf einmal – und liefert die Aufgabenliste gleich mit.

1.000

Einzelprüfungen

10 Prüfregeln je API, in einem Lauf über den ganzen Katalog

0,01 s

für 100 APIs

gemessen: 556 Exportdateien; 1.000 APIs in 0,15 s

1 statt 100

Durchgänge

von Hand je API: öffnen, Reiter Policies, bis zu sieben Policy-Stufen prüfen

Beispielrechnung: Bei angenommenen 5 Minuten je API sind 100 APIs von Hand gut 8 Stunden Klickarbeit – nach jeder Änderung von vorn. wm-audit wiederholt die Prüfung in jeder Pipeline und zeigt Product Owner und QA auf einen Blick, was sofort zu tun ist.

Prüfregeln

Zehn Prüfungen auf die Konfiguration, die tatsächlich greift

Belegte Befunde lesen sich direkt aus der Konfiguration ab und fließen in die Bewertung ein. Hinweise sind starke Anzeichen und werden getrennt ausgewiesen.

critical

Identify-Policy lässt anonymen Zugriff zu

Die Policy ist da, hebt sich über allowAnonymous aber selbst auf.

OWASP API2
high

API ohne Identify-and-Authorize-Policy

Das Gateway reicht jeden Aufrufer an das Backend durch.

OWASP API2
high

Identifikationsverfahren ODER-verknüpft

Wo API-Key und Token gemeint waren, genügt der API-Key allein.

OWASP API2
high

Gateway nimmt unverschlüsseltes HTTP an

Zugangsdaten sind auf dem Weg zum Gateway mitlesbar.

OWASP API8
high

Weiterleitung an ein Klartext-Backend

Erkannt am Ziel der Routing-Policy, Aliase aufgelöst.

OWASP API8
medium

Nur Anwendungs-, keine Benutzeridentität

Wer handelt, muss dann allein das Backend prüfen.

OWASP API2
medium

Security-Header gehen ans Backend

passSecurityHeaders reicht den Authorization-Header weiter.

OWASP API8
medium

Keine Mengen- oder Größenbegrenzung

Auf API-Ebene ist keine Traffic-Policy gesetzt.

OWASP API4
low

Kontingent über einen Tag oder länger

Laut IBM wird es erst nach Ablauf des Intervalls aufgefüllt – Spitzen bremst es nicht.

OWASP API4
low

Anfragen werden protokolliert

Log-Invocation kann Nutzdaten in die Logs schreiben.

OWASP API8

Nur zugeordnete Policies zählen

Eine Policy-Aktion zählt nur, wenn sie im Gateway einer Stufe zugeordnet ist. Eine liegengebliebene Datei verdeckt keine Lücke.

Das echte Routing-Ziel

Ob hinter dem Gateway verschlüsselt weitergeleitet wird, entscheidet die Routing-Policy samt Alias, nicht die Serverliste der importierten Spezifikation.

Test und Produktion getrennt

Liegen mehrere Umgebungen in einem Export, prüft wm-audit jede für sich. Eine Policy aus der Produktion verdeckt keine Lücke im Test.

Lastgrenzen · Lastrechner

Was eine Rate-Limit-Policy bei einer Lastspitze wirklich tut

wm-audit liest die Traffic-Optimization-Policies jeder API aus. Im Bericht spielt der Lastrechner damit Ihre Lastprofile durch: was das Backend erreicht, was das Gateway mit 429 ablehnt und was der Bulkhead mit 503.

Lastrechner im wm-audit-Bericht: Ein Tageskontingent lässt eine Lastspitze voll durch, ist nach 14,4 Stunden leer und lehnt danach bis zum Ende des Intervalls mit 429 ab.

Echter Bericht · Grenze aus dem Testexport: 50.000 Aufrufe je Tag

Ein Kontingent, kein Glätter

Laut IBM zählt das Gateway nach dem Token-Bucket-Verfahren und füllt erst nach Ablauf des Intervalls auf. Ein Tageskontingent lässt die ganze Spitze durch.

Danach 429 für alle

Ist das Kontingent leer, lehnt das Gateway bis zum Ende des Intervalls ab – je nach Einstellung auch Anwendungen, die sich normal verhalten.

Annahmen offen ausgewiesen

Knoten, Bulkhead und Antwortzeit stehen nicht im Export. Der Rechner fragt sie ab und nennt zu jeder Modellaussage die IBM-Quelle.

CI/CD · JUnit

Läuft in jeder Pipeline – als Testbericht

Mit --junit wird jede API zur Testsuite und jede Prüfregel zum Testfall. Jenkins, GitLab und Azure DevOps zeigen das Ergebnis wie Ihre übrigen Tests; mit --fail-on stoppt ein belegter Befund die Pipeline.

Jenkinsfile · Auszug
steps {
  sh 'wm-audit gateway-export.zip --html -o wm-audit-bericht.html'
  sh 'wm-audit gateway-export.zip --junit -o wm-audit-junit.xml --fail-on high'
}
post {
  always { junit 'wm-audit-junit.xml' }
}

Kein Zeitstempel im Bericht: Derselbe Export ergibt dieselbe Datei, Verläufe je Regel und API bleiben über die Läufe vergleichbar. Alle Optionen und Beispiele für GitLab und Azure DevOps →

Für Ihre Security-Freigabe

Gebaut, um durch Ihre Freigabe zu kommen

Jede Zusage ist mit einem automatischen Test belegt. Das Datenblatt fasst sie zusammen, das ausführliche Sicherheitsdatenblatt nennt zu jeder Zusage den Test, der sie belegt.

Kein Netzwerk

Keine Netzwerk- oder TLS-Bibliotheken im Programm. Eine Bann-Liste in der Lieferkettenprüfung schließt sie aus.

Öffnet keine Passwörter und Schlüssel

PassmanData, Keystore, Truststore und Kerberos werden nie geöffnet, nur gezählt. Passwörter in Adressen werden im Bericht geschwärzt.

Nur lesend

Der Export bleibt unverändert, ein ZIP wird nie entpackt. Geschrieben wird nur die Berichtsdatei, die Sie angeben.

Speichersicher

Geschrieben in Rust, ohne unsafe-Code. Programmabbrüche über unwrap und panic sind per Prüfregel ausgeschlossen.

Robust gegen manipulierte Exporte

Feste Grenzen gegen ZIP- und JSON-Bomben. Doppelte ZIP-Einträge werden abgelehnt, Symlinks nicht verfolgt.

Transparent

Jede übersprungene Datei steht mit Grund im Bericht, dazu der SHA-256 der geprüften Datei.

Gleiches Ergebnis bei gleichem Export

Gleicher Export, byte-gleicher Bericht. Ergebnisse lassen sich vergleichen und archivieren.

Gegen eine Referenz geprüft

Identisch mit der Referenzfassung: 15 feste Prüffälle und 10.000 zufällig erzeugte Exporte.

23

Bausteine

alle Abhängigkeiten, nur aus crates.io

3

Lizenzen

MIT, Apache-2.0, Zlib – kein Copyleft

0

bekannte Schwachstellen

cargo-audit gegen RustSec, Stand 13.10.2026; wöchentlich neu geprüft

1:1

reproduzierbar

zwei Builds bitgleich, Stückliste als CycloneDX

Was kein Export beantworten kann

Diese Fragen nennt wm-audit, statt sie zu bewerten

  • ?Wird ein erfundener API-Key abgewiesen?
  • ?Wird die JWT-Signatur wirklich geprüft?
  • ?Sieht ein Nutzer Daten, die ihm nicht gehören (BOLA)?
  • ?Wird die Rollenprüfung durchgesetzt?

Das zeigt erst ein Test gegen die laufende API. sectestx, das Werkzeug für Laufzeittests von Leanofy, prüft diese Fragen live gegen Ihre Testumgebung, im eigenen Netz.

Häufige Fragen

Was Security-Teams zu wm-audit fragen

Nein. wm-audit läuft auf Ihrem Rechner und braucht keine Netzwerkverbindung. Der Export und der Bericht bleiben bei Ihnen.

Nächster Schritt

Ihren Gateway-Export prüfen – bei Ihnen, nicht bei uns

Geben Sie Ihrem Security-Team das Datenblatt, oder sprechen Sie mit uns über den Einsatz in Ihrem Haus. Der Export verlässt Ihr Netz dabei nicht.

Zur Dokumentation →