Новая фишка для любителей AsprotectDelphi , Программа и Интерфейс , Исследование программНовая фишка для любителей AsprotectАвтор: Hex Ковырял я когда-то PowerStrip. Распаковал, все ок, только одна мелочь - не вылазит popup menu на иконки в трэе. Я и так и эдак - не нашел в чем глюк. Но вот попалась мне в руки прога Advanced Administrative tools которая пролила свет на эту тайну... Если распаковать Aatools(там новый аспр который кусок кода в себе зажал), прога будет работать, тока где не нажмешь "Start" будет вылетать то "Invalid Pointer", то еще какой-то другой мат. Сел я разбираться и нашел вот такое интересное место:
И чо оно такое творит? Если аспротект есть то push dword ptr [eax] сохраняет в стэк первые 4 байта переходника к апи GetStartupInfoA. Дальше по команде pop dword ptr [eax] ничего страшного не произойдет, т.к. в область памяти где лежат переходники аспротекта можно писать. Но что произойдет если аспротекта нет? Команда push dword ptr [eax] сохранит в стэк первые 4 байта апи GetStartupInfoA. А потом при pop dword ptr [eax] попытается записать данные в kernel32.dll... ОС такое не прощает :) Вот так то. Как бороться? Занопить push dword ptr [eax] и pop dword ptr [eax]. Это еще не все! Для того чтобы, мы немножко еще мозги понапрягали таких мест несколько и они динамически раскриптовываются по хитрющему алгоритму "-x +x" :) Вот к примеру "раскриптовка":
Ну это понятно:
Закриптовка:
Ну тут придется в закриптованном куске сделать не 90909090 а 92929292 :) В PowerStrip 3.29 имеется вот такое
А тут - 91919191 :) Как только тут подправим - сразу и popup вылазит и "Полезные советы"... Дыр-дыр-дыр, занавес и аплодисменты. Статья Новая фишка для любителей Asprotect раздела Программа и Интерфейс Исследование программ может быть полезна для разработчиков на Delphi и FreePascal. Комментарии и вопросыМатериалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта. :: Главная :: Исследование программ ::
|
|||||||||
©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007 |