eMicro: Real-Time Multi-Hop Access Control for Microservices with eBPF
Das Papier stellt eMicro vor, ein effizientes, eBPF-basiertes pfadbewusstes Verteidigungssystem, das eine Echtzeit-Multi-Hop-Zugriffskontrolle für Microservices durch die Kodierung von Sicherheitsrichtlinien als deterministische endliche Automaten erzwingt, um komplexe Multi-Hop-Angriffe mit vernachlässigbarem Laufzeitoverhead zu verhindern.
Originalarbeit lizenziert unter CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Dies ist eine KI-generierte Erklärung des untenstehenden Papers. Sie wurde nicht von den Autoren verfasst oder gebilligt. Für technische Genauigkeit konsultieren Sie das Originalpaper. Vollständigen Haftungsausschluss lesen
Stellen Sie sich das Internet als eine riesige, geschäftige Stadt vor, in der jedes Gebäude ein winziger, spezialisierter Arbeiter namens „Mikroservice“ ist. Anstatt dass ein einziger massiver Fabrikbetrieb alles erledigt, reichen diese Arbeiter Notizen aneinander weiter, um eine Aufgabe zu erfüllen. Manchmal geht eine Notiz von der Bäckerei zur Bank, dann zum Sicherheitswachmann und schließlich zum Tresor. So funktionieren moderne Apps: Sie bestehen aus Tausenden dieser winzigen Dienste, die einen komplexen Tanz miteinander aufführen.
Aber hier liegt der knifflige Teil: Sicherheitswachleute prüfen normalerweise nur die Person, die direkt vor ihnen steht. Wenn die Bäckerei eine Notiz an die Bank sendet, prüft der Wachmann, ob die Bäckerei berechtigt ist, mit der Bank zu sprechen. Er schaut jedoch nicht darauf, wie die Bäckerei dorthin gelangt ist. Dies schafft eine hinterhältige Sicherheitslücke. Ein Bösewicht könnte die Bäckerei dazu bringen, eine Notiz an die Bank zu senden, und die Bank denkt dann: „Oh, die Bäckerei spricht gerade mit mir, das ist in Ordnung!“ – ohne zu realisieren, dass die Bäckerei eigentlich von einem Hacker gezwungen wurde. Dies wird als „Multi-Hop-Angriff“ bezeichnet, bei dem der Bösewicht von einem legitimen Arbeiter zum nächsten springt und eine Vertrauenskette aufbaut, die bei jedem einzelnen Schritt völlig in Ordnung aussieht, aber von Anfang bis Ende eine Katastrophe darstellt.
Das Papier, das Sie gleich lesen werden, mit dem Titel eMicro, befasst sich genau mit diesem Problem. Es stellt die Frage: Wie verhindern wir diese hinterhältigen Ketten, ohne alles zu verlangsamen oder jeden Arbeiter zu zwingen, einen riesigen, schweren Rucksack voller Geschichte zu tragen? Die Autoren, ein Team von Forschern von der Virginia Tech, IBM und anderen, haben ein System entwickelt, das wie ein superintelligenter, unsichtbarer Verkehrspolizist fungiert. Anstatt nur die Person an der Tür zu kontroll Sie, kennt dieser Polizist die gesamte Geschichte der Reise der Notiz. Er verwendet eine spezielle Technologie namens eBPF (die es Programmen ermöglicht, sicher im Kernmotor des Computers zu laufen), um den Pfad zu verfolgen, ohne die Uniformen der Arbeiter ändern zu müssen. Sie verwenden auch einen cleveren mathematischen Trick namens DFA (eine Art Flussdiagramm), um die Regeln so effizient zu speichern, dass sie fast keinen Platz beanspruchen. Das Ergebnis? Ein System, das diese hinterhältigen Angriffe in Echtzeit stoppt, unglaublich schnell arbeitet und sich ohne Mühe in massive Cloud-Systeme einfügt.
Die heimtückische Kettenreaktion
Angenommen, Sie haben eine Foto-Sharing-App. Sie hat eine Eingangstür (nginx), einen Fotoeditor (media), einen Lagerraum (cloud) und einen Tresor für Passwörter (creds). An einem normalen Tag fragt ein Nutzer die Eingangstür nach einem Foto. Die Eingangstür fragt den Editor, der Editor fragt den Lagerraum, und schwupps – Sie erhalten Ihr Bild. Dies ist ein sicherer Pfad.
Stellen Sie sich nun vor, ein Hacker findet einen winzigen Riss in der Eingangstür. Er überlistet die Eingangstür dazu, den Passwort-Tresor nach einem Schlüssel zu fragen, indem er vorgibt, es sei eine ganz normale Anfrage. Ein traditioneller Sicherheitswachmann würde auf die Eingangstür und den Passwort-Tresor schauen und sagen: „Hey, die Eingangstür darf manchmal mit dem Passwort-Tresor sprechen, also geht das in Ordnung!“ Der Wachmann übersieht dabei, dass die Eingangstür eigentlich mit dem Fotoeditor hätte sprechen sollen, nicht mit dem Tresor. Der Hacker hat den Arbeitsablauf erfolgreich „verbogen“.
Dies ist das „Multi-Hop“-Problem. Der Angriff ist keine große Explosion; es ist eine Serie von kleinen, legal aussehenden Schritten, die sich zu einer Katastrophe summieren. Das Papier erklärt, dass alte Sicherheitssysteme wie Wachleute sind, die nur die Person betrachten, die direkt vor ihnen steht. Es ist ihnen egal, ob diese Person fünf Schritte zuvor von einem Fremden geschubst wurde.
Hier kommt eMicro: Der Geschichtenerzähler
Die Autoren dieses Papiers haben eMicro entwickelt, um dies zu beheben. Betrachten Sie eMicro als ein System, das jeder Anfrage ein „Geschichts-Tag“ gibt. Wenn eine Anfrage startet, erhält sie ein winziges Etikett. Wenn sie sich von der Eingangstür zum Editor bewegt, aktualisiert sich das Etikett zu: „Ich komme von der Eingangstür.“ Wenn sie sich zum Lagerraum bewegt, sagt das Etikett: „Ich komme von der Eingangstür, dann vom Editor.“
Wenn ein Hacker versucht, die Eingangstür dazu zu bringen, direkt zum Passwort-Tresor zu gehen, wäre das Etikett falsch. Es würde sagen: „Ich bin die Eingangstür“, aber der Tresor erwartet ein Etikett, das besagt: „Ich bin die Eingangstür nachdem ich mit dem Editor gesprochen habe.“ Das System erkennt die Unstimmigkeit und stoppt die Anfrage sofort.
Aber hier liegt die Magie: Eine vollständige Geschichts-Markierung für jede einzelne Anfrage mitzuführen, wäre schwerfällig und langsam. Stellen Sie sich vor, Sie müssten bei jedem Mal, wenn Sie eine Textnachricht senden, eine 50-seitige Biografie von allen Menschen, mit denen Sie zuvor gesprochen haben, beilegen. Das würde das Netzwerk verstopfen.
Das magische Flussdiagramm (DFA)
Um das Problem des „schweren Rucksacks“ zu lösen, haben die Forscher einen cleveren mathematischen Trick namens Deterministic Finite Automaton (DFA) verwendet. Anstatt die ganze Geschichte auszuschreiben, verwandelt das System die Regeln in ein riesiges, effizientes Flussdiagramm.
Stellen Sie sich ein Flussdiagramm vor, bei dem jeder Schritt, den Sie machen, Sie zu einem neuen Kreis führt:
- Kreis 0: Start.
- Kreis 1: Sie haben mit der Eingangstür gesprochen.
- Kreis 2: Sie haben mit der Eingangstür, dann mit dem Editor gesprochen.
- Kreis 3: Sie haben mit der Eingangstür, dem Editor und dann dem Lagerraum gesprochen.
Das System trägt nicht die Worte „Eingangstür, Editor, Lagerraum“ mit sich herum. Es trägt lediglich die Nummer des Kreises, in dem man sich befindet (z. B. „Kreis 3“). Wenn Sie versuchen, von Kreis 1 direkt zum Passwort-Tresor zu springen, sagt das Flussdiagramm: „Warte, es gibt keine Linie von Kreis 1 zum Tresor!“ und blockiert Sie.
Dies ist unglaublich effizient. Das Papier zeigt, dass eine „Standardmethode“, die die Geschichte aufschreibt, hunderte von Bits benötigen würde (wie eine lange Kette aus Einsen und Nullen), während diese Flussdiagramm-Methode die Information auf nur wenige Bits schrumpft. In ihren Tests speicherten sie 50 Millionen verschiedene Sicherheitsregeln auf nur 100 MB Speicherplatz. Das ist so, als würde man eine Bibliothek von Millionen Büchern in ein einziges Smartphone passen.
Der unsichtbare Verkehrspolizist (eBPF)
Wie aktualisiert eMicro diese Etiketten so schnell, ohne jedes einzelne Computerprogramm zu zwingen, seinen Code zu ändern? Die Antwort ist eBPF.
Betrachten Sie eBPF als ein spezielles Werkzeug, mit dem Sie winzige, sichere Programme innerhalb der Engine des Computers (dem Kernel) ausführen können. Normalerweise müssten Sie, um zu verfolgen, was passiert, jeden einzelnen Applikationsentwickler bitten, einen Tracker zu installieren, was ein Albtraum ist. eMicro macht das nicht. Stattdessen hängt es seine winzigen Programme an die Netzwerkleitungen und die internen Prozesse des Computers an.
Wenn ein Anfrage-Paket einen Dienst verlässt, fängt das eBPF-Programm es ab, aktualisiert die „Kreisnummer“ (das Etikett) und lässt es weiterziehen. Das geschieht so schnell, dass die Anfrage es nicht einmal bemerkt. Das Papier hat dies gemessen und festgestellt, dass eMicro weniger als 1 Mikrosekunde (das ist eine Millionstel Sekunde) zur Zeit hinzufügt, die benötigt wird, um eine Anfrage zu prüfen. Es ist schneller, als ein menschliches Auge blinzeln kann.
Was sie herausgefunden haben
Das Team hat eMicro in verschiedenen Szenarien getestet, um sicherzustellen, dass es tatsächlich funktioniert:
- Das Stoppen der Angriffe: Sie simulierten drei Arten von hinterhältigen Angriffen, einschließlich Hackern, die Dienste dazu überreden, mit den falschen Stellen zu kommunizieren, sowie die Nutzung von Schadsoftware, um das Netzwerk zu scannen. eMicro blockierte 100 % dieser Angriffe. Im Gegensatz dazu fingen die alten „Nachbar-Check“-Sicherheitssysteme nur einen winzigen Bruchteil davon ab. Zum Beispiel erkannten die alten Methoden in einer 6-stufigen Kette nur 0,3 % der böswilligen Pfade, während eMicro alles entdeckte.
- Geschwindigkeit: Sie ließen 12 Millionen Anfragen durch ihr System laufen. eMicro hielt den Datenverkehr reibungslos aufrecht und verursachte kaum Verzögerungen. Es war 35 % schneller als ältere, zentralisierte Systeme, die dasselbe versuchten, aber jedes Mal einen zentralen „Chef“ um Erlaubnis fragen mussten.
- Speicherplatz: Wie bereits erwähnt, speicherten sie 50 Millionen Richtlinien in nur 100 MB Arbeitsspeicher. Dies ist eine massive Verbesserung gegenüber älteren Methoden, die Gigabytes an Platz benötigt hätten.
- Zuverlässigkeit: Sie testeten sogar, was passiert, wenn ein Computer im Netzwerk abstürzt. eMicro nutzt ein System namens Raft, um sicherzustellen, dass alle Computer sich über die Regeln einig sind. Wenn einer abstürzt, übernehmen die anderen die Aufgabe, und das System stellt den Betrieb in unter 4 Sekunden wieder her.
Warum es wichtig ist
Das Papier kommt zu dem Schluss, dass eMicro eine praktische, reale Lösung ist. Es erfordert nicht das Umschreiben der gesamten Softwarewelt und verlangsamt die Abläufe nicht. Es beweist, dass man einen Sicherheitswachmann haben kann, der die ganze Geschichte einer Anfrage kennt und nicht nur die Person, die direkt vor ihm steht.
Die Autoren weisen vorsichtig darauf hin, dass ihr System zwar großartig für Mikroservices ist, aber kein magischer Zauberstab für jedes Sicherheitsproblem ist. Es setzt voraus, dass die Kern-Engine des Computers (der Kernel) sicher ist. Wenn ein Hacker die volle Kontrolle über das „Gehirn“ des Computers erlangt, könnte er den Wachmann ausschalten. Aber für die überwiegende Mehrheit der Cloud-Angriffe, bei denen Hacker versuchen, durch die Ritzen zwischen den Diensten zu schlüpfen, schließt eMicro diese Lücken.
Kurz gesagt: eMicro nimmt das komplexe, unsichtbare Netz moderner Apps und gibt ihm ein klares, schnelles und unzerbrechliches Regelwerk. Es verwandelt eine chaotische Stadt von Arbeitern in ein gut organisiertes Team, in dem jeder genau weiß, mit wem er sprechen soll, und niemand durch die Hintertür eindringen kann.
Ertrinken Sie in Arbeiten in Ihrem Fachgebiet?
Erhalten Sie tägliche Digests der neuesten Arbeiten passend zu Ihren Forschungsbegriffen — mit technischen Zusammenfassungen, in Ihrer Sprache.