Symptome und Geltungsbereich
- Direktes Ausführen scheitert trotz gesetztem Ausführungsbit.
- Eine Kopie auf einem freigegebenen ausführbaren Dateisystem verhält sich anders.
Betroffene Umgebung
Linux mit util-linux findmnt; betrifft direktes Ausführen auf normalen Dateisystemen und Bind-Mounts.
Mögliche Ursachen
Das sind mögliche Erklärungen, keine bestätigte Diagnose. Mehrere unabhängige Fehler können gleichzeitig vorliegen.
- Der speziellste Mount kann unabhängig vom Eltern-Mount noexec tragen.
- Fehlende Ausführungsbits, Pfadrechte oder MAC-Regeln können ähnliche Symptome erzeugen.
Sicher prüfen
Führe jeweils einen Befehl in der passenden Sitzung aus. Lies zuerst die Erklärung. Großgeschriebene Platzhalter brauchen deine Werte; Werkzeuge und Rechte unterscheiden sich je nach Distribution. Die Website zeigt Befehle an und führt sie niemals aus.
Prüfschritt 1
Programmpfad ersetzen; wählt dessen zuständiges Dateisystem einschließlich eines spezielleren Bind-Mounts.
findmnt -T /path/to/program -o TARGET,SOURCE,FSTYPE,OPTIONSErgebnis einordnen: Die Option noexec stützt die Vermutung; fehlt sie, Dateirechte, Loader/Interpreter und Sicherheitsregeln getrennt prüfen.
Prüfschritt 2
Liest Modus und Besitzer der konkreten Datei, ohne sie auszuführen.
stat -c "%A %a %U:%G %n" /path/to/programErgebnis einordnen: Ausführungsbits sind für direktes Ausführen nötig, beweisen aber keine Freigabe durch Mount-Optionen oder Sicherheitsregeln.
Nächste Schritte nach Befund
Programm auf einem freigegebenen ausführbaren Dateisystem ablegen
Wenn noexec gewollt ist, das geprüfte Programm über seinen unterstützten Installationsweg an einem freigegebenen ausführbaren Ort installieren oder kopieren und nur den Starterpfad anpassen. Anwendungsdaten erhalten und Symlinks prüfen, damit der neue Pfad nicht wieder zum alten Mount führt.
Vorsicht: Eine gewollte Sicherheitsgrenze nicht durch einen Interpreter-Aufruf umgehen, der nur die Beschränkung vermeiden soll.
Wiederherstellung / Rücknahme: Den ursprünglichen Starterpfad wiederherstellen und die ergänzte Installation über ihren unterstützten Deinstallationsweg entfernen.
Hat dir dieser Hinweis geholfen?
Eine ungewollte Mount-Regel mit dem Verantwortlichen korrigieren
Wenn der Mount-Verantwortliche noexec als versehentlich bestätigt, die gesamte bestehende Mount-Konfiguration sichern und nur dessen exec-Regel über die normale Distributionskonfiguration ändern. nodev, nosuid und andere Optionen erhalten; anschließend findmnt am tatsächlichen Programmpfad prüfen.
Vorsicht: Keine pauschalen Remounts von /tmp oder gemeinsam genutzten unsicheren Datenträgern. Manche Dateisysteme und Mount-Namensräume brauchen einen anderen Verwaltungsweg.
Wiederherstellung / Rücknahme: Die gesicherte Mount-Konfiguration und ihre noexec-Einstellung über denselben Verwaltungsweg wiederherstellen.
Hat dir dieser Hinweis geholfen?
Quellen und Prüfung
Diese Anleitung basiert auf Originalquellen von Projekten oder Distributionen und wurde am genannten Datum redaktionell geprüft. Das ist eine Quellenprüfung, kein Nachweis einer auf deiner Hardware reproduzierten Lösung. Log-Beispiele sind synthetische Testdaten. Versionsabhängige Details müssen zur installierten Ausgabe passen.
- util-linux findmnt: target path and mount options (Projekt- oder Distributionsdokumentation)
- util-linux mount: exec and noexec options (Projekt- oder Distributionsdokumentation)