-
Автор темы
- #1
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Привет! Это снова я. Сегодня я расскажу как достать DLL (или любые другие исполняемые программы) находящиеся в ресурсах программы (в байтах). Гайдов на RU сегменте как всегда нема, а если есть, то максимально непонятные. Все ваши крякеры (по типу nelfo) используют этот метод.
Для начала нужно определиться с HEX редактором, лично я предпочитаю HxD так как это самый удобный и понятный редактор лично для меня. Вы можете использовать Neo Hex Editor или любой другой, на ваше предпочтение т.к особой роли это не играет.
Открываем программу в HEX редакторе. Теперь мы должны скопировать первые 3 начальных символа ("4D 5A 90" в HEX или "MZђ" в string). Теперь жмем CTRL + F (открываем поиск по строке или HEX значению) и вводим туда скопированные 3 символа (MZђ). В поиске должно быть что-то похожее на это:
У нас есть 3 результата, самый первый - это мусор, нам нужны два последних результата (как определить? перед и после MZђ должны стоять точки). Значит в моей программе есть целых две DLL находящихся в байтах! (у вас же может быть 1 или любое другое число). Я пожалуй остановлюсь на первой DLL.
Переходим по результату и удаляем абсолютно все, что идет до MZђ:
Должно получиться вот так:
Т.е я нашел MZђ и удалил абсолютно все перед ним, и получилось, что этот MZђ теперь стоит в самом начале.
Почти готово! Теперь мы сохраняем, переименовываем в файл с любым названием с расширением .dll, можем инжектить и наслаждаться!)
Для начала нужно определиться с HEX редактором, лично я предпочитаю HxD так как это самый удобный и понятный редактор лично для меня. Вы можете использовать Neo Hex Editor или любой другой, на ваше предпочтение т.к особой роли это не играет.
Открываем программу в HEX редакторе. Теперь мы должны скопировать первые 3 начальных символа ("4D 5A 90" в HEX или "MZђ" в string). Теперь жмем CTRL + F (открываем поиск по строке или HEX значению) и вводим туда скопированные 3 символа (MZђ). В поиске должно быть что-то похожее на это:
У нас есть 3 результата, самый первый - это мусор, нам нужны два последних результата (как определить? перед и после MZђ должны стоять точки). Значит в моей программе есть целых две DLL находящихся в байтах! (у вас же может быть 1 или любое другое число). Я пожалуй остановлюсь на первой DLL.
Переходим по результату и удаляем абсолютно все, что идет до MZђ:
Должно получиться вот так:
Т.е я нашел MZђ и удалил абсолютно все перед ним, и получилось, что этот MZђ теперь стоит в самом начале.
Почти готово! Теперь мы сохраняем, переименовываем в файл с любым названием с расширением .dll, можем инжектить и наслаждаться!)
Последнее редактирование: