
Amazons neues Open-Source-Projekt „Rex“ regelt, was Skripte tun dürfen
Amazon hat „Rex“ eingeführt, eine unter der Apache-2.0-Lizenz stehende Laufzeitumgebung, die richtlinienbasierte Zugriffskontrollen für die Ausführung von Skripten auf Hostsystemen durchsetzt.
Eine Übersetzung von 🇬🇧 Linuxiac.com
Amazon hat Rex veröffentlicht, eine Open-Source-Laufzeitumgebung, die die Sicherheit von Skripten erhöht, indem sie Autorisierungsrichtlinien durchsetzt, bevor Systemoperationen zugelassen werden.
Rex, kurz für „Trusted Remote Execution“, verknüpft Skripte mit Cedar-Richtlinien und überprüft jede Operation zur Laufzeit anhand dieser Richtlinien. Skripte werden in Rhai geschrieben, einer schlanken Sprache ohne integrierten Systemzugriff. Der Zugriff auf den Host ist nur über von Rex bereitgestellte Operationen möglich, die jeweils vor der Ausführung autorisiert werden müssen.
🎓 Die Grundidee hinter dem Projekt ist einfach: Es soll ein häufiges Problem bei der Automatisierung angehen, bei dem Skripte oft die Berechtigungen ihrer Ausführungsumgebung erben. So kann beispielsweise ein Skript, das eigentlich eine Logdatei überprüfen soll, unter Umständen auch Dateien ändern oder löschen, wenn der Kontext dies zulässt. Rex trennt die beabsichtigten Aktionen des Skripts von den vom Host-Besitzer gewährten Berechtigungen.
Amazon weist darauf hin, dass dies besonders wichtig für KI-Agenten ist, bei denen Skripte dynamisch generiert werden können, ohne dass jeder Systemaufruf von einem Menschen überprüft wird. Probleme können durch halluzinierten Code, Prompt-Injection oder eine zu weit gefasste Interpretation von Aufgaben entstehen. Rex verweigert jede Operation, die nicht durch die Richtlinie erlaubt ist.
Im Hintergrund nutzt Rex Cedar, die Richtlinien-Sprache von Amazon, um den Zugriff von Skripten zu definieren. Richtlinien können Aktionen wie das Öffnen von Dateien, das Lesen von Verzeichnissen, das Schreiben von Daten, das Auflösen von Hostnamen oder die Durchführung anderer Vorgänge zulassen oder verweigern. Skripte haben keinen direkten Zugriff auf den Host; alle Vorgänge werden über Rust-basierte APIs vermittelt, die von der Laufzeitumgebung bereitgestellt werden.
Laut dem GitHub-Repository des Projekts ist Rex eine sandboxed Rhai-Skript-Ausführungsengine, die die Cedar-Autorisierung auf jeden Systemvorgang anwendet. Sie steuert Datei-I/O, Netzwerkzugriff, Prozessverwaltung und Systemabfragen durch fein abgestimmte Autorisierungsprüfungen. Rex verwendet zudem, wo möglich, Dateideskriptoren anstelle von Pfaden, um Risiken durch Symlinks und Race-Conditions zu verringern.
Administratoren definieren eine Cedar-Richtlinie und führen Rhai-Skripte mit rex-runner aus. Wenn ein Skript einen Vorgang versucht, der durch die Richtlinie nicht erlaubt ist, blockiert Rex diesen und gibt einen Autorisierungsfehler zurück. Wenn ein Skript beispielsweise versucht, eine Datei zu erstellen und zu schreiben, während die Richtlinie nur das Lesen erlaubt, schlägt der Schreibversuch fehl, bis die Richtlinie aktualisiert wird.
Rex ist für Linux und macOS verfügbar und kann mit dem Rust-Paketmanager Cargo über den Befehl cargo install rex-runner installiert werden. Das Projekt steht unter der Apache-2.0-Lizenz und wird öffentlich auf GitHub entwickelt.
Weitere Details finden Sie in der Projektdokumentation.
Spendieren Sie Bobby einen ☕ Ko-fi
s3n🧩net wünscht viel Vergnügen















Comments