23.16 LKMs
Loadable Kernel Modules (zu Deutsch »ladbare Kernel-Module«) stellen eine modulare Erweiterung für den Kernel dar. Sie können während der Laufzeit des Systems in den Kernel hinein- und wieder herausgeladen werden und seine Funktionalitäten – etwa um den Support eines Dateisystems oder eines Treibers – erweitern.
Auf den meisten Nicht-BSD-Systemen <Je nach Securelevel ist das Laden von Kernel-Modulen auch unter BSD-Systemen möglich. Unter OpenBSD zum Beispiel ist es standardmäßig jedoch nicht möglich und daher auch sehr unwahrscheinlich, dass ein LKM geladen wird. Die BSD-Securelevel können nämlich nicht während des Betriebs heruntergesetzt werden.> ist das Laden solcher Module seitens des Superusers problemlos möglich. Natürlich bieten solche Module für Angreifer nahezu perfekte Ziele. Ein guter Unix-Hacker weiß, wie er ein LKM tarnen und nutzen kann. Nutzen kann er es nämlich für eine ganze Menge verschiedenster Angriffsmöglichkeiten: Eine Modifikation des Keyboard-Treibercodes, um alle Tastendrücke (z. B. Passwörter) zu protokollieren, das Filtern von Paketen und das Einschleusen von Paketen wären genauso möglich wie die Integration einer in der Prozesstabelle unsichtbaren Backdoor oder das Verstecken von Dateien und ganzen Verzeichnissen. Allerdings gehört zur Entwicklung solchen Codes auch eine gehörige Portion Know-how im Bereich der Kernel-Programmierung.