Wie kann man Linux gegen DMA-Angriffe schützen?

Wie kann man Linux gegen DMA-Angriffe schützen?

Wie kann ich mein Linux-System so konfigurieren, dass es gegen DMA-Angriffe geschützt ist? Gibt es eine Möglichkeit, diese unmöglich zu machen?

DMA-Angriffe

AuszugAus Wikipedia

In modernen Betriebssystemen wird nicht-systemischen (d. h. im Benutzermodus befindlichen) Anwendungen der Zugriff auf Speicherorte untersagt, die nicht ausdrücklich vom virtuellen Speichercontroller (MMU oder Memory Mapping Unit genannt) autorisiert wurden. Diese Architektur verhindert nicht nur Schäden durch unbeabsichtigte Softwarefehler und ermöglicht eine effizientere Nutzung des physischen Speichers, sondern ist auch ein wesentlicher Bestandteil der Sicherheit eines modernen Betriebssystems. Kernelmodustreiber, viele Hardwaregeräte und gelegentliche Benutzermodus-Schwachstellen ermöglichen jedoch den direkten, ungehinderten Zugriff auf den Adressraum des physischen Speichers. Der physische Adressraum umfasst den gesamten Hauptsystemspeicher sowie speicherabgebildete Busse und Hardwaregeräte (die vom Betriebssystem durch Lesen und Schreiben gesteuert werden, als wären sie normaler RAM).

Antwort1

Kurz gesagt, es ist nicht vollständig möglich, potenzielle Angriffsmethoden zu vereiteln. Wenn man sich den Wikipedia-Artikel ansieht, gibt es im Wesentlichen vier Möglichkeiten, die Sie kennen müssen:

  1. Kernelmodustreiber
  2. viele Hardwaregeräte
  3. Benutzermodus-Sicherheitslücken
  4. Soziale Entwicklung

Die beste Möglichkeit, Ihr Risiko zu mindern (und das ist alles, was Sie tun können, wenn Sie etwas sichern möchten), besteht darin, Ihr Risiko in Bezug auf die oben genannten vier Dinge zu kontrollieren.

Um 1 zu verhindern, geben Sie niemandem die Möglichkeit, Kerneltreiber zu laden. Installieren Sie außerdem keine nicht benötigten Treiber.

Um Punkt 2 zu verhindern, verweigern Sie den Benutzern den physischen Zugriff auf das System. Verwenden Sie ein sicheres Rechenzentrum, das den physischen Zugriff nur auf die Kernbediener des Computers beschränkt.

Um Punkt 3 zu verhindern, erlauben Sie Benutzern nicht, mehr Anwendungen auszuführen, als unbedingt erforderlich sind. Dies geht über das Ausführen hinaus. Installieren Sie nichts, was über das Erforderliche hinausgeht. Wenn es sich gccbeispielsweise um einen Produktionsserver handelt, installieren Sie darauf nichts.

Um Punkt 4 zu verhindern, schulen Sie Ihr Supportpersonal in der Kunst, Betrug zu erkennen.

Ein weiterer Punkt ist, sicherzustellen, dass Updates zeitnah installiert und überprüft werden. Aktualisieren Sie das System beispielsweise nicht einmal pro Jahr.

Antwort2

Deaktivieren Sie Thunderbolt- und Firewire-Adapter und verriegeln Sie die Box physisch, damit niemand eine PCI(e)-Karte einstecken kann.

Antwort3

Nehmen Sie eine Zange und reißen Sie Anschlüsse oder Zugangspunkte auf Ihrer Platine physisch ab. Ich denke, wenn der Dieb keinen Weg findet, physisch in die Hardware einzudringen, sind Sie so gut wie sicher. Achten Sie nur darauf, nichts in der Umgebung zu beschädigen, dann sollte alles gut gehen. Natürlich werden dadurch auch bestimmte Punkte funktionsunfähig, also stellen Sie sicher, dass Sie absolut sicher sind, dass Sie das versuchen wollen.

verwandte Informationen