Nur ein Feld übernehmen
Ein nackter Hexwert oder eine Zeile wie CapEff: 0000000000000003 ist zulässig. Auch 10 wird hexadezimal gelesen und ergibt dezimal 16. Mehrere Mengen benötigen getrennte Auswertungen.
Linux & Shell
Einen Hexwert oder eine einzelne Cap-Zeile einfügen. Gesetzte Fähigkeiten lesen oder über Kontrollkästchen eine neue Maske vorbereiten.
Erst einen gültigen Wert dekodieren. Jede Auswahl zeigt eine Änderungsvorschau für ein Bit; unbenannte Bits bleiben erhalten.
Der eingefügte Wert bleibt im Browser. Das Werkzeug liest weder Ihr System aus noch sendet es Eingaben an einen Server.
Feste UAPI-Namenstabellen; keine Erkennung Ihres Kernels und keine Simulation seiner Berechtigungsprüfungen.
Das Ergebnis ist veraltet. Vor Änderungen und Export erneut dekodieren.
Capability-Maske dekodieren hilft, wenn ein Prozessbericht nur eine lange Hexzahl liefert. Lassen Sie CapEff oder CapBnd vor dem Wert stehen: Gleiche Zahlen können verschiedene Mengen innerhalb des Berechtigungsmodells bezeichnen.
Das Beispiel enthält 14 benannte Fähigkeiten. Es zeigt die Schreibweise und ist weder eine Messung Ihres Rechners noch eine allgemeingültige Containerkonfiguration. Bei Linux-Capabilities gehört die Herkunft des Wertes zur Interpretation.
Die Zahl bleibt erhalten, auch wenn eine andere Tabelle ihre Namen erklärt.
Capability-Maske dekodieren ordnet jeder gesetzten Position einen CAP_*-Namen und eine kurze Erklärung zu. Ein Klick auf ein Kontrollkästchen zeigt zuerst genau das eine geänderte Bit sowie die alte und neue Maske.
In der Tabelle 3.16 können Positionen unbenannt bleiben, die 5.9 bereits kennt. Beim Wechsel bleibt die gesamte Zahl unverändert. Auch unbenannte Positionen bis Bit 63 werden weder verworfen noch stillschweigend auf null gesetzt.
Ein nackter Hexwert oder eine Zeile wie CapEff: 0000000000000003 ist zulässig. Auch 10 wird hexadezimal gelesen und ergibt dezimal 16. Mehrere Mengen benötigen getrennte Auswertungen.
Die Tabellen für 3.16, 5.8 und 5.9 enden bei Bit 37, 39 und 40. Sie bilden feste UAPI-Namen ab. Der laufende Kernel wird nicht ermittelt; Rückportierungen einer Distribution können davon abweichen.
Kontrollkästchen stehen nur bei einem aktuellen gültigen Ergebnis bereit. Anwenden aktualisiert Quelle und Bericht gemeinsam. Rückgängig stellt die ursprüngliche Eingabe samt Feldnamen wieder her; manuell startet auch Strg/Cmd + Enter die Auswertung.
Eine hexadezimale Capability-Maske wird als vorzeichenloser Ganzzahlwert behandelt. Das Ergebnis hat 16 kleine Hexziffern und 64 Binärziffern. JSON verwendet für Maske und Dezimalwert Zeichenketten, damit große Werte exakt bleiben.
Für erkannte Fähigkeiten erscheinen Bitnummer und Kurzbeschreibung. CAP_NET_BROADCAST wird als unbenutzt ausgewiesen. Außerhalb der Namenstabelle liegende gesetzte Bits werden als Positionen aufgeführt; das Werkzeug erfindet dafür keine Namen.
Text und JSON enthalten Tabellenstand, optionalen Quellfeldnamen und sämtliche gesetzten Bits. Das erleichtert den Abgleich mit capsh. Der Textbericht ist ein Datenformat für die Prüfung und kein direkt ausführbares setcap-Argument.
Lesen Sie auf dem Zielsystem die Cap-Felder in /proc/PID/status oder verwenden Sie, falls verfügbar, getpcaps. Eine einzelne Zeile kann hier ausgewertet werden. capsh --decode ist eine lokale Alternative zum Übersetzen der Hexmaske; dieses Werkzeug liest keinen Prozess aus.
Die vorhandene Menge ist nicht automatisch die minimale erforderliche Menge. Prüfen Sie Dokumentation und verwendete Operationen und beobachten Sie repräsentative Abläufe in einer kontrollierten Umgebung. Der Decoder verfolgt keine Systemaufrufe und erstellt keine Vergabeempfehlung.
Permitted begrenzt, welche Fähigkeiten ein Thread in Effective aufnehmen darf. Für Fähigkeitsprüfungen zählt die effektive Menge. Ein Thread kann deshalb eine Fähigkeit behalten, ohne sie gerade effektiv zu aktivieren; Ausführungsübergänge bringen weitere Regeln mit.
Bei libcap steht p für Permitted und e für den effektiven Zustand. Datei-Capabilities haben ein Effective-Flag, das bei der Programmausführung berücksichtigt wird. cap_net_raw+ep ist keine einzelne Hexmaske und wird hier nicht angenommen.
capsh --print zeigt den Kontext des gestarteten capsh. Für einen anderen Prozess müssen Sie dessen Status oder ein geeignetes Prozesswerkzeug verwenden. Unterscheiden Sie zudem Datei-Capabilities von Thread-Mengen und prüfen Sie die Namenkenntnis Ihrer libcap-Version.
Noch eine Frage?
Capability-Maske dekodieren hält den Quellfeldnamen fest. Vergleichen Sie benannte und unbenannte Positionen, bevor Sie den geprüften Bericht exportieren.
Eine dekodierte Zahl ist keine Sicherheitsgarantie.