Жизнь после компиляции Bagie (bagie@bk.ru) Спецвыпуск: Хакер, номер #057, стр. 057-074-7 Вот мы и рассмотрели некоторые протекторы. В действительности их намного больше, и даже больше, чем может вообразить себе психически здоровый человек, но большинство из них либо не заслуживают внимания, либо не доступны для публичного обозрения. Здесь были приведены наиболее интересные, на мой взгляд, крипторы. Однако это вовсе не означает, что нужно ограничиться этим набором. Для своих разработок можно использовать и другие навесные защиты, некоторые из которых можно комбинировать в различных сочетаниях. Тестирование защиты Очень важно провести некоторое тестирование после установки навесной защиты. Суть тестирования заключается, прежде всего, в проверке полной работоспособности программы. После этой стадии также необходимо в некоторой мере протестировать защиту на соответствие уровню. Иначе говоря, стоит немного времени пожить в шкуре злоумышленника и попытаться всеми доступными средствами снять протектор. Как минимум, защита хотя бы должна быть стойкой к различным автоматическим распаковщикам. К универсальным распаковщикам пакеров и некоторых протекторов класса low end можно отнести GenericUnpacker и Quick Unpack. Следовательно, стоит попытаться снять защиту с помощью данных утилит, но с действительно хорошими протекторами типа Armadillo, ASProtect, Obsidium и др. можно и не пытаться сделать это, так как все равно ничего хорошего не получится. Многие протекторы используют защиту таблицы импорта в файле, так что можно использовать программу Import REConstructor для ее восстановления. Несмотря на то, что взломщик может и не знать реальной точки входа защищенной программы, в ImpREC'е указывай свой реальный OEP (EP программы, не упакованной ничем), и даже если таблицу импорта восстановить не удалось, испробуй трейсер для ее нахождения. Теперь, если после всех этих операций импорт оказался восстановленным до первоначального состояния, можно судить о том, насколько крута выбранная защита. Неплохо также проверить криптор в режиме отладки, дабы убедиться в работоспособности его антиотладочных премудростей, а те, кто знаком с принципами взлома приложений, могут пойти дальше и попробовать распаковать программу вручную. Многие виды навесных защит, анонсируемые сегодня на рынке, попросту не могут представить ничего особенного. Их документация гласит, что якобы именно ЭТА защита самая лучшая и никоим образом взломать ее нельзя. Не доверяй первой попавшейся документации, а ответ на вопрос о том, какие защиты действительно стоит попробовать, лучше поискать на различных крэкерских сайтах, так как те, кто ломают, в тысячу раз лучше знают, насколько хорош тот или иной протектор и для каких целей он сгодится. Упаковка имеет значение К вышесказанному добавлю, что многие бесплатные протекторы и упаковщики созданы как раз руками крэкеров, вирусописателей и еще бог знает кого. Но это связано вовсе не с тем, что названные лица пытаются осложнить себе жизнь - скорее, наоборот. В современном мире уберечься от вирусов намного проще, чем самим вирусам от различных антивирусных мониторов. Другими словами, стоит новенькому почтовому червю появиться в свет, как его уже поджидают с широко распростертыми объятиями антивирусники. Да и пользователь пошел подозрительный, и прежде чем запустить только что скачанную из интернета программу, тут же отправляет ее на проверку. Но выход есть: стоит упаковать программу чем-либо, и вот оно - чудо техники. Антивирусы не видят исходного кода и часто падают на этом факте, а точнее падали, так как почти все современные защиты от вирусов умеют также и распаковывать многие пакеры и протекторы, которые повешены сверху программы. Несмотря на это, объять все навесные защиты просто невозможно, следовательно, нужно знать, чем "правильно" упаковать хороший троян ;-). |