Как стать автором
Обновить

Комментарии 59

разработчики полностью отказались от поддержки формата ACE.

Где-то грустно вздохнули те, кто надцать лет назад запаковал свои драгоценные файлы в архивы этого формата. Когда они полезут их открывать, их ждёт сюрприз.

Еще есть PeaZip, поддерживающий ACE.
А что, уже запретили скачивать предыдущие версии, где поддержка есть?
Скачивать не запретили — просто они больше не развиваются, и неизвестно, будут ли они запускаться в Windows 2030.
Судя по тому, что:
код утрачен много лет назад

они не развиваются уже очень давно.

Да и вообще, формату 20 лет, да и популярности он особой не сыскал. Множество более популярных вещей умирали и за гораздо меньший срок.
Стоит заметить, что на многих ресурсах упоминается возможность переименовать .ace в .rar и непатченный WinRAR такой архив откроет, так что нельзя полагаться на то, что вы увидите, что пришёл файл .ace и не будете его открывать — может прийти как раз .rar. Так что или ставить бету WinRAR или удалять WinRAR и ставить 7Zip.
Стоит заметить, что на многих ресурсах упоминается возможность переименовать .ace в .rar и непатченный WinRAR такой архив откроет,


Проверил ради интереса, winrar ругается на формат архива при таком переименовании, но всё-таки сам архив открывает, да.

Так что или ставить бету WinRAR или удалять WinRAR

Или просто вручную снести из своей версии винарара UNACEV2.DLL. В таком случае он ACE-архивы всё ещё открывает и содержимое показывает, но ничего распаковать уже будет не в состоянии.
Так себе уязвимость. Сам winrar же не выполняет произвольный код. А проблема с запуском извлеченных файлов решается правами, srp или applocker-ом.
Ну кто из обычных пользователей будет этим страдать? Полмиллиарда установок — это же не только корпоративный сектор.
«Обычные пользователи», к сожалению, тупо сидят из-под админа(еще и с выключенным uac) и у них дырень в любом ПО = доступ ко всей системе.
А исполняемый файл распаковывать и не обязательно. Можно подменить какой-нибудь важный конфиг.

Кстати, srp и applocker не спасают от программ на java, .net core, python, js, ruby, а также, возможно, от rust и go если ставить их в исходниках (разумеется, только если эти штуки уже установлены на компьютере).
А исполняемый файл распаковывать и не обязательно. Можно подменить какой-нибудь важный конфиг.

Какой? Системные конфиги, например, перезаписать прав не хватит.

Кстати, srp и applocker не спасают от программ на java, .net core, python, js, ruby

Насчет js — ложь. java тоже можно добавить в список. С остальным дел не имел.
В какой список вы собрались добавлять java?
В список расширений srp. Также туда можно добавить js, чтобы wscript не выполнял его откуда попало.

Каких таких расширений? Объясните, какое такое "расширение" srp позволит сделать так, чтобы команда java -jar c:\trusted\foo.jar работала, а команда java -jar c:\untrusted\bar.jar — нет?


Дополнительное условие: команда java -jar c:\trusted\baz.jar c:\untrusted\data.txt тоже должна работать.

Каких таких расширений?

файловых.

чтобы команда java -jar c:\trusted\foo.jar работала, а команда java -jar c:\untrusted\bar.jar — нет?

Дополнительное условие: команда java -jar c:\trusted\baz.jar c:\untrusted\data.txt тоже должна работать.

В статье пишут про помещение в автозагрузку — от этого srp спасает(не запускается и пишет в лог). Как вы собрались помещением файла в каталог вызвать выше написанный код(java -jar /****/)?

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

P.S. если кто-то использует srp, отбирайте права у пользователей на выполнение mshta.
В автозагрузку можно положить ярлык, а там внутрях уже прописать всё что нужно.
ярлыки по-дефолту контролируются srp.

И как это поможет? Напомню, ярлык на java.exe с параметрами -jar c:\trusted\baz.jar в автозагрузке должен работать, это важное корпоративное приложение!

Добавьте его(ваше приложение) в разрешающий список по хэшу или сертификату. И почему вашему корпоративному приложению надо авто загружаться ярлыком?

Вы не объяснили как будете отделять java -jar c:\trusted\foo.jar от java -jar c:\untrusted\bar.jar. Хеш или сертификат чего именно вы собрались определять?


И почему вашему корпоративному приложению надо авто загружаться ярлыком?

Потому что производитель по-другому не умеет.

Вы не объяснили как будете отделять java -jar c:\trusted\foo.jar от java -jar c:\untrusted\bar.jar


Вы это собрались в ярлыке прописывать или где?
В ярлыке. А вы что, собрались считать хеш у ярлыка? Нет, это не сработает: ярлык у корпоративного приложения генерируется при установке и каждом обновлении, замаетесь каждый раз новый хеш подсчитывать.
В ярлыке. А вы что, собрались считать хеш у ярлыка? Нет, это не сработает: ярлык у корпоративного приложения генерируется при установке и каждом обновлении, замаетесь каждый раз новый хеш подсчитывать.

Самим прописать автозагрузку через реестр, добавить в белый список ваш .jar по хешу или сертификату.
Я всё еще не понимаю как вы собираетесь добавлять в список именно jar, а не java.exe
Просто добавляете правило(можно по сертификату ли хэшу) на ваш .jar файл.

у нас java-по так и работает, потому что сохраняет в свой каталог и поэтому сидит не в prg files, а в appdata у пользователя.
… и как оно будет работать?
?

если нет в белом списке, то никак. Понятно, что не в случае запуска через, например, конструкции «java -jar …». Но эту строку надо еще через что-то запустить, а в статье просто помещение файла в автозагрузку.
Вы постоянно забываете, что обычные программы на Java могут быть запущены только через java.exe или javaw.exe
И? От запуска через «java -jar …» srp не спасет, но от запуска через автозагрузку спасет и ярлыки можно запретить. Понятно, что если вам приходится иметь дело с таким кривым софтом, который только через ярлыки в автозагрузке работает, то тут как-то все настроить и не получится.
Вот вы запретили ярлыки. Как теперь пользователь должен запускать программы?
можно симлинки сделать.

Симлинк на java -jar ...? Увы, работать не будет.

А как оно будет работать-то?
с вылетом ). ок, не прав я насчет явы и симлинков. Но от описанного в статье можно защититься тупо в каталоге автозагрузки отобрать права на запись. И показанное в видео не пройдет.
Кажись поможет admilink
Да, к слову о конфигах. Таким способом можно устанавливать расширения для браузеров.
Даже если на расширения тоже белый список через групповую политику?
Вспомните, когда последний раз сами распаковывали какой нибудь архив (просто посмотреть, не пытаясь что то из него запустить), скачанный с любого сайта и представьте, что он мог незаметно поместить что то в автозагрузку.
(Причём владелец сайта может быть и не в курсе о происходящем, а сайт вполне себе безобидный)
Лично я ужаснулся и пошлёт сканировать систему.

Ps А Вы сами пользуетесь указанными программами?

Pss. Хуже всего, что вин пар не распространяет апдейты на архиватор, т.е. в безопастности только те, кто сам зайдёт на их сайт и скачать новую версию. А архиватор, это то, что поставил и забыл.
Вспомните, когда последний раз сами распаковывали какой нибудь архив (просто посмотреть, не пытаясь что то из него запустить), скачанный с любого сайта и представьте, что он мог незаметно поместить что то в автозагрузку.

Ну поместит. Дальше то что?

А Вы сами пользуетесь указанными программами?

WinRAR-ом? нет. Или вы про srp с applocker-ом? srp активно пользуюсь.
я просто не понимаю паники: если бы, например, сам WinRAR начинал выполнять произвольный код, то да — дырень.

Хуже всего, что вин пар не распространяет апдейты на архиватор, т.е. в безопастности только те, кто сам зайдёт на их сайт и скачать новую версию. А архиватор, это то, что поставил и забыл.

То что, нет апдейтов, это очень плохо, согласен.
apt-cache policy unrar
unrar:
  Installed: 1:5.6.6-1
  Candidate: 1:5.6.6-1
  Version table:
 *** 1:5.6.6-1 500
        500 http://archive.ubuntu.com/ubuntu disco/multiverse amd64 Packages
        100 /var/lib/dpkg/status

(ещё раз о пользе дистрибутивов по сравнению с "скачал исполняемый файл, установил и забыл").

А я несколько лет назад поставил бесплатный китайский «клон» KuaiZip, и он меня очень даже радует.
Ух-ты, дизлайки просто за упоминание программы? Какие специфические индивидуумы тут присутствуют. KuaiZip очень полезная программа, которая позволяет сохранять архивы kz(мало кому интересно), zip и 7zip и открывает распространенные архивы, в том числе rar. Что еще нужно? Знакомый интерфейс — как у WinRar и надежная работа (пока заметил только один мелкий недочет в интерфейсе — не совсем корректно работает хождение по папкам).
Хм, полмиллиарда пользователей, цена от 20 долларов… Да эти парни миллиардеры!
угу угу. вы лично (если пользуетесь) уже купили, да? :-) ну вот и остальные так же.
Много лет пользуюсь 7zip. Если бы нужно было обязательно использовать именно WinRar, то купил бы. Но обычно стараюсь найти бесплатное/свободное решение.
Правда вынужден признаться, что в лихие бандитские времена (в конце 90-х начале 2000-х) я часто снимал защиту с винрара, винзипа, винампа, и т.д. Снимал ASProtect и прочие защиты. Чисто для себя, в качестве тренировки, никогда это не распространял. Сейчас эти умения периодически пригождаются в моей работе.
А зачем с винрара было снимать защиты, онж как и тотал командер всего-то просил купить, особо ничего не вырезая (кроме подписей архивов).
Для тренировки же, чтоб он себя лицензионным считал. Мне было вообще всё равно что кракать. Я был молод и мне нужны были день безумные умения. Как ни странно, это всё весь помогает когда нужно что-то отладить на железе, а из всех возможностей один светодиод и бинарник прошивки.
Так вот как «RAR используют козлы»?
O, кто-то еще помнит FIDO :)
Теперь еще один довод появился, почему не планирую на другие ОС — часть исходников то потеряна

Остаётся понять, зачем сегодня нужен WinRar, если есть простой, удобный, бесплатный и свободный 7z? Который и жмёт к тому же (немного, конечно, но всё же) чуть лучше.

Например у меня под WinRAR написаны хитрые скрипты для архивации. Не знаю можно ли работать с 7-zip из командной строки (наверняка да), но мне просто тупо лень их переписывать.
В остальном действительно не понятно зачем он нужен. Тем более если еще быть честным и покупать его — он стоит $29 + НДС. Очень нарядно скажу я вам.

Однозначно можно. Я уже давно все манипуляции с архивами провожу из Far'а и до билда 1722 эти манипуляции проводились через встроенный в него плагин Multiarc, а он как раз и работал через 7z посредством передачи ему команд через командную строку (в новых Far'ах работа с архивами ведётся «напрямую» (плагин arclite) через библиотеку 7z.dll, так что надобность в отдельном exe'шнике отпала).

Ну я вот часто сталкиваюсь с таким багом. Открываю архив с фотками в 7-zip и двойным кликом хочу открыть какую-нибудь фотку. Под капотом она сначала распаковывается куда-то, а потом винда открывает её в программе по умолчанию.
Так вот, в случае 7-zip открывается просмотрщик картинок windows, но фотка в нём не открывается. Чтобы посмотреть, нужно сначала перетащить фотку из архива в какую-нибудь папку и оттуда уже руками открыть. Это напрягает.
А если открыть архив в WinRar, то по двойному клику картинки нормально открываются.
Сталкивался с этим на Win7 и Win10.

И ещё у 7-zip бывает корявая работа с большими и нестандартно упакованными архивами. Например, у меня личные фотки и документы запакованы в большие многогигабайтные rar-архивы, solid-типа, под паролем, с добавленной инфой для восстановления и прочим.
WinRar, в котором они создавались, открывает без проблем (ну, немного потупит, читая десятки тысяч файлов в большом архиве). А вот 7-zip может не справиться. Или вылетит, или зависнет, или ещё что-то.
Например когда есть требование вышестоящей организации (заказчика, смежника, регулятора, органа власти, секретарши начальника, разработчика используемой системы и т.д.) предоставлять именно в формате rar (они так хотят, ни чего другого не знают/не умеют, такой тех. процесс, это строго регламентировано, сами толком не знают почему, но отказаться невозможно), а как известно, 7zip не пакует в rar.
Теперь мне понятно, почему на корп. почту приходит спам с архивами *.ace. П.С. уже как года два приходит.

Отличный пример того, почему статьи следует читать в оригинале.


Здесь — концентрированная выжимка желтизны (19 лет!, пиццот мильёнов жертв!, мы все умрём!!11!)


В оригинале (https://research.checkpoint.com/extracting-code-execution-from-winrar/) — довольно подробное описание того, как эта уязвимость была найдена.

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории