Теоретические основы крэкинга: Введение — Архив WASM.RU

Все статьи

Теоретические основы крэкинга: Введение — Архив WASM.RU

Что тебя смутит - то ложь
Е. Летов

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

Несмотря на то, что крэкеры, в большинстве своем, работают под одной очень известной операционной системой и пользуются сходными инструментами, я буду делать упор не на описание этих инструментов и правил работы с ними, а на универсальные идеи (хотя в качестве примеров я, разумеется, буду приводить то, что наиболее доступно для самостоятельных экспериментов). Думаю, что Вы сами определитесь, какие инструменты Вам больше по душе.

Предлагаемую мной систему не следует воспринимать как единственно правильную, это не "истина в последней инстанции", но именно эта система помогла мне "победить" немало программ, так что ее эффективность проверена и подтверждена практикой. Вообще, моя точка зрения относительно использования тех или иных методов такова: одна лишь практическая эффективность может служить критерием того, какие идеи и технические приемы могут и должны применяться крэкером в его "профессиональной" деятельности. Именно поэтому я настоятельно рекомендую отрешиться от любых утверждений о "некрасивости" тех или иных приемов борьбы с защитами и ориентироваться лишь на достижение конечной цели - независимо от того, является ли этой целью раскрытие алгоритма работы какого-либо куска кода, или же простое снятие триальных ограничений в программе.

Так или иначе, статей от том, "что делать", то есть как взломать конкретную программу или тип защиты, во много раз больше, чем руководств "как и почему надо делать именно это". Образно говоря, статьи о том, "что делать" - это уровень начальной школы, "почему был выбран именно такой прием" - уровень выпускных классов. Но ведь есть еще и "высшая школа" - изучение идей, которые не привязаны к каким-либо программам и типам защит, но могут быть адаптированы для решения любой конкретной задачи. Выше - только "научная работа", то есть область чистого творчества, генерация оригинальных идей, и никакой "учебник" в этой области принципиально невозможен. По моему глубокому убеждению, основная проблема, возникающая у начинающих крэкеров, заключается в огромном количестве пособий уровня "делай, как я", совершенно не объясняющих, почему автор пособия поступил именно так. В результате человек "на ура" раскалывает новые версии одной и той же программы, но теряется перед аналогичной защитой, реализованной слегка иначе. Разумеется, существуют и весьма качественные "учебники", предлагающие именно систему, а не только набор технических приемов (те же +ORC Cracking Tutorialz или руководство от the Keyboard Caper'а) - но абсолютное большинство их них написаны на английском языке. Для каждого человека естественно желание получать необходимую информацию на своем родном языке (а для меня, как и для многих других, родным языком является русский). А поскольку в последние годы на территории бывшего СССР искусство борьбы с защитами движется семимильными шагами, рано или поздно должны были появиться русскоязычные тексты, систематизирующие опыт крэкинга. Именно такой материал я и старался написать, а насколько хорошо это у меня получилось - решать вам.

2002-2013 (c) wasm.ru