LOKALES MQTT SICHERHEITSWERKZEUG

Suchen Sie vor der Bereitstellung nach riskanten MQTT-Topic-Berechtigungen

Lintieren Sie ein festes, zeilenbasiertes ACL-Dokument für MQTT-Platzhalterfehler und RunMQTT-Mandanten-, Geräte- und Richtungsrisiken. Die Analyse erfolgt vollständig in diesem Browser-Tab.

INTERAKTIVER CHECK

Lintieren Sie ein ACL-Dokument lokal

Beginnen Sie mit einem sicheren oder bewusst unsicheren Beispiel. Die Ergebnisse verweisen auf Zeilennummern, ohne das Dokument an RunMQTT oder einen Analysedienst zu senden.

Nur lokale Analyse

Ihre Richtlinie bleibt in diesem Browser-Tab. Es wird nicht hochgeladen, protokolliert, in einem URL abgelegt oder im lokalen Speicher gespeichert.

Eine Anweisung oder Regel pro Zeile. Kommentare beginnen mit //.

Analysieren Sie das Dokument, um zeilenspezifische Ergebnisse zu sehen.

FESTER EINGABEVERTRAG

Eine explizite Grenze pro Zeile

Das Format ist bewusst kompakt. Es bildet ein Profil, einen optionalen festen Mandantenbereich, eine Identität und gerichtete ACL-Regeln ab.

RunMQTT-Beispiel für Geräte
// Comments start with //
profile runmqtt
scope tenants/acme
principal device sensor-42
publish tenants/acme/devices/sensor-42/telemetry
subscribe tenants/acme/devices/sensor-42/commands/#

Verwenden Sie das Profil mqtt für reine Protokollprüfungen oder das Profil runmqtt zum Hinzufügen von Bereichs-, Geräte- und Richtungsprüfungen.

Jede ACL-Regel beginnt mit „Publish“, „Subscribe“ oder beidem, gefolgt von genau einem MQTT-Topic-Filter.

Der RunMQTT-Gültigkeitsbereich ist ein festes Topic-Präfix, mit dem der Linter Zugriffe außerhalb des Mandantenbereichs erkennt. Er wird weder hochgeladen noch einem Broker hinzugefügt.

REGELSATZ

Normprüfungen und Produktprüfungen bleiben getrennt

Jeder Befund ist mit MQTT oder RunMQTT gekennzeichnet, sodass eine Protokollanforderung nicht mit einem produktspezifischen Sicherheitsmodell verwechselt wird.

MQTT-Filtersyntax

Überprüft #-Platzierung, Verwendung auf ganzer Ebene +, UTF-8-Länge, Nullzeichen und breite Stammplatzhalter anhand der MQTT-Topic-Filterregeln.

Duplikate und Überlappungen

Findet doppelte Berechtigungen und Filter, die bereits in einer umfassenderen Regel in derselben Richtung enthalten sind.

RunMQTT Grenzen

Prüft, ob Regeln innerhalb des deklarierten festen Bereichs bleiben und Geräteidentitäten weder eine fremde Geräte-ID noch Wildcards verwenden.

RunMQTT Richtungsheuristik

Markiert den Veröffentlichungszugriff des Geräts auf Befehlskanäle, den Abonnementzugriff des Geräts auf Telemetriekanäle und bidirektionale Gewährungen auf Richtungskanälen.
METHODE UND TESTDATEN

Reproduzierbare Regeln, keine Punktzahl

Der Linter liefert deterministische Regelcodes und Zeilennummern. Er vergibt weder einen erfundenen Sicherheitswert noch leitet er daraus die tatsächliche Durchsetzung im Broker ab.

Die MQTT-Syntax und das Überlappungsverhalten sind an die OASIS-Topic-Regeln MQTT 5.0 gebunden.
Die Seite und die automatisierten Tests verwenden dieselben sicheren und bewusst unsicheren Beispieldaten.
Parser, Regel-Engine, Fixtures und Tests sind im öffentlichen GitHub-Repository verfügbar.
Die Repository-MIT-Lizenz deckt den Linter-Code und die Fixtures ab.
GRENZEN

Statische Ergebnisse sind kein Sicherheitsaudit

Ein eindeutiges Ergebnis bedeutet lediglich, dass das gelieferte Dokument die modellierten Prüfungen bestanden hat. Entscheidend bleiben weiterhin die Brokerkonfiguration und negative Autorisierungstests.

Der Linter stellt keine Verbindung zu einem Broker her und bestätigt nicht dessen effektives ACL-Verhalten.
Vorrangregeln für Deny, vererbte Rollen, Shared Subscriptions und anbieterspezifische Erweiterungen werden nicht abgebildet.
Telemetrie- und Befehlsrichtungsergebnisse verwenden Namenskonventionen und erfordern eine menschliche Überprüfung.
Fügen Sie keine Anmeldeinformationen oder Payloads ein. Für das Eingabeformat sind nur Topic-Berechtigungen erforderlich.