Чтобы позволить сборки Python работать с макета в дереве (а не с помощью макета в дереве (а не установленной компоновки файла), переменная …
Чтобы позволить сборки Python работать с макета в дереве (а не с помощью макета в дереве (а не установленной компоновки файла), переменная VPATH определена во время сборки и используется для определения определенных ориентиров - в частности, Модули/setup.local. Когда эта достопримечательность найдена относительно VPATH относительно исполняемого, Python предполагает, что он работает в источнике дерево и генерирует другой по умолчанию sys.path. Этот код остается в высвобождает сборки, так что готовые к выпуску сборки могут быть построены в дереве. На Windows, так как сборки написаны на 'PCbuild/', ценность VPATH настроен на '..\..', что приводит к ориентиру '..\.\.\Modules\setup.local'. Этот путь находится за пределами каталога установки Python, и может иметь различные разрешения, потенциально позволяющие низкопривилегированный пользователь для создания ориентира и альтернативы `Lib` папка, которая будет обнаружена в противном случае ограниченной установкой. Такая настройка происходит с устаревшим местоположением установки по умолчанию для всех пользователям (в теперь вытесненном установщике EXE), из-за того, как Windows позволяет все пользователи создают папки в корневом каталоге своего ОС-привода. Наше рекомендуемое смягчение на Windows - это миграция из унаследованный установщик и использовать новый [Python install менеджер](https://www.python.org/downloads/latest/pymanager/) для установки Для текущего пользователя. Установил, где каталог на два уровня выше Каталог установки Python имеет эквивалентные разрешения не затронуты (в общем, установка на пользователя вообще не может быть изменена другими пользователей, устраняя любую эскалацию риска привилегий, и может быть напрямую модифицированный привилегированным пользователем, что делает потенциальное вмешательство неактуальна). Альтернативные меры по смягчению могут включать в себя превентивное создание и ограничение доступа к каталогу "Модули". Имейте в виду, что только 3.13 и 3.14 получит обновленные устаревшие установщики - более ранние исправления только Предоставляется в качестве источников. Платформы, отличные от Windows, позволяют переопределять VPATH, но так же, как они обычно не используйте отделенный каталог в сборке для двоичных файлов, вряд ли иметь ориентировку за пределами каталога установки. Знаковое обнаружение с участием VPATH является запасным вариантом для того, когда больше конкретный ориентир - .\pybuildir.txt - отсутствует, и был включен для Совместимость. Будущие релизы Python больше не будут включать запасной, и поэтому сборки должны будут генерировать или сохранять файл pybuilddir.txt для работы в дереве. Этот знаковый файл имеет генерироваться на Windows с 3.11 и на других платформах дольше.
Продукт использует фиксированный или контролируемый путь поиска для обнаружения ресурсов, однако одно или несколько расположений в этом пути могут находиться под контролем непредусмотренных субъектов.
https://cwe.mitre.org/data/definitions/427.html →Открыть в коллекции CWE →В данном шаблоне атаки злоумышленник помещает вредоносный ресурс в стандартный путь программы таким образом, что при выполнении известной команды система вместо неё выполняет вредоносный компонент. Злоумышленник может либо изменить путь поиска, используемый программой, — например, переменную PATH или classpath, — либо манипулировать ресурсами в пути, указав их на свои вредоносные компоненты. J2EE-приложения и другие компонентные приложения, собираемые из множества двоичных файлов, могут иметь очень длинный список зависимостей для выполнения. Если одна из этих библиотек и/или ссылок подконтрольна злоумышленнику, то элементы управления приложением могут быть обойдены злоумышленником.
https://capec.mitre.org/data/definitions/38.html →Открыть в коллекции CAPEC →Злоумышленник эксплуатирует слабость в спецификации внешних библиотек приложения, чтобы воспользоваться функциональностью загрузчика, при которой процесс, загружающий библиотеку, ищет её сначала в том же каталоге, где находится исполняемый файл процесса, а затем в других каталогах. Эксплуатация данного приоритетного порядка поиска позволяет злоумышленнику подменить загружаемую библиотеку на свою вредоносную вместо легитимной. Атака может применяться с различными библиотеками и процессами загрузки. В реестре или файловой системе не остаётся криминалистических следов загрузки некорректной библиотеки.
https://capec.mitre.org/data/definitions/471.html →Открыть в коллекции CAPEC →| Продукт | Вендор | Статус |
|---|---|---|
| Отслеживается | ||
| python3.11 | Отслеживается | |
| python3.13 | Отслеживается | |
| python3.14 | Отслеживается | |
| python3.9 | Отслеживается |