Уязвимост в Docker, CVE-2026-17106 (наречена CopyEscape), позволява на злонамерени контейнери да записват файлове извън целевата директория на docker cp, което потенциално овластява изпълнението на код и компрометиране на ниво root.
Проблемът засяга обработката на извличане на архиви в Docker в moby/go-archive. Когато потребителите копират файлове от контейнер към хост, Docker не извършва обикновен директен трансфер.
Демонът на Docker първо пакетира заявените файлове от контейнера в tar архив, а локалният Docker CLI извлича този архив, използвайки правата на потребителя, който е стартирал командата.
Този процес става опасен, когато атакуващ контролира изходния контейнер. Нормална команда като docker cp container:/report.txt ./report.txt изглежда безопасна, тъй като потребителят избира дестинацията.
Въпреки това, CopyEscape позволява на атакуващ да манипулира архива, създаден от работещ контейнер, и да постави символна връзка (symlink), която сочи извън избраната изходна директория.

След това Docker CLI може да последва тази символна връзка, докато извлича следващ запис от архива, причинявайки записването на файла на друго място във файловата система на хоста.
CopyEscape уязвимост в Docker
От Imperva заявяват, че веригата за експлоатация комбинира две слабости. Първо, състезание за достъп от тип time-of-check to time-of-use в процеса на генериране на архива позволява на работещ контейнер да промени директория в символна връзка, докато Docker обхожда неговата файлова система.
Това може да генерира несъвместим tar архив, който описва един и същ път едновременно като директория и като символна връзка. Второ, уязвимите процедури за извличане не ограничават надеждно записите до целевата папка след разрешаването на връзките във файловата система.
Резултатът е примитив за създаване или презаписване на произволен файл с правата на процеса Docker CLI. Разработчик, който изпълнява Docker cp, може да се окаже с подменени стартови файлове на shell, SSH конфигурация, облачни данни за достъп, изходен код или файлове за персистентност на потребителско ниво.

При macOS уязвимото извличане се случва в локалната система, въпреки че Docker Desktop стартира контейнерите в Linux виртуална машина, което прави локалните потребителски файлове потенциална мишена.
Рискът е по-сериозен при Linux системи, където администратори, CI системи, скриптове за поддръжка или автоматизирани пайплайни изпълняват sudo docker cp. В своята концептуална доказателствена разработка (PoC), Imperva замени /usr/bin/runc със скрипт, контролиран от атакуващия.
Според Imperva, след като Docker по-късно е извикал подменения изпълним файл на средата за изпълнение, инжектираният код се е изпълнил като root. Атаката не предоставя директно привилегии на Docker демона на контейнера; вместо това тя злоупотребява с повишените права, вече предоставени на командата docker cp.
CVE-2026-17106 засяга и Docker Sandboxes чрез sbx cp, създавайки рискове за работни процеси с AI агенти и програмируеми агенти при извличане на файлове от ненадеждни изолирани среди. Docker Sandboxes 0.38.0 коригира проблема с излизането извън целевата директория.
Docker отстрани уязвимостта в Docker Desktop 4.86.0, пуснат на 10 август 2026 г. Бележките към версията описват проблема като уязвимост за излизане от дестинацията в docker container cp. Основната корекция в moby/go-archive е налична във версия 0.3.0, докато засегнатите версии на пакета са по-стари от 0.3.0.
Организациите трябва да актуализират Docker Desktop до версия 4.86.0 или по-нова и да обновят Docker Engine и Docker CLI до актуалните среди с инсталирани корекции за сигурност. Официалният бюлетин за сигурност на Docker потвърждава, че Desktop 4.86.0 коригира CVE-2026-17106.
До завършване на актуализациите администраторите трябва да избягват копирането на файлове от работещи контейнери, които са ненадеждни, компрометирани или използвани за обработка на външно съдържание.
Спирането на контейнер преди използването на docker cp може да предотврати състезанието във файловата система в реално време, използвано в демонстрирания експлойт. Въпреки това третирайте всички архиви от ненадеждни източници като враждебни.
Екипите трябва също да избягват sudo docker cp, да премахнат root привилегиите от задачите за събиране на артефакти в CI среди, където е възможно, и да извличат съмнителни данни от контейнери само в еднократни виртуални машини или изолирани среди за анализ.
CopyEscape показва, че извличането на архиви само по себе си е граница на сигурността: рутинна операция по извличане на файлове може да се превърне в пътя, който атакуващият използва, за да премине от контейнера обратно в хост системата.