Comments 8
Довольно странно, что проверенные вами реализации для Windows и Linux ведут себя иначе. Имело смысл посмотреть на классический DOSовский pkuzip.
Но за напоминание о такой проблеме спасибо!
0
А Вы не проверяли, как 7zip реагирует на такие файлы в разных OS?
0
Проверил (от ОС это не должно зависеть, по идее), при просмотре архива (как zip1, так и zip64) и распаковке расширение берётся из local file (выделено красным цветом).
Таким образом, что пользователь видит при просмотре архива, то он получит и в результате распаковки — test.exe. Но если пользователь откроет этот архив Проводником, то увидит test.txt, т.к. Проводник смотрит на central dir.
При этом, архив успешно проходит тестирование в 7-zip — «ошибок не найдено». Но при просмотре свойств архива «Ошибки: Ошибка в заголовках»
Таким образом, что пользователь видит при просмотре архива, то он получит и в результате распаковки — test.exe. Но если пользователь откроет этот архив Проводником, то увидит test.txt, т.к. Проводник смотрит на central dir.
При этом, архив успешно проходит тестирование в 7-zip — «ошибок не найдено». Но при просмотре свойств архива «Ошибки: Ошибка в заголовках»
+1
Спасибо. А фокус с путями?
0
github.com/snyk/zip-slip-vulnerability/tree/master/archives
тоже нормально, распаковывает в текущий каталог
тоже нормально, распаковывает в текущий каталог
+1
Как вариант, можно написать скрипт или приложение, которое будет реагировать на свое имя файла. Для одного имени файла - какой-то безобидный функционал, для другого - дополнительно нечто вредоносное. Все равно практически никто не лазит с дизассемблером по файлам после их распаковки.
0
Не совсем про zip, но.
7zip с поддержкой zstd-сжатия github.com/mcmilk/7-Zip-zstd
7zip с поддержкой zstd-сжатия github.com/mcmilk/7-Zip-zstd
0
Sign up to leave a comment.
Неочевидные возможности ZIP на macOS