15-летний Python-баг позволяет выполнить код и затрагивает 350 000 проектов

15-летний Python-баг позволяет выполнить код и затрагивает 350 000 проектов

15-летний Python-баг позволяет выполнить код и затрагивает 350 000 проектов

Уязвимость Python-модуля tarfile за 15 лет никто так и не пропатчил. А меж тем она затрагивает более 350 тысяч репозиториев с открытым исходным кодом и позволяет выполнить произвольный код.

Впервые о проблеме стало известно в 2007 году, ей присвоили идентификатор CVE-2007-4559. Интересно, что никто не стал устранять брешь, единственное — разработчиков просто предупредили о риске.

Брешь затрагивает код, использующий функцию tarfile.extract(). Это классический баг обхода пути (path traversal), позволяющий условному атакующему перезаписывать произвольные файлы.

Удивительно, что за все 15 лет не было сообщений об эксплуатации уязвимости, учитывая, что технические детали были доступны в отчете 2007 года. Тем не менее баг представляет опасность для цепочек поставки софта по моей день.

На оставшуюся дыру обратили внимание специалисты компании Trellix, описывающие ее следующим образом:

«Уязвимость существует из-за того, что код в функции extract в Python-модуле tarfile доверяет информации в объекте TarInfo».

Сообщение на площадке баг-трекера Python гласит, что вопрос был закрыт, поскольку документацию обновили, добавив приписку, что «распаковывать архивы из непроверенных источников может быть опасно».

Проанализировав масштаб проблемы, специалисты Trellix пришли к выводу, что уязвимость затрагивает более 350 тысяч проектов. В отчете исследователей описываются простые шаги, которых достаточно для эксплуатации CVE-2007-4559 в Windows-версии Spyder IDE.

Windows 11 после обновления может отрезать вас от проводного интернета

Похоже, у сисадминов снова «праздник»: в сообществе r/sysadmin на площадке Reddit обсуждают баг апгрейдов Windows 11, из-за которого рабочие станции после обновления внезапно теряют проводную 802.1X-аутентификацию и остаются без Сети.

Сценарий звучит неприятно: обновляете машину «поверх» (например, с 23H2 на 25H2; люди пишут, что это повторяется и на ежегодных переходах), перезагружаетесь — и всё, Ethernet молчит.

Причина, согласно описанию участников обсуждения, в том, что после апгрейда папка dot3svc оказывается очищенной, а вместе с ней пропадают политики / профили, которые нужны Wired AutoConfig для 802.1X.

Wired AutoConfig (dot3svc) — это тот самый компонент Windows, который держит проводной 802.1X в рабочем состоянии. А его политики лежат как раз в директории C:\Windows\dot3svc\Policies (плюс есть папки для миграции во время апгрейда). И вот когда эти файлы исчезают / не мигрируют корректно, машина не может пройти 802.1X на коммутаторе и получить доступ к корпоративной сети.

Самое злое тут — эффект «замкнутого круга». Без сети устройство не может дотянуться до контроллеров домена, чтобы подтянуть Group Policy и восстановить настройки автоматически. Поэтому в полях лечат по старинке: подключают устройство в «открытый» порт без 802.1X, делают gpupdate /force (часто именно /target:computer), и только потом возвращают на защищённый порт.

Есть и ещё один баг: в отдельных кейсах при апгрейде люди жаловались на проблемы с машинными сертификатами, что особенно больно организациям на EAP-TLS (когда 802.1X завязан на PKI).

При этом самое обидное — на официальных страницах Windows Release Health для 24H2 и 25H2 упоминаний про 802.1X/dot3svc в списке известных проблем сейчас не видно.

Что с этим делать прямо сейчас, если вы планируете массовые апгрейды: многие админы советуют хотя бы заложить «страховку» в процесс — например, заранее сохранить содержимое C:\Windows\dot3svc\Policies и вернуть его после обновления, либо обеспечить доступ к сети через временно открытый порт, чтобы успеть прогнать gpupdate.

RSS: Новости на портале Anti-Malware.ru