Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
proxmox-lxc-docker-fix — Workaround für CVE-2025-52881: Behebt Docker-/Podman-Probleme in Proxmox LXC-Containern, die durch AppArmor-Inkompatibilität mit runc 1.2.7+ verursacht werden. Universeller Wrapper für community-scripts mit automatischer AppArmor-Konfiguration. | Kitploit
Tools/GitHubGitHub/jq6l43d1/proxmox-lxc-docker-fix
Cloud-Infrastruktur-SicherheitContainer-SicherheitSchwachstellenanalyseScripting & AutomatisierungDevSecOpsFehlkonfiguration
GitHubjq6l43d1/proxmox-lxc-docker-fix

proxmox-lxc-docker-fix

Workaround für CVE-2025-52881: Behebt Docker-/Podman-Probleme in Proxmox LXC-Containern, die durch AppArmor-Inkompatibilität mit runc 1.2.7+ verursacht werden. Universeller Wrapper für community-scripts mit automatischer AppArmor-Konfiguration.

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Repository anzeigen
15213vor 10 MonatenNoch nicht geprüft
Teilen

Proxmox LXC AppArmor-Fix für Docker/Container

Workaround für CVE-2025-52881: Behebt Docker-, Podman- und Container-Laufzeit-Ausfälle in Proxmox LXC-Containern, die durch eine Inkompatibilität von AppArmor mit runc 1.2.7+/1.3.2+ verursacht werden

🚨 Das Problem

Aktuelle Sicherheitsupdates von runc (Versionen 1.2.7+ und 1.3.2+) und containerd (1.7.28-2+) haben eine brechende Inkompatibilität mit AppArmor eingeführt, wenn diese innerhalb von Proxmox LXC-Containern ausgeführt werden. Dies führt dazu, dass Docker und andere Container-Laufzeiten mit Fehlern wie dem folgenden fehlschlagen:

OCI runtime create failed: unable to start container process:
error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file:
reopen fd 8: permission denied

Dies betrifft:

  • ✗ Proxmox Community-Skripte (docker.sh, komodo.sh, dockge.sh, casaos.sh, usw.)
  • ✗ Manuelle Docker-/Podman-Installationen in LXC
  • ✗ Jede Container-Laufzeit, die runc innerhalb von LXC-Containern verwendet

Referenz: opencontainers/runc#4968

⚠️ runc NICHT downgraden

Ein Downgrade von runc unter 1.2.7/1.3.2 würde das Problem zwar „beheben“, setzt Ihr System jedoch tatsächlichen Privilegien-Eskalations-Schwachstellen aus, die durch das Sicherheitsupdate gepatcht wurden. Der Workaround in diesem Repository ist der empfohlene Ansatz.

✅ Die Lösung

Dieses Repository stellt Werkzeuge bereit, die den AppArmor-Workaround für Proxmox LXC-Container automatisch anwenden und verwalten:

  1. pve-script-wrapper.sh - Universeller Wrapper für Proxmox-Community-Skripte
  2. pve-docker-fix - Repariert bestehende Container, die bereits defekt sind
  3. pve-docker-rollback - Entfernt den Workaround, sobald Upstream-Fixes verfügbar sind
  4. pct-patched - Interner Wrapper (wird automatisch von pve-script-wrapper.sh verwendet)

Wie es funktioniert

Die Skripte erkennen automatisch das Betriebssystem Ihres Containers und wenden den entsprechenden AppArmor-Workaround an:

Für alle Container:

lxc.apparmor.profile: unconfined

Nur für Ubuntu-Container:

lxc.mount.entry: /dev/null sys/module/apparmor/parameters/enabled none bind 0 0

Die erste Zeile deaktiviert die AppArmor-Einschränkung (für alle Distributionen erforderlich). Die zweite Zeile maskiert die AppArmor-Modulerkennung und wird nur für Ubuntu-Container benötigt – Debian-Container funktionieren normalerweise auch ohne (runc#4968).

Betriebssystem-Auto-Erkennung: Die Skripte erkennen automatisch, ob Ihr Container Ubuntu oder Debian ist, und wenden nur die erforderlichen Konfigurationszeilen an.

📦 Installation

Führen Sie auf Ihrem Proxmox VE-Host Folgendes aus:

# Alle Skripte herunterladen
curl -fsSL https://raw.githubusercontent.com/jq6l43d1/proxmox-lxc-docker-fix/main/pve-script-wrapper.sh -o /usr/local/bin/pve-script-wrapper.sh
curl -fsSL https://raw.githubusercontent.com/jq6l43d1/proxmox-lxc-docker-fix/main/pct-patched -o /usr/local/bin/pct-patched
curl -fsSL https://raw.githubusercontent.com/jq6l43d1/proxmox-lxc-docker-fix/main/pve-docker-fix -o /usr/local/bin/pve-docker-fix
curl -fsSL https://raw.githubusercontent.com/jq6l43d1/proxmox-lxc-docker-fix/main/pve-docker-rollback -o /usr/local/bin/pve-docker-rollback

# Ausführbar machen
chmod +x /usr/local/bin/pve-script-wrapper.sh /usr/local/bin/pct-patched /usr/local/bin/pve-docker-fix /usr/local/bin/pve-docker-rollback

Oder klonen Sie das Repository:

git clone https://github.com/jq6l43d1/proxmox-lxc-docker-fix.git
cd proxmox-lxc-docker-fix
chmod +x *.sh pct-patched pve-docker-fix pve-docker-rollback
cp pve-script-wrapper.sh pct-patched pve-docker-fix pve-docker-rollback /usr/local/bin/

🚀 Verwendung

Community-Skripte mit automatischem Fix ausführen

Anstatt:

bash -c "$(curl -fsSL https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/komodo.sh)"

Verwenden Sie:

pve-script-wrapper.sh https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/komodo.sh

Dies funktioniert mit jedem Proxmox-Community-Skript, das LXC-Container erstellt:

# Docker
pve-script-wrapper.sh https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/docker.sh

# Dockge
pve-script-wrapper.sh https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/dockge.sh

# CasaOS
pve-script-wrapper.sh https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/casaos.sh

# Podman
pve-script-wrapper.sh https://raw.githubusercontent.com/community-scripts/ProxmoxVE/main/ct/podman.sh

# Und jedes andere Skript, das Container-Laufzeiten installiert

Bestehende Container reparieren

Wenn Sie bereits einen defekten Container haben:

# Container 105 reparieren
pve-docker-fix 105

# Ohne automatischen Neustart reparieren
pve-docker-fix 105 --no-restart

Das Tool wird:

  1. Prüfen, ob der Fix bereits angewendet wurde
  2. Den Container anhalten (mit Bestätigung)
  3. Den AppArmor-Workaround anwenden
  4. Den Container neu starten

Manueller Fix

Wenn Sie den Fix lieber manuell anwenden möchten:

# Container anhalten
pct stop 105

# Konfigurationsdatei bearbeiten
nano /etc/pve/lxc/105.conf

# Diese Zeile am Ende hinzufügen (für alle Container erforderlich):
lxc.apparmor.profile: unconfined

# Für Ubuntu-Container zusätzlich diese Zeile hinzufügen:
lxc.mount.entry: /dev/null sys/module/apparmor/parameters/enabled none bind 0 0

# Container starten
pct start 105

Hinweis: Debian-Container benötigen normalerweise nur die erste Zeile. Ubuntu-Container benötigen beide Zeilen. Technische Details finden Sie unter runc#4968.

Fix rückgängig machen

Sobald Upstream-Fixes verfügbar sind (Proxmox/LXC/AppArmor-Updates), können Sie den Workaround entfernen:

# Alle Container mit dem Workaround auflisten
pve-docker-rollback --list

# Von einem bestimmten Container entfernen
pve-docker-rollback 105

# Änderungen ohne Modifikation anzeigen
pve-docker-rollback 105 --dry-run

# Von allen Containern auf einmal entfernen
pve-docker-rollback --all

# Ohne Neustart entfernen (Änderungen gelten beim nächsten Start)
pve-docker-rollback 105 --no-restart

# Von allen Containern ohne Bestätigung entfernen
pve-docker-rollback --all --force

Das Rollback-Tool wird:

  1. Erkennen, ob der Workaround angewendet wurde
  2. Zeigen, welche Zeilen entfernt werden
  3. Nach Bestätigung fragen (außer bei --force)
  4. Die AppArmor-Konfiguration entfernen
  5. Den Container bei Bedarf neu starten

Wann zurückgesetzt werden sollte:

  • Warten Sie auf Ankündigungen, dass Upstream-Fixes verfügbar sind
  • Überwachen Sie runc#4968 auf Updates
  • Testen Sie zuerst an unkritischen Containern
  • Überprüfen Sie, ob Docker/Container nach dem Rollback funktionieren, bevor Sie es von der Produktion entfernen

🔧 Wie es technisch funktioniert

pve-script-wrapper.sh

  • Erstellt ein temporäres Verzeichnis mit einem Symlink zu pct-patched
  • Ändert PATH, um den Wrapper zu priorisieren
  • Lädt das Community-Skript herunter und führt es aus
  • Das Skript verwendet transparent den gepatchten pct-Befehl

pct-patched

  • Fängt pct create-Befehle ab
  • Ruft das echte /usr/sbin/pct auf, um den Container zu erstellen
  • Erkennt den Container-OS-Typ (Ubuntu vs. Debian)
  • Fügt unmittelbar nach der Erstellung die entsprechende AppArmor-Konfiguration in /etc/pve/lxc/$CTID.conf ein
  • Leitet alle anderen pct-Befehle unverändert durch
Tool herunterladen