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.

iOS 27 вводит режим восстановления прямо на iPhone

Apple решила сделать iPhone и iPad менее зависимыми от компьютеров. В iOS 27 и iPadOS 27 появилась новая система восстановления устройства, которая позволит решать часть серьёзных проблем прямо на самом смартфоне или планшете. Речь идёт о полноценном Recovery Mode — аналоге режима восстановления, который уже давно существует на macOS-компьютерах.

Работает это так: если iPhone выключен, пользователю достаточно включить его и продолжать удерживать кнопку питания даже после появления логотипа Apple.

Через некоторое время на экране появится индикатор загрузки, а затем откроется специальное меню восстановления.

Внутри доступны сразу несколько полезных инструментов. Пользователь сможет установить обновление системы, запустить диагностику устройства, полностью стереть данные, воспользоваться помощником Recovery Assistant или выполнить другие операции по восстановлению.

Источник: 9to5Mac

 

Любопытно, что новый режим показывает текущий уровень заряда батареи и автоматически подключается к сохранённым сетям Wi-Fi. Отсюда же можно попытаться загрузить устройство в обычном режиме.

Главное новшество заключается в том, что многие аварийные сценарии теперь можно будет исправить без подключения iPhone к компьютеру.

Например, если обновление iOS оборвалось из-за разрядившейся батареи или устройство попало в цикл бесконечной перезагрузки после неудачной установки новой версии системы, раньше пользователям зачастую приходилось искать десктоп и восстанавливать смартфон через DFU-режим.

С выходом iOS 27 часть таких проблем можно будет решить прямо на устройстве. В некоторых случаях Recovery Assistant даже позволит переустановить последнюю стабильную версию операционной системы без использования компьютера.

Конечно, большинству владельцев iPhone этот режим может никогда не понадобиться, но если смартфон внезапно превратится в дорогой кирпич после очередного обновления, шансов вернуть его к жизни станет больше.

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