
Docker `docker cp` मनमाना फ़ाइल लेखन के लिए PoC, जो सिमलिंक और tar निष्कर्षण दोषों का फायदा उठाकर होस्ट बाइनरी को ओवरराइट करता है या कंटेनर एस्केप और रूट कोड निष्पादन के लिए एजेंट लॉन्च करता है।
docker cp कंटेनर से होस्ट में आर्बिट्रेरी फ़ाइल राइटHackSpeak वितरण मिरर। यह रिपॉजिटरी Imperva रेड टीम (Ron Masas) द्वारा सार्वजनिक किए गए CopyEscape PoC (CVE-2026-17106) का वितरण मिरर है, कोड अपस्ट्रीम के समान है; अपस्ट्रीम में LICENSE संलग्न नहीं है, मिरर वितरण परंपरा के अनुसार MIT License, Copyright (c) 2026 HackSpeak का उपयोग करता है, स्रोत कोड का कॉपीराइट मूल कोड लेखक के पास है।
⚠️ केवल सुरक्षा अनुसंधान और अधिकृत परीक्षण के लिए; Linux डेमो
/usr/bin/runcको ओवरराइट करेगा, कृपया एक बार उपयोग होने वाले VM में चलाएँ और पहले सत्यापन योग्य बैकअप लें, अनधिकृत या प्रोडक्शन वातावरण में न चलाएँ।
CopyEscape (CVE-2026-17106) Docker docker cp (और Docker Sandboxes के sbx cp) का कंटेनर-से-होस्ट आर्बिट्रेरी फ़ाइल राइट दोष है, जिसे Imperva Red Team (Ron Masas) द्वारा खोजा गया था।
docker cp सीधे फ़ाइल सिस्टम कॉपी नहीं है — daemon कंटेनर फ़ाइल सिस्टम पर filepath.WalkDir निष्पादित करके tar आर्काइव बनाता है, CLI tar प्राप्त करने के बाद क्लाइंट पर डीकंप्रेस/एक्सट्रैक्ट करता है;addTarFile दोबारा Lstat करने पर symlink देखता है → tar स्ट्रीम में असंगत प्रविष्टियाँ आती हैं (पहले symlink header, फिर "उप-फ़ाइल" प्रविष्टियाँ);filepath.Join के बाद बने पथ की बाउंड्री जाँच की जाती है, लेकिन वास्तविक os.Symlink मूल, अनचेक किए गए hdr.Linkname का उपयोग करता है (जो पूर्ण पथ की ओर इंगित कर सकता है); बाद की उप-फ़ाइल एक्सट्रैक्शन में कर्नेल उस सिमलिंक का अनुसरण करता है, और उपयोगकर्ता द्वारा निर्दिष्ट लक्ष्य के बाहर लिखता है;docker cp चलाने वाले उपयोगकर्ता के अधिकारों के साथ होस्ट पर कोई भी लिखने योग्य फ़ाइल बनाने/ओवरराइट करने के लिए प्रेरित कर सकता है। macOS पर shell स्टार्टअप स्क्रिप्ट, ~/Library/LaunchAgents पर्सिस्टेंस को ओवरराइट किया जा सकता है; Linux पर sudo docker cp से /usr/bin/runc को ओवरराइट किया जा सकता है, जिससे बाद के Docker लाइफसाइकिल ऑपरेशनों से root कोड निष्पादन संभव हो जाता है।sudo docker cp का उपयोग करने से बचें।दो डेमो (परीक्षण वातावरण आधिकारिक के समान: Engine 29.6.1 / Desktop 4.81.0):
macOS (गैर-विनाशकारी, ~/pwnd बनाता है)
cd macos
./demo-macos.sh
Linux (उच्च प्रभाव, /usr/bin/runc ओवरराइट करता है)
cd linux
# 按 linux/ 内说明构建镜像并运行;⚠️ 覆盖 runc 前务必备份
विस्तृत चरणों के लिए इस रिपॉजिटरी के
macos/औरlinux/उपनिर्देशिकाओं में स्थित निर्देश फ़ाइलें देखें।
/usr/bin/runc) को ओवरराइट करेगा, इसे एक बार उपयोग होने वाले VM में चलाना और बैकअप लेना आवश्यक है।docker cp — https://www.imperva.com/blog/copyescape-taking-over-docker-hosts-with-docker-cp/