Тот анпакер, о котором Вы говорите не решал всех вопросов с execryptor'ом, деобфускатора там нет, т.е. при грамотном подходе к защите распаковка практически не снижает защищённость приложения.
Мы оба про решение от RSI говорим? Относительно грамотного подхода к защите целиком согласен, народ покупает проты, но совершенно неадекватно их использует, так было еще со времен ASProtect'a, который, при грамотном подходе защищающего, тоже не просто снять.
Верно понял, мы говорим про анпакер от рси) аспр во все времена хорошо снимался, когда вм ввели были некоторые проблемы, но вм быстро расколупали и нормально декомпилируют сейчас.
Да ну вас, BiTHacK :) У вас, понятное дело, все просто снималось во все времена, а я тогда только начинал погружался в RE. Мое уважением вам и вашей команде.
Все, понял о чем вы. Действительно при грамотном подходе защищающегося анпакер не особо поможет, но когда прот тупо навешан? А таких примеров большинство. Мои задачи всегда покрывались, для меня самое важное — ресурсы приложения и анализ используемых технологий. Обычно это delphi application на который повесили то, что нашли в свободном доступе.
когда прот тупо навешан это во всех случаях заранее проигранная война, но если правильно использована вм или морф кода (хороший морф), тогда, как правило, на исследование уходит много времени (криптор ломается даже при грамотном навешивании, но исследовать километровые листинги очень проблематично, уходит порой несколько дней).
У него были большие проблемы с совместимостью. Сначала использовал ExeCryptor, но после многочисленных жалоб от пользователей перешел на Themida… о чем не желаю.
Я думаю, что навесная защита не представляет собой проблемы для опытного хакера не только в Themida. Во всех нормальных руководствах по защите об этом, пусть косвенно, но сказано.
Думаю, вполне. Эти утилиты ведь позволяют запускать внешние приложения? Никаких специальных возможностей для интеграции в билд-утилиты Темида не имеет. Просто позволяет запустить процесс защиты с командной строки.
Сколько лет слышу о темиде — столько лет они все планируют добавить поддержку х64. Так что есть большая вероятность, что это так и останется несбывшейся мечтой Рафаэля.
Если у вас продукт под Маки и под Linux, то Win32-only протектор вам точно не нужен :) Под Linux, правда, защищенное приложение можно будет под Wine запустить.
Совместимость она не ломает, просто exe перестает быть .NET сборкой и начинает работать только под Win32 или эмуляторами.
Прога работает везде, куда можно воткнуть GTK#. Сейчас сидим на дотфускаторе, пока всем довольны. А по поводу wine, у вас же .NET всё равно используется как-то, а он под вайном пока что работает отвратительно.
Да, согласен. Но обфускация и то, что делает Themida — это принципиально разные вещи. Под .NET принципы Themida уже не работают. IL-то не виртуализируешь так, чтобы сборка осталась управляемой. Содержимое тоже не зашифруешь, чтобы сборка грузилась как .NET. Единственный выход — обфускация кода.
Честно говоря, до сих пор я думал, что один Рафаэль. Но, отвечая на один из моих вопросов, он упомянул про изменение в составе разработчиков… Так что теперь непонятно :)
Проблема в том, что после обработки протектором, большинство антивирусов находит в файле ту или иную заразу. Выход — custom-билды. Точнее после многочисленных просьб разработчики могут скинуть специальную версию Themida с большим числом дополнительных параметров, изменяя которые, можно добиться требуемого результата (отсутствия ложных срабатываний). Но эту версию сначала надо допроситься, а потом еще найти нужную комбинацию параметров.
Большей частью эту сказку пустили вирусописатели. В большинстве взломщиков на самом деле есть трояны — это видно под виртуальной машиной и параноидальном режиме антивируса (если смотреть к каким компонентам ОС обращается взломщик). А на протекторы антивирусы срабатывают предупреждением о протекторе — сильно разные вещи.
Хех, особенно если паленый (скарженный / ломанный) прот используется. Все-таки с годами авторы крупных протекторов вроде бы нашли общий язык с АВ-индустрией.
Вот, о чем и речь, спасибо за пруф из первых рук :)
А иначе и быть не могло, АВ же не монстры какие-то. Тем более это взаимовыгодное сотрудничество. Утек свежий билд вмпрота (к примеру), есть вероятность что киддисы будут его на свои поделки накладывать. Сигнатурки / ватермарки улетают от Дерматолога в Dr.Web, киддисы и нелегалы караются анально, мир спокойнее, все довольны.
Пульните в личку, если не затруднит, кто это так умудряется. Детектят, мол, потенциально опасно / какой-нить генерик / или умудряются еще и в базе найти? ))
Совершенно верно, детекты есть. Вроде PEID. Надо, кстати, проверить. Темида умеет прятаться от детекторов. В интерфейсе есть настройка. Проверю как-нибудь, насколько это эффективно.
Вообще, Themida подписывает каждый защищенный файл ключом владельца. Если владелец объявляет ключ украденным, Касперский, например, начинает обнаруживать в совершенно невинном файле Win32.Black.a. Если ключ белый, украденным не заявлен, большинство антивирусов реагирует нормально. Во всяком случае, Каспер — точно. Могу дать безобидный exe потестить.
Разработчики протекторов тесно сотрудничают с производителями антивирусов и добавляют в свои антивирусные базы сигнатуры подписей ключей, заявленных как украденные.
Я уже 3 года являюсь владельцем лицензии на Themida, ни один раз общался напрямую с разработчиками. Свой ключ никому не давал. При проверки на virustotal программа без каких-либо заморочек собирала целую коллекцию «наград». В итоге, мне дали возможность изменять дополнительные параметры протектора. И только после многочисленных проб удалось нужной комбинацией параметров исключить ложные срабатывания. И периодически приходится их подкручивать.
Вот сейчас создал пустую форму и обработал протектором. Загрузил файл на virustotal, жду, пока подойдет очередь (пока #3123). Как будет результат, скопирую сюда ссылку.
А на кого вешали прот? На чистый каркас или реальное приложение? Думаю на реальной софтине (к примеру, delphi с кучей компонентов, fastmm, fastcode и madExcept'ом) может быть чууток иная ситуация по кол-ву фальш срабатываний, но приведенное вами все равно близко к реалиям. Спасибо, лишний раз убедился, что у нормальных АВ с нормальными протами все налажено как надо.
PS. Sunbelt (ужос), версии 3.9.2456.2, сканировал ~23 ед. времени (судя по всему секунды!) и нашел троя с управлением по irc.
Просто на приложение с одной формой и одной кнопкой на форме. Я думаю, на любой софтине будет все примерно одинаково, поскольку все равно все шифровано внутри. Антивирусники ведь не загружают exe как Windows. В лучшем случае немного кода через эмулятор проца пропускают.
От кого награды-то были? Касперский, Веб и Аваст вроде бы без проблем пропускают. Кроме того, нужно обращать внимание, что именно детектит антивирус. Часто Themida определяется как Packed.Themida или просто Packed.XXX. Конечно же, это не вирус. Всякие упаковщики вроде Pklite тоже так определялись.
Весь мир движется в сторону открытости, OpenSource, новых моделей ведения бизнеса и получения прибылей — мы же упорно покупаем «протекторы», прячем свой код и сами себя загоняем в угол зависимостей. Just as planned.
на файлы приложения антивирусы ругаются. Это был лишь пример. Потом возникают лишние вопросы, что, почему срабатывает антивирус. Рядовым пользователям нужно само приложение, остальное их не волнует.
Полностью его анпакать довольно сложно, хотя есть люди которые разбирают его по косточкам, starforce же trivium разобрали (кстати, большую роль там сыграл один российский реверсер).
Последний раз я разбирался с winlicense версии 2.1.0.1 (вроде бы), инлайн патч HWID занял не слишком много времени, хотя там конечно не так все тривиально как во многих других протах.
Один из самых сложных для разбора протекторов, из свободно продаваемых.
Ну дык, там достаточно много опций защиты, в том числе антидамп, шифровка ресурсов, защита форм delphi в частности и многое другое. Что вас заставило думать, что ваша DLL протектилась со всеми опциями?
«использование ей в работе строки Themida Professional» — было ведь написано. И как, кстати, определять наличие фемиды в упакованном файле, если приведенных критериев недостаточно? :-)
А что, PEiD в др. вебе не используют?
Насчет строки… не знаю, themida часто определяется тем, что он орет на отладчик и просит отправить письмо в ореанс, не любит драйвер filemon'а, рандомные имена секций… вообщем, вариантов много.
PEiD нам не нужен: 95% пакеров показывает сам движок, да еще и распаковывает автоматом. Остается Фемида, которую в эмуляторе видно сразу, Армадилло, который сигнатурно можно детектить и совсем уж экзотика.
В той DLL фемида была. Завтра специально посмотрю, кажись она через DbgPrint пишет про себя.
Моветон, но есть троянцы бразильские, которые в паканом виде 7-8 метров занимают.
95% — это как что-то общеизвестное, PECompact, Yoda, aspack и иже с ними. Приватные по именам не детектим, ну их.
Если быть поконкретнее — то что написано в ридми по поводу антидампа с приведенным скрином пустого хедера в памяти — остаток старого ридми xtreme protector'a, где это реализовывалось драйвером. Собственно толку от этого тоже получилось не много, ровно как и с CopyMem(II) у Armadillo — всё успешно дампилось внедрением дллки с дампером в сдампливаемый процесс.
Скрин с опциями протекции у Themida покажите.
А о каком дампе у PE Explorer'a идет речь, он же все в статике раскладывает, да и dll loader'у там взяться неоткуда.
Да откуда ж я его возьму? Троянописатели его со своими поделиями не распространяют :-(
PE Explorer, да, мог с чем-то попутать. Сейчас не на работе, завтра точно скажу что там было. Каюсь, но дамп все равно был :-)
Да не сомневаюсь, что у больших антивирусных компаний есть хорошие приватные утилиты для автоматизации, но генерик анпак и третий старфорс… не знаю, я видел приватные утилиты которые смогут анпакнуть starforce в автоматическом режиме, но только basic версию.
Я протекторы не особо люблю. Autoit делал, Exescript делал… Сейчас вот DEX андроидовский вялотечет… Я больше внутренности ковыряю у троянов, а не пакеры.
Я повседневно сталкиваюсь с протекторами и скажу одно — у темиды в ридми много преувличений/недароботок/старой инфы. Версия 2.1.1.0 отлично дампится, ровно как и распаковывается скриптом SnD от 9 октября, который в добавок отлично фиксапит коде реплейсы. А ВМ ручками разбирать, от этого никуда не деться, или же дампить ее отдельно и цеплять к уже обработанному ехешнику. Я практически уверен, что с 2.1.3.0 ситуация аналогичная.
Вопрос не однозначный, да, всем ясно — если софт популярный… вы хоть solidshield, хоть starforce вешайте — не поможет.
С другой, это все равно отсеивает часть любопытных, а например полностью декомпилировать пикод виртуальной машины это гораздо менее тривиальная задача, чем просто написать кряк… а значит код программы так просто посмотреть и изучить не получится.
Во времена SaaS, распределенных приложений и т.д. и т.п. ИМХО можно не заморачиваться такими вещами. Особенно если есть риск потерять часть пользователей потому что антивирус назвал ваш продукт трояном.
Поправьте если я ошибаюсь, но вроде продукты топовых корпораций не «защищаются» таким образом, и ничего, зарабатывают вроде.
Затем, что это сильно затрудняет жизнь взломщикам. В области, в которой я работаю, правда, Themida одну не используют. Обычно на пару с донглом каким-нибудь, в который можно поместить часть логики работы (Ява карты обычно). Достаточно много проектов используют такую схему работы и зарабатывают довольно-таки большие деньги.
Вообще да, если часть кода выполняется на токене, то это довольно сильно затрудняет реверс, ибо когда на чипе стоит флаг, то прошивку его снять довольно сложно, хотя… хоть в России я подобных сервисов не видел, китайцы это делают.
Снять прошивку нормальной явакарты очень и очень трудно (если карта защищена, конечно). Думаю, такое под силу только высокотехнологичным институтам, которых в мире единицы. Некоторые явакарты используются Visa в качестве электронных кошельков, средств аутентификации, цифровых подписей и так далее. Во всяком случае, карты вроде Gemalto egate и Gemalto TOP не читаются.
Я тоже проголосую за VMProtect! Особенно за версию VMProtect SenseLock Edition (это версия с электронным ключом SenseLock). Закрывает продукт намертво :) Снимать даже никто не берется.
В смысле? Был ведь результат на тот момент. Я не к тому, что VMProtect слабую защиту дает, а к тому, что все же берутся его ломать. Не такой уж он и неприступный совсем, чтобы никто даже не брался.
Жаль, кстати, что поверх него больше Themida не положить. Раньше можно было…
Защита Win32 и .NET приложений: обзор протектора Themida (X-Protector)