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

Уязвимость в модуле 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
      В какой-то момент ИБ-департамент крупной компании неизбежно задумывается о внедрении или замене SIEM-системы и сталкивается с задачей оценки бюджета, необходимого для ее внедрения. Но SIEM — это не легковесный продукт, который можно развернуть в имеющейся инфраструктуре. Практически все решения этого класса требуют дополнительного оборудования, так что для их работы придется приобретать аппаратное обеспечение (или арендовать его).
      Поэтому для расчетов бюджета необходимо представлять себе предполагаемую конфигурацию оборудования. В этом посте мы попробуем рассказать о том, как архитектура SIEM влияет на требования к аппаратной составляющей, а также предоставим примерные параметры, на которые стоит ориентироваться, чтобы определить предварительную стоимость необходимого оборудования.
      Оценка потока информации
      По своей сути SIEM-система собирает данные о событиях с источников и на основании корреляции этих данных выявляет угрозы для безопасности. Поэтому, прежде чем прикидывать, какое железо необходимо для работы системы, стоит оценить, а какой, собственно, объем информации эта система будет обрабатывать и хранить. Для того чтобы понять, какие источники потребуются, следует выделить наиболее критичные риски и определить источники данных, анализ которых поможет в выявлении и анализе угроз, связанных с этими рисками. Такая оценка нужна не только для расчета необходимого аппаратного обеспечения, но и для оценки стоимости лицензии. Например, стоимость лицензии на нашу систему KUMA (Kaspersky Unified Monitoring and Analysis Platform) напрямую зависит от количества событий в секунду (Events Per Second, EPS). И еще один важный аспект — при выборе SIEM-системы важно проверить, как именно вендор считает количество событий для лицензирования. Мы, например, учитываем количество EPS после фильтрации и агрегации, причем мы считаем среднее количество событий за последние 24 часа, а не их пиковые значения, но так поступают далеко не все.
       
      View the full article
    • KL FC Bot
      От KL FC Bot
      До Нового года и Рождества остаются считаные дни, а перегруженные службы доставки могут опоздать и не привезти нужные подарки вовремя. Конечно, тем, кому вы еще не купили подарок, можно преподнести цифровой подарочный сертификат или подписку. Но придумать интересный и полезный вариант подписки тоже нелегко, ведь уже почти все желающие обзавелись «Яндекс.Плюсом», «VK Музыкой» и аналогами, а дарить Telegram Premium уже даже как-то неудобно.
      Выход есть! Мы предлагаем подарить один из сервисов, который день за днем будет повышать уровень конфиденциальности получателя подарка. Ведь позаботиться о приватности хотят многие, но мало у кого хватает времени и сил сделать для этого необходимые шаги, и такой подарок станет одновременно необычным — и полезным.
      За редким исключением, сервисы, акцентирующие приватность, — платные. Ведь за серверы, хранящие данные, и разработку устойчивого к взлому софта нужно платить. А если не брать с подписчиков денег, то придется продавать информацию о них рекламодателям, как это делают Google и Meta*. Поэтому годовая подписка на сервис, повышающий приватность, может стать ценным подарком и в денежном выражении.
      С нашими рекомендациями получатель подарка сможет избавиться от небезопасных офисных приложений, сервисов заметок и мессенджеров, которые пользуются хранящейся информацией не по назначению, заменив их на приватные альтернативы.
      Но перед покупкой обдумайте два неоднозначных момента.
      Во-первых, сервисы, где важна коммуникация с людьми или совместная работа, бессмысленно дарить одному человеку — так, от зашифрованного мессенджера нет толку, если в нем нет хотя бы нескольких друзей. Возможно, такой подарок нужно сделать целой команде?
      Во-вторых, удобство и функциональность приватных инструментов иногда уступают «общепринятым» аналогам, не столь уважающим конфиденциальность. Насколько это критично — зависит от нужд и привычек одариваемого.
      Сделав эти оговорки, давайте посмотрим, какие качественные приватные альтернативы популярным сервисам достойны стать рождественским или новогодним подарком.
      Офисные приложения
      Личные дневники, черновики научных работ и финансовые расчеты все сложней уберечь от посторонних глаз. Сервисы типа Google Docs всегда были полностью онлайновыми, что порождало как проблемы утечек, так и споры о том, как Google обрабатывает хранящиеся там данные. Microsoft в последние годы стремится наверстать упущенное, включая даже в офлайновый Office целый набор спорных функций: автосохранение в OneDrive, «необязательные сетевые функции«, «функции LinkedIn». Само по себе хранение данных в облаке, возможно, не вызывало бы особой тревоги, если бы не опасения, что документы будут использовать для таргетинга рекламы, тренировки ИИ или еще каких-то посторонних целей.
       
      View the full article
    • KL FC Bot
      От KL FC Bot
      Угон аккаунтов в Telegram сегодня превратился в настоящий бизнес. Мошенники не только самыми изощренными методами крадут доступы к учетным записям, но и используют их для атаки на других пользователей с помощью дипфейков, социального инжиниринга и других методов. Обычно это работает так. Украв один аккаунт, злоумышленники начинают рассылать с него по всем контактам фишинговые сообщения с текстами вроде: «Привет, мне тут срочно деньги нужны, поможешь?», «Проголосуй за меня, пожалуйста, если не сложно» или «Вам отправили подарок – подписка Телеграм Премиум сроком на 1 год», чтобы угнать еще больше аккаунтов. Есть и более изощренные схемы, манипулирующие эмоциями людей – например, предложение о бесплатной фотосессии от якобы «начинающего фотографа, которому нужно наработать портфолио».
      В подобных сообщениях всегда есть фишинговые ссылки, зачастую выглядящие совершенно легитимно — например, как https://t.me/premium — но выводящие на сайты мошенников. Перейдя по ним и выполнив предложенные злоумышленниками действия, вы с большой долей вероятности лишитесь своего аккаунта в Telegram, а все ваши контакты окажутся под угрозой мошеннических рассылок уже от вашего имени.
      Помимо этого, угнанные или поддельные аккаунты могут использоваться не только для массовых фишинговых рассылок, но и для сложных таргетированных атак, порой с использованием дипфейков, направленных на сотрудников разнообразных компаний. Возможно, вы уже сталкивались с сообщениями от якобы «руководства компании» с обращением по имени-отчеству, рассказами о неких проверках компании со стороны государственных органов и требованиями в обстановке полнейшей секретности немедленно предоставить какие-либо данные или просьбой помочь компании деньгами с последующей компенсацией. Все это — фейки.
      При этом настоящий владелец аккаунта в Telegram может поначалу даже не подозревать, что он взломан, продолжать переписываться с друзьями, читать любимые каналы и думать, что по-прежнему не интересен мошенникам. Как такое вообще возможно? Telegram позволяет использовать один и тот же аккаунт с разных устройств, и, выманив у вас доступ к вашему аккаунту, мошенники открывают еще один сеанс на своем устройстве, не закрывая ваши активные сеансы. Затем они начинают переписку с вашими контактами, тут же удаляя отправленные от вашего лица сообщения в режиме «Удалить только у меня». При этом получатели эти сообщения видят, а вы — нет.
      Как показывает практика, мошенникам интересны все — даже самые обычные пользователи Telegram. Поэтому в этом материале мы ответим на два главных вопроса: как понять, что аккаунт в Telegram взломали, и что делать, если ваш аккаунт в Telegram взломан?
      Как понять, что ваш аккаунт в Telegram взломали
      Если хотя бы один пункт из списка ниже относится к вам – скорее всего, ваш аккаунт взломан.
      У вас внезапно поменялись никнейм или аватарка, а вы этого не делали. Вы участвовали в подозрительных конкурсах, розыгрышах или голосованиях. Вы переходили по ссылкам из сообщений в Telegram и вводили данные своей учетки – номер телефона, код подтверждения и пароль. Вы случайно заметили в любой переписке появившееся от вашего имени сообщение, которое тут же было удалено. Ваши друзья пишут, что с вашего аккаунта приходят странные сообщения, а вы их не видите. Вам пришел код подтверждения для входа на новом устройстве. Теперь обо всем по порядку.
       
      View the full article
    • KL FC Bot
      От KL FC Bot
      Всего десяток лет назад на людей, заклеивающих веб-камеру пластырем, смотрели как минимум странно. Сегодня же некоторые производители ноутбуков продают устройства со встроенной шторкой — одним движением можно физически закрыть камеру. Это, конечно, полезно, но микрофон-то работать продолжает в любом случае, так что польза от такого приспособления сомнительна. А есть ли вообще смысл закрывать веб-камеру в 2024 году — или это пережиток прошлого?
      Шпионы, шпионы повсюду
      Слышали когда-нибудь про шпионское ПО? Так мы называем трояны, предназначенные для слежки. Многие представители этого семейства умеют в том числе подсматривать за своими жертвами и подслушивать их через веб-камеру и микрофон — это было актуально десять лет назад, это же актуально и сейчас. Только в те времена вредоносное ПО умело, например, только делать скриншоты с веб-камеры, а сегодня вдобавок к этому может и пароли красть из буфера обмена, и перехватывать клавиатурные нажатия, и удаленно управлять вашим устройством, и пытаться изощренно скрыться от защитных решений (в нашем случае — безуспешно). Один из примеров — недавно обнаруженный нашими экспертами троян SambaSpy.
      Что касается подсматривания, то мотивы у злоумышленников сейчас могут быть самыми разными: кому-то интересно подглядывать за девушками, другие организуют настоящую коммерческую слежку за топ-менеджером компании, а третьи добавляют в свое вредоносное ПО такую функциональность «на всякий случай» — вдруг что-нибудь интересное получится подсмотреть.
      Вариантов, как именно может быть организована слежка, — масса, и о них мы рассказывали не один раз. А вот как защищаться? Способов защиты существует достаточно много, однако всех их можно разделить на две группы: физическую и программную. И закрывать веб-камеру, отключать микрофон и проверять разрешения, выданные всем свежеустановленным приложениям, — это по-прежнему обязанность всех владельцев устройств без надежной защиты.
       
      View the full article
    • KL FC Bot
      От KL FC Bot
      Крупные онлайн-сервисы купли-продажи прилагают значительные усилия по борьбе с мошенничеством, но киберпреступники постоянно изобретают все новые схемы обмана как покупателей, так и продавцов. В этом году популярность получила схема с онлайн-видеозвонком: «покупатели» просят показать им товар по видео, а на самом деле выманивают коды доступа в банк. Мошенническая схема в четырех актах.
      Акт первый. Подозрение
      К продавцу дорогостоящего или сложного товара (например, телевизора) обращается покупатель, который готов сразу же перевести оплату и максимально быстро забрать товар. Но есть нюанс — сначала он просит показать товар по видео. Функциональность большинства онлайн-барахолок не предусматривает такую возможность, а если она есть, то по «счастливой» случайности оказывается мошеннику неудобна: «Вы знаете, у меня почему-то тут не работает звонок, давайте лучше в WhatsApp?» Так разговор плавно перетекает в мессенджер. Переход в WhatsApp, Telegram или любое другое средство общения помимо официального инструмента площадки объявлений — это красный флаг. На своей территории мошенникам гораздо проще, например, заманить вас на фишинговый сайт, потому что многие онлайн-барахолки попросту не разрешают делиться в чате никакими ссылками.
       
      View the full article
×
×
  • Создать...