Перейти к содержанию

Уязвимость в модуле tarfile | Блог Касперского


Рекомендуемые сообщения

В сентябре 2022 года компания Trellix опубликовала отчет об уязвимости в модуле tarfile. Это стандартная библиотека языка программирования Python, воспользоваться которой может любой желающий. Уязвимость позволяет записать в произвольную папку на жестком диске произвольный файл, а в некоторых случаях может приводить к выполнению вредоносного кода. Особенность данного исследования заключается в том, что проблема в Tarfile была обнаружена в августе 2007 года, почти ровно 15 лет назад! Но тогда ее не посчитали опасной. Давайте разберемся, почему так вышло и с какими проблемами в результате могут столкнуться разработчики софта на Python и пользователи этих программ.

Tarfile в деталях

Tarfile содержит код для работы с архивами формата tar. Этот формат широко используется в Unix-подобных операционных системах, а его история началась очень давно — в 1979 году. Tar — это простой способ упаковать большое количество файлов и папок. Изначально данная функциональность требовалась для удобной записи резервных копий на магнитную ленту. Теперь же в архивах tar может применяться и сжатие файлов, хотя это не обязательно. Модуль tarfile отвечает за создание и распаковку таких архивов, он используется разработчиками программ на языке Python как готовый инструмент для подобных задач.

Уязвимость в tarfile достаточно простая, она исчерпывающе описана в оригинальном багрепорте за август 2007 года. Это даже не совсем уязвимость: просто tarfile в точности воссоздает структуру папок, содержащуюся в архиве, при его распаковке. В том числе если имя файла в архиве представляет собой что-то вроде «../../../../../etc/passwd». Если распаковать такой архив от имени администратора системы, файл passwd запишется вовсе не в директорию, в которой расположен сам архив. Отрабатывая указатели «..», распаковщик сначала дойдет до корневой директории, а потом перезапишет файл passwd в директории etc. В Linux это будет означать стирание штатного файла с данными всех пользователей системы.

 

View the full article

Ссылка на комментарий
Поделиться на другие сайты

Компания Trellix — это клоуны, которые не знают, как и что должно работать. Модуль работает абсолютно корректно. Ответственность проверки путей должен брать на себя автор кода, который этот модуль использует. Об этом прямо сказано в документации: https://docs.python.org/3/library/tarfile.html#tarfile.TarFile.extractall Изначальный баг, который завели, был правильным — в документации ничего не говорилось о path traversal, что подразумевало бы, что модуль берёт проверки на себя. Документацию поправили в 2007-ом году и с тех пор всё работает правильно.

 

Пожалуй подождём ещё 15 лет, когда эти клоуны найдут аналогичную уязвимость в соседнем модуле для работы с zip архивами https://docs.python.org/3/library/zipfile.html#zipfile.ZipFile.extractall Или в реализации работы с zip в языке Go от Google: https://cs.opensource.google/go/go/+/refs/tags/go1.19.1:src/archive/zip/struct.go;l=94. Или вообще где угодно у тех, кто работает правильно.

 

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

 

Впрочем, Трелликс вышел из стен McAffe, а МаКафе тот ещё кусок недоразумения и от них никто не ждёт ничего полезного уже давно.

  • Like (+1) 2
Ссылка на комментарий
Поделиться на другие сайты

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Похожий контент

    • KL FC Bot
      От KL FC Bot
      Серьезные ИБ-инциденты порой затрагивают многих участников, зачастую и тех, кто повседневно не занимается вопросами ИТ и ИБ. Понятно, что в первую очередь усилия сосредоточиваются на выявлении, сдерживании и восстановлении, но, когда пыль немного осядет, наступает время для еще одного важного этапа реагирования — извлечения уроков. Чему можно научиться по итогам инцидента? Как улучшить шансы на успешное отражение подобных атак в будущем? На эти вопросы очень полезно ответить, даже если инцидент не принес существенного ущерба из-за эффективного реагирования или просто удачного стечения обстоятельств.
      Немного о людях
      Разбор инцидента важен для всей организации, поэтому к нему обязательно привлекать не только команды ИТ и ИБ, но также высшее руководство, бизнес-владельцев ИТ-систем, а также подрядчиков, если они были затронуты инцидентом или привлекались к реагированию. На встречах этой рабочей группы нужно создать продуктивную атмосферу: важно донести, что это не поиск виноватых (хотя ошибки будут обсуждаться), поэтому перекладывание ответственности и манипулирование информацией исказят картину, повредят анализу и ухудшат позицию организации в долгосрочной перспективе.
      Еще один важный момент: многие компании скрывают детали инцидента в страхе за репутацию или опасаясь повторной кибератаки по тому же сценарию. И хотя это вполне объяснимо и некоторые подробности действительно конфиденциальны, нужно стремиться к максимальной прозрачности в реагировании и делиться подробностями атаки и реагирования если не с широкой публикой, то как минимум с узким кругом коллег из сферы ИБ, которые могут предотвратить похожие атаки на свои организации.
       
      View the full article
    • KL FC Bot
      От KL FC Bot
      Игра Battle City, более известная как танчики, — символ давно ушедшей эпохи. Около 30 лет назад геймеры вставляли картридж в приставку, садились за пузатые телевизоры и пачками уничтожали вражеские танки до тех пор, пока кто-нибудь им не скажет про «кинескоп, который вот-вот должен сесть».
      Сегодня мир совсем другой, а танчики по-прежнему популярны. Дело в том, что современные аналоги предлагают геймерам не только поиграть, но и заработать NFT-токены. Злоумышленники тоже кое-что предлагают: сложную атаку для любителей криптовалютных игр.
      Бэкдор и эксплойт уязвимости нулевого дня в Google Chrome
      Эта история началась в феврале 2024 года, когда наше защитное решение обнаружило проникновение бэкдора Manuscrypt на компьютер пользователя из России. Такой бэкдор нам давно известен, его различные версии используют члены группировки APT Lazarus как минимум с 2013 года. Но что особенного в этой истории, если мы прекрасно знаем основной инструмент и методы работы злоумышленников?
      Дело в том, что эти хакеры обычно нацелены на крупные организации: банки, IT-компании, университеты и даже правительственные организации. Теперь руки Lazarus дотянулись до физических лиц — бэкдор на компьютере частного пользователя! Киберпреступники заманили жертву на сайт игры и получили полный доступ к ее компьютеру. Злоумышленникам удалось это сделать благодаря трем составляющим:
      невероятному желанию жертвы сыграть в любимые танчики в новой оболочке; уязвимости нулевого дня в Google Chrome; наличию эксплойта, позволявшего удаленно выполнить код в процессе Google Chrome. Для тех, кто переживает: компания Google выпустила обновление браузера, заблокировала сайт танчиков и поблагодарила исследователей безопасности «Лаборатории Касперского». Но на всякий случай: наши продукты детектируют и бэкдор Manuscrypt, и эксплойт. Подробности этой истории мы раскрыли в блоге Securelist.
       
      View the full article
    • SS78RUS
      От SS78RUS
      Добрый вечер. 
      С нами случилась ситуация 1в1 с вышеописанной. NAS Zyxel 326 со всеми патчами, отключены все выходы во внешнюю сеть, работал только как локальное хранилище, всё равно атаковали через уязвимость самого NAS -создали облачного пользователя, которого даже удалить не могу.
      Подскажите, какой вариант с починкой файлов? Заранее спасибо.
       
      Сообщение от модератора Mark D. Pearlstone Перемещено из темы.
    • KL FC Bot
      От KL FC Bot
      Желание оставаться анонимным в Интернете существует столько же лет, сколько и сам Интернет. Раньше пользователи считали, что, скрываясь за никнеймом, можно писать гадости про соседа на местных форумах — и никто не узнает об этом. Сейчас таких троллей можно вычислить на раз-два. С тех пор технологии совершили квантовый скачок: появились распределенные сети, анонимные браузеры и прочие инструменты для личной конфиденциальности. Один из них, Tor Browser*, особенно активно продвигал десять лет назад бывший агент АНБ Эдвард Сноуден.
      А может ли сегодня Tor обеспечить полную анонимность — или можно уже не заморачиваться и переходить на классический браузер вроде Google Chrome?
      Как деанонимизируют пользователей Tor
      Если вы впервые слышите про Tor и не представляете, как он работает, ознакомьтесь с нашим винтажным материалом. Там мы ответили на самые популярные вопросы: как в браузере обеспечивается анонимность, кому она нужна и чем обычно занимаются в теневом Интернете. Если коротко, то анонимизация трафика пользователей Tor обеспечивается за счет распределенной сети серверов, которые называют узлами. Весь сетевой трафик многократно шифруется, проходя через несколько сетевых узлов на пути между двумя коммуницирующими компьютерами. Ни один сетевой узел не знает одновременно и адрес отправки пакета данных, и адрес получателя, к тому же узлам недоступно содержимое пакета. Теперь, когда короткий экскурс закончен, мы сосредоточимся на реальной угрозе безопасности адептов анонимного Интернета.
      В сентябре немецкие спецслужбы установили личность одного из пользователей Tor. Как им это удалось? Главным ключом в деанонимизации стали данные, полученные в результате так называемого временнóго анализа.
       
      View the full article
    • KL FC Bot
      От KL FC Bot
      Как правило, разработчики ПО являются как минимум продвинутыми пользователями компьютеров. Поэтому может сложиться впечатление, что они с большей вероятностью смогут выявить и отразить атаку злоумышленников. Но, как показывает практика, от социальной инженерии не защищен никто — надо лишь найти к человеку правильный подход. В случае IT-специалистов таким подходом часто может стать предложение хорошо оплачиваемой работы в престижной компании. В погоне за вакансией мечты даже опытные айтишники иногда теряют осторожность и начинают вести себя ничем не лучше школьников, скачивающих пиратские игры из Интернета. А реальной целью (а точнее жертвой) атаки может стать его текущий работодатель.
      Недавно стало известно о новой схеме, которую хакеры используют для заражения компьютеров интересующих их разработчиков: под видом тестового задания они подсовывают соискателям скрипт с бэкдором. И это не изолированный случай, а лишь самая свежая итерация хорошо отлаженного процесса. Хакеры уже несколько лет активно используют фейковые вакансии для охоты на IT-специалистов — и в ряде случаев добиваются поистине оглушительного успеха.
      Казалось бы, это должно быть личной проблемой айтишника. Но в современных условиях велика вероятность, что и основную работу, и тестовое задание на новую вакансию специалист будет делать на одной и той же машине. То есть под угрозой может оказаться не только личная, но и корпоративная информация.
      Фейковая вакансия, криптоигра и ограбление на $540 миллионов
      Один из самых громких случаев успешного применения тактики фейковой вакансии произошел в 2022 году. Тогда злоумышленникам удалось связаться (вероятно, через LinkedIn) с одним из старших инженеров компании Sky Mavis, которая разрабатывает криптоигру Axie Infinity, и предложить ему высокооплачиваемую работу.
      Получив заманчивое предложение, сотрудник прилежно прошел несколько инсценированных взломщиками этапов отбора. В итоге все, естественно, закончилось получением оффера, который был отправлен жертве в виде PDF-файла.
       
      View the full article
×
×
  • Создать...