Um bestimmte Windows-Programme in WINE auszuführen, müssen Sie diese Problemumgehung ausführen:
echo 0|sudo tee /proc/sys/kernel/yama/ptrace_scope
Laut den Support-Websites liegt dies an einem Fehler im Ubuntu-Kernel, der verhindert, dass ptrace und WINE gut zusammenspielen.
Mit dem obigen Befehl setzen Sie den ptrace auf 0, was nach meinen Recherchen (frag mich nicht, auf welchen Websites ich viele davon gesehen habe) mit den Interaktionen zwischen Programmen zu tun hat. Die Einstellung 0 ist toleranter als die Einstellung 1.
Ich muss davon ausgehen, dass es einen guten Grund gab, warum Ubuntu ptrace = 1 haben wollte. Dies führt mich zurück zur Kurzform der Frage.
Besteht das Risiko, ptrace = 0 zu setzen? Geringere Sicherheit? Probleme beim Debuggen? irgendwelche anderen, an die ich nicht gedacht habe ???
PS: Wenn Sie dies lesen und sich fragen, was der Fehler verursacht, werden die Windows-Programme überhaupt nicht geöffnet. Im Systemmonitor werden viele Instanzen des Programms angezeigt, die versuchen, sich zu öffnen, und schließlich werden sie alle beendet, und wenn Sie das Programm ausführen Für das Terminal erhalten Sie eine Fehlermeldung, die Sie darüber informiert, dass die maximale Anzahl von Programminstanzen erreicht wurde.
Antworten:
Kurze Antwort: Noch keine praktische Gefahr, aber zum besseren Verständnis weiterlesen ...
Was ist das überhaupt ?
Nein, ptrace-Schutz ist eine bewusste Kernel-Sicherheitsmaßnahme, die erstmals um Ubuntu 10.10 eingeführt wurde. Es ist kein Fehler und wird daher nicht "behoben".
In einfachen Worten, der Standardwert
ptrace_scope
von verhindert1
, dass ein Prozess einen anderen überprüft und ändert, es sei denn, der zweite Prozess (untergeordnet) wurde vom ersten Prozess (übergeordnet) gestartet.Dies kann bei einigen Programmen unter Wine zu Problemen führen, da
wineserver
diese Programme über "Windows-Dienste" verfügen.Was sind die Risiken bei der Einstellung
ptrace_scope
auf0
?Dadurch wird das alte Verhalten wiederhergestellt, bei dem ein Prozess einen anderen Prozess "verfolgen" kann, selbst wenn keine Eltern-Kind-Beziehung besteht.
Theoretisch kann ein Teil der Malware dies nutzen, um Ihnen / Ihrem Computer Schaden zuzufügen. zB kann es sich an Firefox anhängen und alle Ihre URLs / Passwörter usw. protokollieren. In der Praxis ist dies äußerst unwahrscheinlich, es sei denn, Sie installieren blind Binär-Debs von zufälligen Sites usw.
Soweit das Debuggen geht, die
0
sind Einstellungen in der Tat erforderlich , fürgdb
,strace
etc. zu Nicht-Kinder zu befestigen , wenn Sie sie mit erhöhten Rechten (sudo) ausführen.Was sind die Probleme mit der Problemumgehung?
ptrace_scope
es sich um einen globalen Wert handelt und0
alle Prozesse auf Ihrem System von der Einschränkung ausgenommen sind, die keine untergeordneten Prozesse sind.ptrace_scope
Welt beschreibbar (666), wie es der Forumsbeitrag empfiehlt - das ist ein riesiges Sicherheitsrisiko, da es jetzt von jedem Prozess nach Belieben geändert werden kann!Gibt es eine bessere Lösung?
Eine bessere, sicherere Lösung, bei der ptrace_scope nicht wiederholt geändert werden muss, besteht darin , Wineserver-ptrace-Funktionen zuzuweisen .
In einem Terminal:
Dies befreit den Weinserver und den Wine-Preloader von der Nicht-Kind-Ptrace-Einschränkung und ermöglicht es ihnen, jeden Prozess zu verfolgen.
Wenn Sie Crossover verwenden
Installieren Sie libcap2:
Fügen Sie dann eine Ausnahme für Crossover hinzu:
Fügen Sie abschließend die Bibliotheken zu ld.so.conf hinzu (oder es wird "Fehler beim Laden der gemeinsam genutzten Bibliotheken angezeigt: libwine.so.1: Datei mit gemeinsam genutzten Objekten kann nicht geöffnet werden: Keine solche Datei oder solches Verzeichnis"):
quelle
Im ubuntuforums.org habe ich eine Antwort mit folgendem Link bekommen
https://wiki.ubuntu.com/SecurityTeam/Roadmap/KernelHardening#ptrace_Protection
Hier ist die Paste aus dem Link (mit meiner Hervorhebung hinzugefügt)
Ich denke, die kurze Antwort wäre, dass es weniger sicher ist, aber die Wahrscheinlichkeit, dass ein PC unter solchen Angriffen steht, ist ziemlich gering.
quelle
UPDATE Die obigen Anweisungen:
funktioniert ab dem 15.09.2008 unter Ubuntu 18.04.1 und PlayOnLinux v.4.2.12 nicht, wenn die neueste stabile Version Wine v.3.0.1 libcap2 bereits installiert wurde.
Die Fehlermeldung in Gnome Terminal lautet wie folgt:
Ich bin mir nicht sicher, was das bedeutet ... aber ich dachte, ich würde es für jeden herausbringen, um es zu interpretieren und vielleicht eine neue, praktikable Lösung zu finden.
Vielen Dank.
quelle