The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

05.06.2018 22:26  Уязвимость Zip Slip, затрагивающая библиотеки для распаковки архивов

Раскрыты сведения об уязвимости Zip Slip, которая позволяет переписать или сохранить файлы за пределами базового каталога при распаковке архивов с использованием функций распаковки, предоставляемых различными библиотеками на Java, JavaScript, .NET и Go. В анонсе достаточно много PR и заметно преувеличена степень новизны проблемы и степени её опасности, в то время как уязвимость по сути повторяет проблемы, устранённые 10-20 лет назад в штатных утилитах распаковки архивов, перенося их на современные фреймворки.

Суть уязвимости в том, что можно подготовить модифицированный архив (tar, jar, war, cpio, apk, rar или 7z), в котором подставить в путь сохранённого в архиве файла символы "../../". При распаковке данного файла с использованием уязвимых библиотек из-за отсутствия проверки относительного пути файл будет сохранён в каталог вне базового каталога распаковки архива. В большинстве случаев уязвимость в библиотеках сводится к тому, что они допускают вывод путей с "../../" при выполнении перебора содержимого модифицированного архива. Сама уязвимость касается больше конечных приложений, в которых подобные пути не проверяются перед записью файлов.

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

Среди библиотек и приложений, в которых подтверждена проблема, упоминаются Java-компоненты zip4j, zt-zip и Plexus-archiver (исправлено в 3.6.0), JavaScript-модули Unzipper (0.8.13) и Adm-zip (0.4.9), .NET-библиотеки DotNetZip.Semverd (библиотека распаковки из .NET Core не подвержена проблеме), SharpZipLib и SharpCompress (0.21.0), mholt/archiver на языке Go (патч). Уязвимых библиотек на Python и Ruby не обнаружено так как в библиотеках Python аналогичные проблемы были устранены в 2014 году, а в библиотеках Ruby archive-tar-minitar, minitar и rubyzip в 2016 году. В Oracle java.util.zip и Apache commons-compress в реализации API уязвимостей нет, но были некорректные примеры в документации.

Среди продуктов, в которых использовались уязвимые библиотеки, отмечаются пакетный менеджер npm, платформа Google Cloud, продукты Oracle, Amazon CodePipeline, AWS Toolkit for Eclipse, IBM DataPower, Alibaba JStorm, Twitter Heron, Apache Storm, Apache Hadoop, Apache Ant, Apache Maven, Apache Hive, HP Fortify Cloud Scan Jenkins Plugin, OWASP DependencyCheck. Примечательно, что в 2015 году аналогичная проблема при обработке zip-файлов в SwiftKey применялась для получения root-доступа к смартфонам Samsung Galaxy S4, S4 Mini, S5 и S6.

  1. Главная ссылка к новости (https://snyk.io/blog/zip-slip-...)
  2. OpenNews: Релиз bzip2 и libbz2 1.0.6 с исправлением серьезной уязвимости
  3. OpenNews: Вышел релиз gzip 1.4 с исправлением опасной уязвимости
  4. OpenNews: В bzip2 1.0.5 исправлена опасная уязвимость
  5. OpenNews: В пакетном менеджере RPM устранена опасная уязвимость
  6. OpenNews: Уязвимость в GNU tar, позволяющая перезаписать сторонние файлы
Лицензия: CC-BY
Тип: Проблемы безопасности
Ключевые слова: zip, archive
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Ajax/Линейный | Показать все | RSS
 
  • 1.1, Аноним, 23:16, 05/06/2018 [ответить] [смотреть все]     [к модератору]
  • –2 +/
    Как у меня подгорает Ведь я глубоко копался в их исходниках правда фиксил б... весь текст скрыт [показать]
     
     
  • 2.2, Аноним, 23:22, 05/06/2018 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  
  • +/
    Чего подгорает-то? Пофиксят ж всё равно.
     
  • 2.9, А, 07:00, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • –12 +/
    Так ты и русский язык не изучил, хотя пользуешься Подгорание посмотри в слова... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.23, Аноним, 11:11, 06/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    "фиксик" посмотри в словаре, зануда!
     
  • 1.3, Аноним, 23:38, 05/06/2018 [ответить] [смотреть все]     [к модератору]  
  • –8 +/
    Еще одно подтверждение, что платфорорм одной корпорации C ,Java,go стоит избег... весь текст скрыт [показать]
     
     
  • 2.4, Annoynymous, 23:55, 05/06/2018 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  
  • +5 +/
    Ну да, отсутствие проверки путей, оно в платформе заложено, архитекторами.
     
  • 2.5, Аноним, 00:14, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +1 +/
    Вообще не то Вчитайся Очевидно речь о том что надо стремиться развивать уже су... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.6, AnonPlus, 01:13, 06/06/2018 [^] [ответить] [смотреть все]     [к модератору]  
  • +4 +/
    Вы, конечно, можете плевать на нас, но нам плевать на то, что вам плевать на нас... весь текст скрыт [показать]
     
  • 3.28, Плюсую, 11:34, 06/06/2018 [^] [ответить] [смотреть все]     [к модератору]  
  • +1 +/
    Плюсую Совсем не понятно, почему заново изобретают велосипед, вместо того, чтоб... весь текст скрыт [показать]
     
  • 2.13, Илья, 08:33, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  
  • +1 +/
    это ж вроде продукты трех разных корпораций
     
     
  • 3.19, Клыкастый, 11:06, 06/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +2 +/
    Это снаружи. Но автор знает сильно больше, чем простые смертные...
     
  • 2.15, qrKot, 09:30, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +1 +/
    Интересно, что же это за мегакорпорация, которая объединяет платформы Microsoft ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.20, Клыкастый, 11:07, 06/06/2018 [^] [ответить] [смотреть все]     [к модератору]  
  • +3 +/
    ЗАО Корпорация З Л А ... весь текст скрыт [показать]
     
  • 3.26, Фуррь, 11:17, 06/06/2018 [^] [ответить] [смотреть все]     [к модератору]  
  • +3 +/
    Reptiloids Global Inc ... весь текст скрыт [показать]
     
  • 3.33, ОнАнон, 14:56, 06/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    А если взять инициалы компаний, неплохо собирается OMG.
     
     
  • 4.44, anonymous, 06:43, 08/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    +100500
     
  • 4.48, Аноним, 12:13, 11/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    Вы не поверите: https://www.omg.org/
     
  • 1.7, A.Stahl, 01:24, 06/06/2018 [ответить] [смотреть все]    [к модератору]  
  • +/
    >при распаковке архивов с использованием функций распаковки, предоставляемых различными библиотеками на Java, JavaScript, .NET и Go

    Ок

     
     
  • 2.37, Аноним, 20:19, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +/
    То есть консольные распаковщики , написанные на человеческих языках людьми для л... весь текст скрыт [показать] [показать ветку]
     
  • 1.8, Anonymoustus, 05:37, 06/06/2018 [ответить] [смотреть все]    [к модератору]  
  • +1 +/
    Каждое поколение хомячья вновь и вновь повторяет одни и те же ошибки, потому что отвергает уже сделанное предыдущими поколениями. Видимо, это неизлечимо без смены воспитательной и образовательной парадигмы.
     
     
  • 2.14, КО, 08:41, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +2 +/
    В реальности никакой ошибки в программах нет Они делают заявленный функционал ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.22, Anonymoustus, 11:08, 06/06/2018 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    Прекрасная философия первозданного юникса была разработана не для дeбилoв, а для... весь текст скрыт [показать]
     
  • 3.27, Аноним, 11:28, 06/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    > туда

    это уже не "туда"

     
  • 2.17, Аноним, 10:22, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +3 +/
    Эта молодёжь растленна до глубины души Молодые люди злокозненны и нерадивы Ни... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.24, Anonymoustus, 11:13, 06/06/2018 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    Намёк понятен, но всё несколько проще Есть базовые вещи 8212 вроде букв алфа... весь текст скрыт [показать]
     
     
  • 4.49, trolleybus, 14:33, 13/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    > Поколение Z буковок не знает, не умеет, потому что «устарело».

    Поколение Z еще знает, а вот следующее точно не будет - все буковки закончились до них

     
     
  • 5.50, Anonymoustus, 14:53, 13/06/2018 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    >> Поколение Z буковок не знает, не умеет, потому что «устарело».
    > Поколение Z еще знает, а вот следующее точно не будет - все
    > буковки закончились до них

    Да я тогда уж совсем старенький буду — так что пох.

     
  • 1.29, Kekistani, 11:44, 06/06/2018 [ответить] [смотреть все]    [к модератору]  
  • –2 +/
    А вот про Rust ни слова. Это только говорит что за ним светлое будущее ибо там токого не может быть по определению.
     
     
  • 2.31, Аноним, 14:05, 06/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +1 +/
    Верно borrow checker увидет, что у не проставлен lifetime и программа ... весь текст скрыт [показать] [показать ветку]
     
  • 1.42, Аноним, 20:45, 06/06/2018 [ответить] [смотреть все]     [к модератору]  
  • +1 +/
    Достаточно много связей с общественностью Что за дичь Редактор, не употребляй ... весь текст скрыт [показать]
     
     
  • 2.45, Аноним, 08:36, 08/06/2018 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +1 +/
    Вы бы хоть сами в словарь заглянули и почитали в каких ситуациях употребляется с... весь текст скрыт [показать] [показать ветку]
     
  • 1.46, Аноним, 10:26, 10/06/2018 [ответить] [смотреть все]     [к модератору]  
  • +/
    Как-то дико такое читать С первых же строк по распаковку вне текущего каталога ... весь текст скрыт [показать]
     
  • 1.47, Старый одмин, 01:11, 11/06/2018 [ответить] [смотреть все]    [к модератору]  
  • +/
    Это все потому что нужно иметь только одну рассово верную библиотеку для всех фреймворков (на C).
    А то понаехали тут...
     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:


      Закладки на сайте
      Проследить за страницей
    Created 1996-2018 by Maxim Chirkov  
    ДобавитьПоддержатьВебмастеруГИД  
    Hosting by Ihor