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

Уязвимость в модуле 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, а МаКафе тот ещё кусок недоразумения и от них никто не ждёт ничего полезного уже давно.

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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

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

    • KL FC Bot
      От KL FC Bot
      Израильские исследователи из Offensive AI Lab (что можно примерно перевести как «Лаборатория наступательного ИИ») опубликовали работу, описывающую метод восстановления текста из перехваченных сообщений от чат-ботов с ИИ. Рассказываем о том, как работает эта атака и насколько она опасна в реальности.
      Какую информацию можно извлечь из перехваченных сообщений чат-ботов на основе ИИ
      Разумеется, чат-боты отправляют сообщения в зашифрованном виде. Однако в реализации как самих больших языковых моделей (LLM), так и основанных на них чат-ботов есть ряд особенностей, из-за которых эффективность шифрования серьезно снижается. В совокупности эти особенности позволяют провести так называемую атаку по сторонним каналам, когда содержимое сообщения удается восстановить по тем или иным сопутствующим данным.
      Чтобы понять, что же происходит в ходе этой атаки, придется слегка погрузиться в детали механики LLM и чат-ботов. Первое, что надо знать: большие языковые модели оперируют не отдельными символами и не словами как таковыми, а так называемыми токенами — своего рода смысловыми единицами текста. На сайте OpenAI есть страница под названием «Токенизатор», которая позволяет понять, как это работает.
      Этот пример демонстрирует, как работает токенизация сообщений моделями GPT-3.5 и GPT-4. Источник
      Вторую особенность, важную для данной атаки, вы наверняка замечали, когда общались с чат-ботами: они присылают ответ не крупными кусками, а постепенно — примерно так же, как если бы его печатал человек. Но, в отличие от человека, LLM пишут не отдельными символами, а токенами. Соответственно, чат-бот отправляет сгенерированные токены в режиме реального времени, один за другим. Вернее, так делает большинство чат-ботов — исключение составляет Google Gemini, из-за чего он не подвержен данной атаке.
      Третья особенность: на момент публикации исследования большинство существующих чат-ботов, перед тем как зашифровать сообщение, не использовали сжатие, кодирование или дополнение (это метод повышения криптостойкости, в котором к полезному сообщению добавляются мусорные данные, чтобы снизить предсказуемость).
      Использование этих особенностей делает возможным атаку по сторонним каналам. Хотя перехваченные сообщения от чат-бота невозможно расшифровать, из них можно извлечь полезные данные — а именно длину каждого из отправленных чат-ботом токенов. В итоге у атакующего получается последовательность, напоминающая игру в «Поле чудес» на максималках, не для одного слова, а для целой фразы: что именно зашифровано, неизвестно, но известна длина отдельных слов токенов.
       
      Посмотреть статью полностью
    • achskull90
      От achskull90
      Блокируется шифрованный трафик расширения VPN в браузере Edge 124.0.2478.51 при активном антивирусе Kaspersky 21.17.7.539. 
       
      Вчера обновился антивирус до версии 21.17 и заметил данную проблему (на версии 21.16 такой проблемы не было) в браузере. Если антивирус выключить или в настройках антивируса для браузера активировать параметр не проверять зашифрованный трафик, то расширение начинает работать, то есть пропускать зашифрованный трафик через себя... 
       
      Разработчики, прошу, решить данную проблему. 
       
    • KL FC Bot
      От KL FC Bot
      Наверняка вы неоднократно получали спам или фишинговые письма с почтовых адресов, принадлежащих известным организациям. Возможно, вы при этом задумывались о том, как же злоумышленникам удается это делать. А может быть, даже задавались закономерным вопросом, не рассылает ли кто-нибудь вредоносные письма и от имени вашей компании.
      Вообще говоря, для борьбы с письмами, отправленными от чужого имени, существует несколько технологий: Sender Policy Framework (SPF), DomainKeys Identified Mail (DKIM) и Domain-based Message Authentication Reporting and Conformance (DMARC). К сожалению, время от времени обнаруживаются способы обхода этих методов защиты. В этом посте мы поговорим об одной из техник, которые используют спамеры для того, чтобы рассылать письма с адресов легитимных организаций, — об угоне доменов.
      Вредоносная кампания SubdoMailing и угон доменов у организаций
      Исследователи из Guardio Labs обнаружили масштабную кампанию по рассылке спама, которую они назвали SubdoMailing. В этой кампании, которая ведется как минимум с 2022 года, задействованы более 8000 доменов и 13 000 субдоменов, ранее принадлежавших легитимным компаниям, а также почти 22 000 уникальных IP-адресов. Средний объем спама, который рассылают злоумышленники, стоящие за SubdoMailing, исследователи оценивают в 5 миллионов писем в день.
      Операторы кампании SubdoMailing постоянно ищут подходящие домены компаний, срок регистрации которых истек, и заново регистрируют их на себя: в среднем таким образом они захватывают несколько десятков легитимных доменов в день. Ну а рекорд они поставили в июне 2023 года, зарегистрировав за один день целых 72 чужих домена.
      Чтобы избегать попадания захваченных доменов в спам-листы, злоумышленники применяют постоянную ротацию: домен используется для рассылки спама 1–2 дня, после чего он на долгое время становится неактивным, а в это время спамеры переходят на использование следующего. Через пару дней они оставляют в покое и его, подключают к рассылке новый — и так далее.
       
      Посмотреть статью полностью
    • KL FC Bot
      От KL FC Bot
      Европейский закон Digital Markets Act обязал крупные технологические компании сделать свои продукты более открытыми. Благодаря DMA на iOS появятся сторонние магазины приложений, а крупные мессенджеры должны предоставить возможность переписки с другими подобными приложениями — создать кросс-платформенную совместимость, «интероп» (interoperability). О том, как эта совместимость будет реализована в WhatsApp и Messenger*, недавно написали инженеры Meta*. Достоинства совместимости очевидны любому, кто отправлял и получал SMS или e-mail, — вы можете пользоваться этими сервисами, вообще не задумываясь, на каком телефоне или компьютере, в каком приложении и в какой стране пользуется SMS или e-mail ваш собеседник. Но и недостатки тоже известны и весомы — к подобным перепискам часто имеют доступ посторонние (от спецслужб до хакеров), а также они являются самыми массовыми каналами спама и фишинга. Возможно ли, что DMA сохранит достоинства совместимости, избавившись от ее недостатков?
      Отметим, что последствия DMA для App Store в iOS затрагивают только европейских пользователей, а вот кросс-платформенность, весьма вероятно, «накроет» всех, даже если подключаться к инфраструктуре WhatsApp будут только европейские партнеры.
      Можно ли переписываться в WhatsApp с пользователями других мессенджеров?
      Пока — только теоретически. Meta* опубликовала спецификации и технические требования к партнерам, которые хотят, чтобы в их приложениях можно было переписываться с абонентами WhatsApp или Messenger**. Теперь эти партнеры должны появиться, разработать мост между своим сервисом и WhatsApp и запустить его. Пока анонсов таких партнерств замечено не было.
      Владельцы и разработчики других сервисов далеко не всегда готовы внедрять подобную функцию. Одни считают ее небезопасной, другие не готовы тратить ресурсы на довольно сложную технологическую интеграцию. Meta* требует от потенциальных партнеров реализовать сквозное шифрование, сопоставимое по надежности с имеющимся в WhatsApp, а это могут воплотить далеко не все платформы.
      Но даже когда — и если — сторонние сервисы появятся, только те пользователи WhatsApp, которые сами явно захотели переписываться со сторонними сервисами, получат такую возможность. Автоматически она не включится.
       
      Посмотреть статью полностью
    • KL FC Bot
      От KL FC Bot
      Очень часто научные работы, посвященные аппаратным уязвимостям, описывают увлекательные шпионские сценарии. Именно к таким случаям относится свежая научная работа исследователей из университетов США и Китая. Они нашли способ кражи данных из камер видеонаблюдения путем анализа паразитного электромагнитного излучения и назвали эту атаку EM Eye.
      Реконструкция информации по паразитному излучению
      Представим себе такой сценарий. Есть секретное помещение, доступ в которое строго ограничен. Внутри, допустим, проходят важные переговоры, так что сам факт присутствия каких-то людей в этой комнате — важная информация. Там же установлена камера видеонаблюдения, запись ведется круглосуточно, но взломать компьютер, осуществляющий запись, невозможно. Впрочем, буквально в паре метров есть помещение, куда допускают гостей. Шпион проносит в это соседнее помещение устройство, которое для простоты будем считать слегка модифицированным радиоприемником. Этот «приемник» собирает данные, последующая обработка которых позволяет реконструировать картинку с камеры наблюдения в соседней секретной комнате. Реконструированное видео выглядит примерно так:
      Слева оригинальное цветное изображение с камеры видеонаблюдения. Справа — два варианта реконструкции изображения из паразитного радиоизлучения видеокамеры. Источник
      Как такое вообще возможно? Чтобы разобраться, давайте поговорим об атаках TEMPEST. Это кодовое название, придуманное американским Агентством по национальной безопасности для обозначения методов слежки с использованием каких-либо паразитных излучений. Равно как и средств защиты от такой слежки.
      Впервые такая аппаратная уязвимость изучалась еще во времена Второй мировой войны. Тогда в армии США использовалось автоматическое шифровальное устройство компании Bell Telephone: открытый текст на входе смешивался с заранее подготовленной случайной последовательностью символов. На выходе получалось зашифрованное сообщение. Устройство использовало электромагнитные реле, по сути большие переключатели.
       
      Посмотреть статью полностью
×
×
  • Создать...