Топик одним предложением — есть техническая возможность заменить отображаемое имя файла в Winrar. И какой-нибудь image.jpeg успешно выполнится как .exe файл :) Я не буду делать полный перевод оригинального топика, но перескажу суть под катом.
Если рассмотреть структуру zip файла
То можно увидеть, что байты после смещения в 30 байт указывают на имя файла внутри архива.
Но! Если запаковывать через WinRar в ZIP файл, то WinRaR добавляет еще свои байты (общая структура, конечно же, такая же).
То можно увидеть, что имя файла (в примере выше запаковывался файл TEST1.txt) содержится два раза. И со вторым именем он распакуется, а с первым отобразится в проводнике Winrar.
И главный момент: мы можем выставить второе значение любым другим, ошибки не будет. Соответственно, при «типичном» действии — двойной клик по файлу с расширением .txt мы можем выполнить бинарный файл.
Выводы: пока не зафиксят (уязвима версия 4.2, скорее всего и другие) — распаковываем файлы, а потом уже открываем.
Автор: BeLove