Skip to content
KitploitKITPLOIT
उपकरणब्लॉग
जमा करें
उपकरणब्लॉग
जमा करें

हैकिंग, पेनटेस्ट और साइबर सुरक्षा उपकरण आपके सुरक्षा शस्त्रागार के लिए!

Kitploit हैकिंग, साइबर सुरक्षा और पेंटेस्टिंग टूल्स की एक निर्देशिका है। कमजोरियों को खोजने, सिस्टम का विश्लेषण करने, परीक्षण को स्वचालित करने और अपनी सुरक्षा को मजबूत करने के लिए नवीनतम प्रोजेक्ट अपडेट खोजें।

··फ़ीड·संपर्क·गोपनीयता·© 2026 Kitploit

टूल निर्देशिका

श्रेणियाँ

सभी श्रेणियाँ देखें
Loading categories
proxmox-lxc-docker-fix — CVE-2025-52881 के लिए वर्कअराउंड: runc 1.2.7+ के साथ AppArmor असंगतता के कारण Proxmox LXC कंटेनरों में Docker/Podman खराब होने को ठीक करता है। स्वचालित AppArmor कॉन्फ़िगरेशन के साथ community-scripts के लिए यूनिवर्सल रैपर। | Kitploit
उपकरण/GitHubGitHub/jq6l43d1/proxmox-lxc-docker-fix
क्लाउड इन्फ्रास्ट्रक्चर सुरक्षाकंटेनर सुरक्षाभेद्यता विश्लेषणस्क्रिप्टिंग और स्वचालनDevSecOpsगलत कॉन्फ़िगरेशन
GitHubjq6l43d1/proxmox-lxc-docker-fix

proxmox-lxc-docker-fix

CVE-2025-52881 के लिए वर्कअराउंड: runc 1.2.7+ के साथ AppArmor असंगतता के कारण Proxmox LXC कंटेनरों में Docker/Podman खराब होने को ठीक करता है। स्वचालित AppArmor कॉन्फ़िगरेशन के साथ community-scripts के लिए यूनिवर्सल रैपर।

सबसे लोकप्रिय

सभी देखें →

हमारे समुदाय द्वारा सबसे अधिक उपयोग किए जाने वाले उपकरण खोजें।

सभी उपकरण खोजें

हमारे उपकरणों का संग्रह ब्राउज़ करें

सभी उपकरण देखें →
रिपॉजिटरी देखें
152310 महीने पहलेअभी तक समीक्षित नहीं
साझा करें

Docker/कंटेनरों के लिए Proxmox LXC AppArmor फिक्स

CVE-2025-52881 के लिए वर्कअराउंड: Proxmox LXC कंटेनरों में runc 1.2.7+/1.3.2+ के साथ AppArmor असंगतता के कारण Docker, Podman और कंटेनर रनटाइम की खराबी को ठीक करता है।

🚨 समस्या

runc (संस्करण 1.2.7+ और 1.3.2+) और containerd (1.7.28-2+) के हालिया सुरक्षा अपडेट ने Proxmox LXC कंटेनरों के अंदर चलते समय AppArmor के साथ एक ब्रेकिंग असंगतता पेश की है। इससे Docker और अन्य कंटेनर रनटाइम निम्न त्रुटियों के साथ विफल हो जाते हैं:

root@kitploit:~
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

इससे ये प्रभावित होते हैं:

  • ✗ Proxmox कम्युनिटी स्क्रिप्ट्स (docker.sh, komodo.sh, dockge.sh, casaos.sh, आदि)
  • ✗ LXC में मैन्युअल Docker/Podman इंस्टॉलेशन
  • ✗ LXC कंटेनरों के अंदर runc का उपयोग करने वाला कोई भी कंटेनर रनटाइम

संदर्भ: opencontainers/runc#4968

⚠️ runc को डाउनग्रेड न करें

हालाँकि runc को 1.2.7/1.3.2 से नीचे डाउनग्रेड करने से समस्या "ठीक" हो सकती है, लेकिन यह आपके सिस्टम को उन वास्तविक विशेषाधिकार वृद्धि कमजोरियों के प्रति उजागर करता है, जिन्हें सुरक्षा अपडेट ने पैच किया था। इस रिपॉजिटरी में दिया गया वर्कअराउंड ही अनुशंसित तरीका है।

✅ समाधान

यह रिपॉजिटरी Proxmox LXC कंटेनरों के लिए AppArmor वर्कअराउंड को स्वचालित रूप से लागू करने और प्रबंधित करने के लिए टूल प्रदान करती है:

  1. pve-script-wrapper.sh - Proxmox कम्युनिटी स्क्रिप्ट्स के लिए यूनिवर्सल रैपर
  2. pve-docker-fix - पहले से टूटे हुए मौजूदा कंटेनरों को ठीक करें
  3. pve-docker-rollback - जब अपस्ट्रीम फिक्स उपलब्ध हों तो वर्कअराउंड हटाएँ
  4. pct-patched - आंतरिक रैपर (pve-script-wrapper.sh द्वारा स्वचालित रूप से उपयोग किया जाता है)

यह कैसे काम करता है

स्क्रिप्ट्स आपके कंटेनर के OS का स्वचालित रूप से पता लगाती हैं और उचित AppArmor वर्कअराउंड लागू करती हैं:

सभी कंटेनरों के लिए:

root@kitploit:~
lxc.apparmor.profile: unconfined

केवल Ubuntu कंटेनरों के लिए:

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

पहली पंक्ति AppArmor कंफाइनमेंट को अक्षम करती है (सभी डिस्ट्रीब्यूशन के लिए आवश्यक)। दूसरी पंक्ति AppArmor मॉड्यूल डिटेक्शन को मास्क करती है और केवल Ubuntu कंटेनरों के लिए आवश्यक है - Debian कंटेनर आमतौर पर इसके बिना काम करते हैं (runc#4968)।

OS स्वतः-पहचान: स्क्रिप्ट्स स्वचालित रूप से पता लगाती हैं कि आपका कंटेनर Ubuntu है या Debian, और केवल आवश्यक कॉन्फ़िगरेशन पंक्तियाँ लागू करती हैं।

📦 इंस्टॉलेशन

अपने Proxmox VE होस्ट पर, यह चलाएँ:

root@kitploit:~
# Download all scripts
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

# Make them executable
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

या रिपॉजिटरी क्लोन करें:

root@kitploit:~
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/

🚀 उपयोग

स्वचालित फिक्स के साथ कम्युनिटी स्क्रिप्ट्स चलाना

इसके बजाय:

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

इसका उपयोग करें:

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

यह LXC कंटेनर बनाने वाली किसी भी Proxmox कम्युनिटी स्क्रिप्ट के साथ काम करता है:

root@kitploit:~
# 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

# And any other script that installs container runtimes

मौजूदा कंटेनरों को ठीक करना

यदि आपके पास पहले से कोई टूटा हुआ कंटेनर है:

root@kitploit:~
# Fix container 105
pve-docker-fix 105

# Fix without automatic restart
pve-docker-fix 105 --no-restart

यह टूल निम्न कार्य करेगा:

  1. जाँच करेगा कि फिक्स पहले से लागू है या नहीं
  2. कंटेनर रोकेगा (पुष्टि के साथ)
  3. AppArmor वर्कअराउंड लागू करेगा
  4. कंटेनर पुनः आरंभ करेगा

मैन्युअल फिक्स

यदि आप फिक्स मैन्युअल रूप से लागू करना पसंद करते हैं:

root@kitploit:~
# Stop the container
pct stop 105

# Edit the config file
nano /etc/pve/lxc/105.conf

# Add this line at the end (required for all containers):
lxc.apparmor.profile: unconfined

# For Ubuntu containers, also add this line:
lxc.mount.entry: /dev/null sys/module/apparmor/parameters/enabled none bind 0 0

# Start the container
pct start 105

नोट: Debian कंटेनरों को आमतौर पर केवल पहली पंक्ति की आवश्यकता होती है। Ubuntu कंटेनरों को दोनों पंक्तियों की आवश्यकता होती है। तकनीकी विवरण के लिए runc#4968 देखें।

फिक्स को रोलबैक करना

जब अपस्ट्रीम फिक्स उपलब्ध हों (Proxmox/LXC/AppArmor अपडेट), तो आप वर्कअराउंड हटा सकते हैं:

root@kitploit:~
# List all containers with the workaround
pve-docker-rollback --list

# Remove from specific container
pve-docker-rollback 105

# Preview changes without modifying
pve-docker-rollback 105 --dry-run

# Remove from all containers at once
pve-docker-rollback --all

# Remove without restart (changes apply on next start)
pve-docker-rollback 105 --no-restart

# Remove from all containers without confirmation
pve-docker-rollback --all --force

रोलबैक टूल निम्न कार्य करेगा:

  1. पता लगाएगा कि वर्कअराउंड लागू है या नहीं
  2. दिखाएगा कि कौन-सी पंक्तियाँ हटाई जाएँगी
  3. पुष्टि माँगेगा (--force को छोड़कर)
  4. AppArmor कॉन्फ़िगरेशन हटाएगा
  5. आवश्यकता पड़ने पर कंटेनर पुनः आरंभ करेगा

रोलबैक कब करें:

  • अपस्ट्रीम फिक्स उपलब्ध होने की घोषणाओं की प्रतीक्षा करें
  • अपडेट के लिए runc#4968 पर नज़र रखें
  • पहले गैर-महत्वपूर्ण कंटेनरों पर परीक्षण करें
  • प्रोडक्शन से हटाने से पहले रोलबैक के बाद Docker/कंटेनरों के काम करने की पुष्टि करें

🔧 यह तकनीकी रूप से कैसे काम करता है

pve-script-wrapper.sh

  • pct-patched के सिमलिंक के साथ एक अस्थायी निर्देशिका बनाता है
  • रैपर को प्राथमिकता देने के लिए PATH को संशोधित करता है
  • कम्युनिटी स्क्रिप्ट को डाउनलोड और निष्पादित करता है
  • स्क्रिप्ट पैच किए गए pct कमांड का पारदर्शी रूप से उपयोग करती है

pct-patched

  • pct create कमांड को इंटरसेप्ट करता है
  • कंटेनर बनाने के लिए वास्तविक /usr/sbin/pct को कॉल करता है
  • कंटेनर OS प्रकार (Ubuntu बनाम Debian) का पता लगाता है
  • निर्माण के तुरंत बाद, /etc/pve/lxc/$CTID.conf में उचित AppArmor कॉन्फ़िगरेशन इंजेक्ट करता है
  • अन्य सभी pct कमांड को अपरिवर्तित पास करता है

pve-docker-fix

  • मौजूदा कंटेनरों को ठीक करने के लिए स्टैंडअलोन टूल
  • कंटेनर OS प्रकार का स्वचालित रूप से पता लगाता है
  • जाँच करता है कि फिक्स पहले से लागू है या नहीं (इडेम्पोटेंट)
  • OS के आधार पर केवल आवश्यक कॉन्फ़िगरेशन पंक्तियाँ लागू करता है
  • उपयोगकर्ता पुष्टि के साथ कंटेनर स्टॉप/स्टार्ट को संभालता है
  • कई बार चलाना सुरक्षित है

pve-docker-rollback

  • जब आवश्यकता न हो तो AppArmor वर्कअराउंड हटाता है
  • वर्कअराउंड लागू कंटेनरों को खोजने के लिए सभी कंटेनरों को स्कैन करता है
  • कमेंट ब्लॉक और कॉन्फ़िगरेशन पंक्तियों को सुरक्षित रूप से हटाता है
  • सिंगल कंटेनर, बैच (--all), या लिस्ट मोड का समर्थन करता है
  • लागू करने से पहले बदलावों का पूर्वावलोकन करने के लिए ड्राई-रन मोड
  • पुष्टि के साथ कंटेनर पुनः आरंभ को संभालता है
  • इडेम्पोटेंट और कई बार चलाना सुरक्षित है

🛡️ सुरक्षा संबंधी विचार

यह क्या बदलता है

  • LXC कंटेनर के लिए AppArmor कंफाइनमेंट अक्षम करता है
  • डिफेंस-इन-डेप्थ की एक परत हटाता है

अब भी क्या सुरक्षित है

  • कंटेनर अब भी अनप्रिविलेज्ड (unprivileged) है (सबसे महत्वपूर्ण सुरक्षा सीमा)
  • कर्नेल नेमस्पेस अब भी आइसोलेशन लागू करते हैं
  • cgroups संसाधन सीमाएँ अब भी लागू होती हैं
  • मानक Linux अनुमतियाँ अब भी सक्रिय हैं

जोखिम आकलन

  • जोखिम: कंटेनर से समझौता होने पर आइसोलेशन में थोड़ी कमी
  • शमन: कंटेनर अनप्रिविलेज्ड रहते हैं, जो प्राथमिक सुरक्षा नियंत्रण है
  • तुलना: runc को डाउनग्रेड करने और वास्तविक CVE उजागर करने की तुलना में कहीं अधिक सुरक्षित

इसका उपयोग कब न करें

  • अधिकतम आइसोलेशन की आवश्यकता वाले प्रोडक्शन वातावरण
  • अविश्वसनीय कंटेनरों वाले मल्टी-टेनेंट सिस्टम
  • अविश्वसनीय कोड चलाने वाले कंटेनर

विकल्प

  • अपस्ट्रीम फिक्स की प्रतीक्षा करें (Proxmox/LXC/AppArmor/कर्नेल)
  • प्रिविलेज्ड कंटेनर का उपयोग करें (अनुशंसित नहीं - बदतर सुरक्षा)
  • कंटेनरों के बजाय VM का उपयोग करें (अधिक ओवरहेड)

📋 प्रभावित सिस्टम

पुष्टि किए गए प्रभावित

  • हालिया अपडेट वाले Proxmox VE 8.x
  • Debian 12 (Bookworm) LXC कंटेनर
  • Ubuntu LXC कंटेनर (सभी हालिया संस्करण)
  • runc संस्करण 1.2.7+ और 1.3.2+
  • containerd संस्करण 1.7.28-2+

OS-विशिष्ट नोट

  • Debian कंटेनर: आमतौर पर केवल lxc.apparmor.profile: unconfined की आवश्यकता होती है
  • Ubuntu कंटेनर: दोनों कॉन्फ़िग पंक्तियों की आवश्यकता होती है (प्रोफ़ाइल + माउंट एंट्री)
  • स्क्रिप्ट्स OS का स्वतः पता लगाती हैं और उचित फिक्स लागू करती हैं

प्रभावित होने के लिए ज्ञात कम्युनिटी स्क्रिप्ट्स

  • docker.sh
  • komodo.sh
  • dockge.sh
  • casaos.sh
  • podman.sh
  • runtipi.sh
  • omv.sh (OpenMediaVault)
  • alpine-docker.sh
  • podman-homeassistant.sh
  • और 390+ अन्य कंटेनर-आधारित स्क्रिप्ट्स

🔗 संदर्भ

  • प्राथमिक समस्या: opencontainers/runc#4968
  • CVE: CVE-2025-52881
  • संबंधित CVE: CVE-2025-31133, CVE-2025-52565
  • Proxmox फोरम चर्चा: Community Scripts Issue #8890
  • Incus फिक्स: PR #2624

🐛 समस्या निवारण

स्क्रिप्ट काम नहीं करती

root@kitploit:~
# Verify scripts are executable
ls -l /usr/local/bin/pve-script-wrapper.sh /usr/local/bin/pct-patched

# Make them executable if needed
chmod +x /usr/local/bin/pve-script-wrapper.sh /usr/local/bin/pct-patched

फिक्स लागू करने के बाद भी Docker विफल होता है

root@kitploit:~
# Verify the fix was applied
grep -i apparmor /etc/pve/lxc/105.conf

# Check detected OS type
pct config 105 | grep ostype

# For Ubuntu containers, ensure both lines are present:
# - lxc.apparmor.profile: unconfined
# - lxc.mount.entry: /dev/null sys/module/apparmor/parameters/enabled...

# If not present, apply manually
pve-docker-fix 105

# Check container is restarted
pct status 105

फिक्स के बाद कंटेनर आरंभ नहीं होता

root@kitploit:~
# Check for syntax errors in config
cat /etc/pve/lxc/105.conf

# View detailed error messages
journalctl -xe

🤝 योगदान

योगदान का स्वागत है! कृपया:

  1. अपने बदलावों का Proxmox VE सिस्टम पर परीक्षण करें
  2. सुविधाएँ जोड़ने पर दस्तावेज़ीकरण अपडेट करें
  3. मौजूदा कोड शैली का पालन करें
  4. स्पष्ट विवरण के साथ PR सबमिट करें

📝 लाइसेंस

GNU GENERAL PUBLIC LICENSE - विवरण के लिए LICENSE फ़ाइल देखें

🙏 आभार

  • सुरक्षा फिक्स के लिए opencontainers/runc टीम
  • community-scripts/ProxmoxVE रखरखावकर्ता
  • समस्या चर्चाओं में योगदान देने वाले सभी लोग

⚡ त्वरित संदर्भ

root@kitploit:~
# Install
curl -fsSL https://raw.githubusercontent.com/jq6l43d1/proxmox-lxc-docker-fix/main/install.sh | bash

# Run community script with fix
pve-script-wrapper.sh <script-url>

# Fix existing container
pve-docker-fix <container-id>

# List containers with workaround
pve-docker-rollback --list

# Remove workaround (when upstream fixes available)
pve-docker-rollback <container-id>
pve-docker-rollback --all

# Get help
pve-script-wrapper.sh --help
pve-docker-fix --help
pve-docker-rollback --help

नोट: यह एक अस्थायी वर्कअराउंड है जब तक कि अपस्ट्रीम प्रोजेक्ट स्थायी फिक्स जारी नहीं करते। अपडेट के लिए संदर्भित GitHub issues पर नज़र रखें।

टूल डाउनलोड करें