BruteForce
Определение
BruteForce (полный перебор) - последовательный перебор всех возможных паролей, с целью найти среди перебираемых паролей верный, который позволит получить желаемую информацию. По аналогии с массой брутто и массой нетто, отношение количества возможных паролей и паролей, воспринимаемых функцией проверки, как правильные, а также трудоемкости и продолжительности проверки одного пароля, позволяет определить криптостойкость пароля. Очевидно, что авторы защиты постараются сделать общее количество вариантов пароля максимальным, поэтому BruteForce всегда автоматизированный процесс, выполняемый при помощи программы - BruteForcer, которая в свою очередь пишется с привлечением технологий ускорения вычислений, таких как распараллеливание, применение различных словарей.
BruteForce чаще всего используется при взломе RAR архивов, взломе ZIP архивов, поиске паролей, имея на руках MD5 хэш такого пароля. Также при поиске пароля для PDF, Word, Excel документов.
BruteForcer
В нашем случае BruteForcer должен представлять из себя процедуру, которая перебирала бы все возможные варианты кода и, после получения каждого нового варианта, делала бы переход на процедуру проверки кода. Эта процедура вставляется в тело программы в каком-либо свободном месте, например отдельной секцией или в конце какой-либо секции (в конце секций обычно много нулей, вот туда и можно вставлять свою процедуру). В месте кода, который выполняется при определении неправильности пароля/кода, ставится команда перехода на нашу процедуру перебора. Та получает новый вариант кода, делает переход на процедуру проверки, и так по кругу, пока не найдется правильный пароль/код, либо пока не кончатся все варианты.
Перебрал все известные мне способы взлома, но программа имеет хорошую защиту и сложный алгоритм генерации кода, и я так и не смог ее взломать. Что попробовать напоследок?
Обычно последней стадией, когда все уже перепробовано и ничего не вышло, является написание программы переборщика паролей (BruteForcer). Если код состоит из относительно небольшого числа символов, или если можно ввести дополнительные условия, сокращающие перебор, то BruteForcer становится довольно реальным и действенным вариантом.