Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 12 ноября!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

FAQ по взлому программного обеспечения и не только

Обсудить статью на форуме

Хорошая подборка видеоуроков, инструментов крэкера, книг и статей - здесь.

Автор: FEUERRADER <feuerrader@nm.ru>

За основу взят FAQ от Vallkor&Fess
Q: FEUERRADER, как читается твой ник?
 A: По-немецки это читается "фаэрэдэр"-огненные колёса. А вообще называйте как хотите:
 можно "фоер", "фуер", "фуеррада" или как хотите.
 
 Q: Как мне взломать прогу XXX?
 A: Напиши в гостевую книгу, авось, кто и сериал подкинет.
 
 Q: У меня есть shareware программа, с чего мне начать, чтобы ее взломать?
 A: Вот алгоритм твоих действий: 1) определить, упакована ли программа. Если да, то
 распаковать. Для определения используй, например, прогу Peid (лежит тут). 2) начинай
 отлаживать ее SoftICE'сом или TRW2000. Поставь брейкпоинты и т.д.
 
 Q: Я выяснил, что программа ничем не запакована и Peid показывает: Microsoft Visual
 C++ 6.0. Что это значит?
 A: Это значит, что программа написана на MS C++, чтобы начать взлом программы сделай
 следующее: открой то окно, где нужно вводить рег. код (или серийный номер...). Теперь
 открой Softice (Ctrl+D) и пиши bpx GetDlgItemTextA и bpx MessageBoxA. Жми F5. Вводи
 любые данные вместо серийного номера и жми OK (или др.). Должен выскочить SoftIce.
 Если этого не произошло, то ты сделал что-то не так или тебе попалась какая-то супер-
 пупер-навороченная прога.
 
 Q: Вылезло окно SoftIce, что дальше?
 A: Нажми несколько раз F12, пока не увидишь (в заголовке окна, где ты вводишь команды
 для SoftIce) текст с названием программы, которую ты хочешь ломануть. Дальше жми
 Ctrl+Up или Ctrl+Down и увидишь, что исходный код двигается вверх или вниз. Пролистывай
 вверх, пока не увидишь строку типа USER32!GetDlgitemTexta() и где-то рядом строку
 "MessageBoxA". Обычно между этими строками есть условные переход(ы) -
 JZ, JNZ, JE, JNE или др.. Если так,то попробуй этот прием. Удали прежние брейкпоинты:
 "bc *" и поставь новый на той строке, где написано GetDlgitemTexta (надеюсь ты знаешь,
 как это делается: bpx адрес_строки_GetDlgitemTexta). Выйди из SoftIce: F5. Теперь
 повтори всё с вводом регистрационных данных в окне программы. Жмешь в проге ОК и
 выскакивает SoftICE. Нажимай F10, пока не дойдешь до строки с условным переходом, но
 не делай этот переход! Найди в окне регистров букву z или Z и замени ее на
 противоположную по регистру (Z на z или наоборот). Теперь пройди этот переход, нажав
 F10. Далее жми F5. Если покажется красивое окно, что данные, введенные тобой верны,
 то ты взломал программу!
 
 Q: Я выяснил, что программа ничем не запакована и Peid показывает: Borland Delphi x.x
 Что это значит?
 A: Это значит, что программа написана на языке Delphi. Для такой программы, чтобы начать
 взлом сделай следующее: вводим данные в окне ввода имени и регистрационного кода.
 Нажимаем Ctrl+D. Вводим команду: s 0 l ffffffff "ваш_рег_код". После того, как найдется
 эта строка в памяти, это будет в районе 8xxxxxxx. Ставим бряк
 bpmb <адрес найденой строки> rw. Теперь нажимаем Ctrl+D, нажимаем ОК в программе.
 Вываливаемя в SoftIce. Жмем F12 раз 8, пока не увидим примерно такую строку:
 mov eax, xxxxx. Проходим ее по F10. Вводим d eax.
 Если в окне данных появился ваш рег. код, то удаляем страрый бряк bc*. Ставим новый
 bpmb eax rw. А дальше по обстоятельствам.
 
 Q: Peid показывает какое-то: ASProtect 1.2x [New Strain] -> Alexey Solodovnikov. Что
 это значит?
 A: Программа упакована криптером-протектором ASProtect 1.2x. Распаковать эту программу
 может только довольно опытный и умелый кракер, притом ПОКА только в ручную. Думаю тебе
 не стоит за это браться, хотя, чем черт не шутит!
 
 Q: Peid показывает какое-то: UPX 0.89.6 - 1.02 / 1.05 - 1.22 -> Markus & Lazlo. Что это
 значит?
 A: Программа упакована пакером UPX, версии 0.89.6 - 1.02 / 1.05 - 1.22. Для распаковки
 можно использовать такие утилиты:
 1) Сам UPX с ключом -d "прога.exe". Cкачать UPX можно тут.
 2) Generic Unpacker for UPX by Bratalarm.
 Технология распаковки достаточно проста. Используй тулзы или попробуй в ручную. Про то,
 как в ручную, читай здесь.
 
 Q: Peid показывает какое-то: ASProtect 1.1c MTE -> Alexey Solodovnikov. Что это значит?
    Peid показывает какое-то: ASPack 2.12 -> Alexey Solodovnikov. Что это значит?
 
 A: Программа упакована криптером-протектором ASProtect 1.1с или ASPack 2.12. Распаковать
 эту версию ASProtect и ASPack может тулза Caspr 1.1 by SAC.
 Вообще CASPR может распаковать и другие версии ASProtect и ASPack. Попробуй, может
 получится!
 
 Q: Peid показывает какое-то: UPX 0.71 - 0.72 -> Markus & Lazlo. Что это значит?
 A: Программа упакована пакером UPX, версии 0.71-0.72.
 
 Q: Peid показывает какое-то: PE Crypt 1.02 -> random, killa & acpizer. Что это значит?
 A: Программа упакована криптером/пакером PE Crypt 1.02. Достаточно хороший результат
 распаковки этого криптера дает тулза Bye PE-Crypt 1.02 by Iczelion & Plushmm.
 
 Q: Peid показывает какое-то: PECompact 1.4x or above -> Jeremy Collake. Что это значит?
 A: Программа упакована пакером PECompact. Не слишком "сильный" пакер. Распаковать
 помогут тулзы:
 1) PEunCompact v0.01 by Chafe. Как я понял поддерживает распаковку только PECompact
 до версии  0.971b.
 2) tNO-Peunc by aK_ of tNO. Поддерживает до версии PE-Compact 1.30.
 3) UnPECompact by yoda. Поддерживает версии PECompact аж до 1.69.
 
 Q: Peid показывает какое-то: Armadillo 1.xx - 2.xx -> Silicon Realms Toolworks. Что это
 значит?
 A: Программа упакована криптером Armadillo. Очень мощный криптор, сравнимый мощностью
 разве что с ASProtect. Попробуйте распаковать этими тулзами, однако они не
 восстанавливают таблицу импорта автоматически. Делается дамп и даются указания в какое
 место сунуть Import Table.
 1) Un-Armadillo by therain. Поддерживает Armadillo до версии 1.83.
 2) Armadillo Deprotector by tHE ANALYST. Поддерживает Armadillo до версии 1.90.
 3) Demaradillo by CYBER DAEMON. Поддерживает Armadillo 2.51.
 4) Armadillo Killer by ArmKiller. Поддерживает Armadillo 1.7x - 2.5x.
 5) DilloDumper by LunarDust. Работатет только из под Win2k/XP. Поддерживает распаковку
 вплоть до Armadillo 3.1x
 
 Q: Peid показывает какое-то: Shrinker 3.4 -> Blink Inc. Что это значит?
 A: Программа упакована криптером/пакером Shrinker 3.4. Могу лишь сказать, что этот
 криптер среднего класса и к нему уже давно имеются анпакеры. Хотя бывают и "сложные"
 случаи. Тулзы для распаковки:
 1) DeShrink by [j0b]. Поддерживает Srinker 3.4
 2) UnShrinker by Andrew Shipinsky. Поддерживает Shrinker 3.2/3.3.
 3) Ned by snajder. Поддерживает SHRINKER 3.xx. Но распаковывает программы только
 написанные на языке Visual Basic 3.0. Будьте внимательны!
 
 Q: Peid показывает какое-то: This is a NE file. Что это значит?
 A: Это не PE файл, а так называемый NE. Для описания этого формата исполняемых
 файлов ищите дополнительную литературу.
 
 Q: А как крэкеры создают, так называеме, ключегены?
 A: С помощью SoftIce анализируется участок кода на ассемблере, где вычисляется верный
 регистрационный номер. Чтобы написать кей генератор, нужно обязательно знать какой-либо
 язык программирования. Обычно достаточно знать MS Visual C++ или Delphi/Pascal.
 
 Q: Где найти туториалы по ломке программного обеспечения?
 A: Введите в поисковике "статьи по взлому" или что-то в этом роде.
 
 Q: Какими инструментами пользуются кракеры?
 A: Каждый кракер предпочитает собственный набор. Я предпочитаю:
 - TRW2000 1.23 (как отладчик (дебагер))
 - Win32DASM 10.00 (как декомпилятор)
 - HView (как hex-редактор и дизассемблер)
 - NBGCleanRegistryMonitor и FileMon (для просмотра обращений программы к внешним файлам и
 системному реестру). Найти очень много инструментов можно тут.
 
 Q: Я ломая программу изменил байты программы и она отказалась запускаться, сказав:
 "Программа была изменена. Возможно это вирус! Переустановите эту программу". Как
 отключить проверку на изменения кода программы?
 A: Дизассемблируем, смотрим, где находится эта строка с сообщением о взломе. Смотрим,
 откуда она вызывается (чуть выше в исходном коде). И исправляем там переход. Или
 ставим бряк на MessageBox и исправляем переход. Однако, в большинстве случаев
 используется комбинирование защит. То есть проверка на изменение кода программы
 (проверка CRC32) комбинируется с антиотладочными средствами и криптованием программы.
 Поэтому ты не сможешь добраться до изменения кода, пока не снимешь вышеуказанные
 защиты.
 
 Q: Я распаковал программу запакованную пакером, почему она не дизассемблируется в
 Win32Dasm?
 A: Exe-паковщики исправляют таблицу размещения в PE. Но можно поступить так: Запускаем
 ProcDump32. Запускаем в нем PE-Editor. Открываем распакованный файл. Нажимаем Sections.
 Там нажимаем на первой секции (в C++ это .text) правой кнопкой, выбираем Edit и в поле
 characteristics вместо C0000040 пишем E0000020. Так же можно сделать и с секцией .rsrc.
 Почему так, смотри стандарт PE.
 
 Q: Я немного умею программировать и создал программный продукт. Как мне запаковать его
 так, чтобы взломщики потрудились с его взломом?
 A: Могу посоветовать для упаковки UPX 0.72. Я видел, что даже крэки от TSRh Team
 (очень элитная РУССКАЯ(?) кракерская команда) упакованы именно этой версией UPX. Также
 можно воспользоваться UPX 1.2x, но использовать после упаковки какой-нибудь
 "UPX Scrambler". Я рекомендую свой HidePX. Можно использовать
 ASPack 2.12, но это в крайнем случае. Пакер PECompact довольно хорошо пакует. Но,
 помните, НЕТ такого пакера, которго нельзя было бы распаковать!
 
 Q: Я не хочу ломать какие-то там крякмисы (специальные программы для взлома), а хочу
 взломать программу с простенькой защитой. Что ты мне можешь посоветовать?
 A: Для начала попробуй взломать Internet Maniac 1.2, Command Line 95.
 
 Q: А как можно определить, на каком языке написана программа, без всяких там PeiD?
 A: Для этого нужен опыт взлома. Новичку это дается с трудом. Однако, есть способы.
 Используются смотрильщики ресурсов: Restorator 2.52, ResHacker 3 и др. Кстати, часто
 возможен взлом и без Softice/Assembler/Win32Dasm.
 
 Q: Что лучше: SoftIce или TRW2000?
 A: Однозначно ответить трудно, однако нужно отдать должное TRW2000 (а точнее его
 разработчикам-китайцам). Молодцы, ребята! Большинство антиотладочных приемов у разных
 там криптеров основаны против SoftIce. Чтобы не устанавливать FrogsIce или IceDump,
 проще использовать TRW2000. К версии TRW2000 1.23 можно найти кряк на сайте
 www.keygen.us.
 
 Q: Что значит зациклить прогу?
 A: Это значит, что на указанной позиции в файле нужно заменить инструкцию (обычно
 это джамп) на EBFE. Если команда более 2 байт, то остаток забиваем NOPами (опкод=90).
 Программа зациклит свою работу и Вы сможете сделать ее дамп. Обычно такой прием
 используется для ручной распаковки программ.
 
 Q: Как сбросить trial у программ защищенных VBOX ?
 A:
 1. Скачать RegMon.
 2. Запустить его (поставь фильтр на запись) найдти 2 ключа в CLSID, куда VBOX пишет
 информацию. Удалить их.
 3. Удалить каталог \Windows\VBOX
 4. Удалить все файлы osxxxxxx.bin из корня диска с Windows.
 5. Удалить все файлы \Windows\System\wsxxxxxx.ocx
 Теперь переставляй приложение и триал будет работать с начала.
 (совет взят с сайта www.reversing.net)
 
 Q: Программа работает 30 дней, пакована ASProtect 1.2x [New Strain]. Как снять у нее
 триал?
 A: Можно попробовать прокрутить время вперед, т.е. сделать так, чтобы закончилось
 trial-время программы. Теперь запустите монитор реестра и спокойно смотрите откуда
 вызываются строки о триале.
 
 Q: Программа работает 30 дней, пакована ASProtect 1.2 или более ранней версией. Как
 снять у нее триал?
 A: Могут помочь программы по поиску ключей в реестре, оставленных ASProtect. Могу
 посоветовать Die, ASProtect, Die 2.5 от CyberManiac. Пытается искать ключи от новых
 версий ASProtect 1.2x [New Strain], но эта функция плохо работает.
 
 Q: Программа работает 30 дней, ничем не запакована. Как снять у нее триал?
 A: Эта программа использует файлы или ключи реестра для учета дней. Чтобы узнать,
 какой именно файл/ключ реестра хранит информацию о тральном периоде, нужно использовать
 программы-шпионы. Для анализа реестра используйте RegMon, а для анализа
 файлов - FileMon. Эти пограммы легко найти в интернете. Достаточно зайти на поисковый
 сервер и произвести поиск по названию программы.
 
 Q: Я не могу взломать программу, изменив код, хочу взломать ее, убрав наг-скрин
 (назойливое окно, выползающее, обычно, при запуске и/или выходе программы) и пробный
 период (trial period). Что мне для этого нужно делать?
 A: Для снятия пробного периода, нужно найти файл/ключ реестра, хранящий информацию
 о пробном периоде, удалить этот ключ/файл. Если пробный период восстановился, то
 триал сломан. Для снятия наг-скрина рекомендую использовать
 InqSoft Sign 0f Misery v2.x от CyberManiac.
 Это достаточно мощная система для снятия наг-скринов и автоматизации управления
 контроля за триал периодом. Т.е. S0M создает маленькую программку (~50КБ), которая
 может использоваться для запуска основной программы (так называемый, LOADER-загрузчик).
 При этом до запуска осн. программы исполняются процедуры по продлению триала и
 убиранию наг-скрина. Вообщем, скачайте эту вещь и почитайте хэлп, чтобы окончательно
 врубиться. Очень рекомендую!
 
 Q: Я ничего не понимаю в ассемблере. Что мне делать?
 A: Прочитай очень краткую инфу о командах ассемблера. Всё собрано в один help файл.
 Легко читается. Рекомендую каждому!
 
 Q: Я ничего не понимаю в SoftIce. Что мне делать?
 A: Все документированные возможности и функции отладчика Soft-Ice от производителей.
 Всё это дело грамотно переведено на русский язык. Советую прочитать, перед тем как
 задавать глупые вопросы на форумах.
 
 Q: Я скачал с сайта А. Солодовникова ASProtect 1.2.Но эта версия незарегистрированная.
 Где можно найти нормальную зарегистрированную версию ASProtect 1.2?
 A: Я сам долгое время искал зарегенный ASProtect. Нашел! Но как оказалось, скаченные
 мной версии легко распаковывает Caspr 1.1.
 
 Q: FEUERRADER, у меня есть вопрос, который ты не осветил в этом FAQ. Можешь ли ты мне
 помочь во взломе программы ХХХ? У меня есть к тебе вопросы, как мне их тебе задать?
 A: Вы можете задать какие-либо вопросы в гостевой книге, т.к. я ее просматриваю гораздо
 чаще, чем e-mail. Задавайте свои вопросы в гостевой книге.
 Я не делаю крэки по заказу! Я могу только помочь советом в гостевой! По мылу можете
 программы даже НЕ ПРИСЫЛАТЬ!



Все права защищены ©  2003 



Обсуждение статьи: FAQ по взлому программного обеспечения и не только >>>


Комментарии к статье: FAQ по взлому программного обеспечения и не только

Scorpio 11.01.2005 10:25:19
Ломал прогу, её триальность заключалась в 2-х нагскринах, один лежал в ресурсах и я его удалил, но вто рое было собственным окном проги, и а в ресурсах лежал только стринг с текстом заголовка и текстом сообщения, как убрать ето окно?
---
Angel_In_Black 17.06.2005 18:37:53
Кто может подсказать основные принципы взлома проги, которая работает до определенной даты.
Например, прога работает до 01.08 без вопросов, а 02.08 говорит, что срок эксплуатации истек и вылетает. Причем, если поменять дату в винде на более раннюю, чем 02.08, то она работает. Конечно можно все время дату переставлять, но это не удобно. Плизз хелп.
---
ViktorXP 04.10.2005 02:26:46
Где моэно достать хелп но SoftICE? (rus)

---
Softoliker 28.10.2005 17:38:44
Где можно скачать UPX 0.70-0.72
---

Материалы находятся на сайте https://exelab.ru



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS