SavageSkull schrieb:
Da ich mich nicht in den rabbit hole von competitiven online spielen aufhalte, könnt ihr mit kurz erklären, warum ein signierter und geschützter Kernel gegen Cheating hilft?
Cheats zielen alle letztendlich darauf ab, Software zur Laufzeit zu beeinflussen. Das tut man, indem man direkten Einfluss auf den Speicher nimmt, in dem die Software gerade läuft. Dazu kann man entweder die Softwarekomponenten oder Libaries, die die Software zur Laufzeit einbindet, vorab manipulieren, wovor sie sich in aller Regel selbst schützt, oder von außen versuchen, die Speicheradressen direkt zu manipulieren.
Die Absolute Hoheit im System über alles hat der Kernel. Er ist der Herr über die Speicheradressen. Im Gegensatz zu anderen Systemen, ist in Linux der Kernel in aller Regel nicht gesondert geschützt. Das heißt der Kernel selbst kann jederzeit beliebig verändert und neugebaut werden, oder man baut dafür Module, so wie das ja auch bei einigen Treibern gemacht wird, die der Kernel zur Laufzeit einbindet.
Damit hat man als User stets volle Kontrolle über die zentrale Instanz im System. Das ist einerseits natürlich etwas Gutes, denn diesen Grad an Souveränität bieten dir proprietäre Systeme nicht, andererseits ist dadurch eben der Systemkern stets vollständig manipulierbar. Cheating auf Kernelebene wäre durch die offene Natur des Systems einfach möglich. Du kannst ja auch jederzeit zwischen den Kerneln wechseln.
Wenn der Kernel aber signiert wird, so beglaubigt jemand dessen Zustand, so wie er ist. Du kannst dir das so vorstellen, als wäre der Kernel eine Zahl und du berechnest daraus die Quersumme. Und danach beglaubigst du eben jene Quersumme durch eine Unterschrift, wieder eine Zahl, und beide werden in bestimmter Weise zusammengerechnet. Jede Veränderung daran würde diese Quersumme verändern, eine entsprechende Prüfung würde also fehlschlagen, weil ein anderes Ergebnis bei der Verrechnung von Signatur und Prüfsumme herauskommt. Das Gleiche kannst du mit Modulen machen. Dadurch kannst du sicherstellen, dass alles in einem vorher abgemachten Zustand ist.
Damit kannst du effektiv Cheating auf Kernel-Ebene entgegenwirken. Wenn die Signaturprüfung Teil des Bootprozesses wird, booten auch andere modifizierte Kernel nicht mehr. Wie weit sowas aber gehen sollte oder muss, ist eine Detail- und Umsetzungsfrage und nicht zum Schluss auch eine Akzeptanzfrage.