Перейти к содержанию

Не получается создать новую секцию


Рекомендуемые сообщения

Пытаюсь через Stud PE создать секцию (Sections -> ПКМ, в контекстном меню -> New Section ->

Section Name: .hack

RawSize: 00000000 // Тут нули потому что в Info написано:

Virtual Size: 00000000 // If you don't specify RawSize and VirtualSize, a section with a default size of FileAlignment bytes is added after the last raw section.

fill section with NULL bytes - да

и жму Add

Пишет всё ок, но программа не запускается, пишет:

Ошибка при запуске приложения (0xc000007b). Для выхода из приложения нажмите кнопку "ОК".

Ссылка на комментарий
Поделиться на другие сайты

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

Ссылка на комментарий
Поделиться на другие сайты

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

Да, я заметил что она не запустилась у меня на OllyDbg 2.01, но запустилась на 1.10 т.к. там у меня стоит куча антиантиотладочных плагинов :D

А где можно почитать про эту проверку, как она реализуется программистом, и желательно как она ломается нами ^^

Хмм. Причём получается, что эта проверка выполняется до точки входа? Т.к. в Olly ошибка вылетает до того как сработает бряк на EP

Ссылка на комментарий
Поделиться на другие сайты

Думаю такую проверку можно по всякому реализовать. В том же Старфорсе сначала идёт прыг внутрь Старфорса, тот выводит "иди нафиг со своей Олли" и только потом, не найдя Олли, возвращается в настоящий EntryPoint. Старые старфорсы тоже можно было обмануть плагинами для Олли, современные ломать не пробовал. А вот как отломать проверку я не знаю)

Ссылка на комментарий
Поделиться на другие сайты

Вообще не вижу смысла добавлять секцию в исполняемый файл.

А вообще проверка простая до безумия

if (md5hash != "3b27c4824919e3918fca4029a3deb294") Abort();

Вот и всё, банальное сравнение md5 сумм, любое изменение и хэш уже будет совсем другой.

Ссылка на комментарий
Поделиться на другие сайты

Вообще не вижу смысла добавлять секцию в исполняемый файл.

А вообще проверка простая до безумия

if (md5hash != "3b27c4824919e3918fca4029a3deb294") Abort();

Вот и всё, банальное сравнение md5 сумм, любое изменение и хэш уже будет совсем другой.

Если в файле нет достаточно неиспользуемой памяти.

Блин, в настройках олли поставил первый бряк на System Breakpoint, но всё равно сначала вылетает ошибка, и бряк не срабатывает....

Ссылка на комментарий
Поделиться на другие сайты

Если в файле нет достаточно неиспользуемой памяти.

Блин, в настройках олли поставил первый бряк на System Breakpoint, но всё равно сначала вылетает ошибка, и бряк не срабатывает....

Ты можешь корректно излагать свои мысли?

Ссылка на комментарий
Поделиться на другие сайты

Ты можешь корректно излагать свои мысли?

Что не понятно?

1)

Вообще не вижу смысла добавлять секцию в исполняемый файл.
Если в файле нет достаточно неиспользуемой памяти.

2)

Для того чтобы понять, что вызывает ошибку не доходя до EP, я поставил First pause at: System Breakpoint, но ошибка всё равно появляется.

Ссылка на комментарий
Поделиться на другие сайты

Что не понятно?

1)

2)

Для того чтобы понять, что вызывает ошибку не доходя до EP, я поставил First pause at: System Breakpoint, но ошибка всё равно появляется.

Мне не понятны твои рассуждения.

И я считаю секцию выделять - дикарство.

VirtualAllocEx выделит тебе кучу памяти.

Ссылка на комментарий
Поделиться на другие сайты

Мне не понятны твои рассуждения.

И я считаю секцию выделять - дикарство.

VirtualAllocEx выделит тебе кучу памяти.

Виртуальной, а я хочу физической :-D
Ссылка на комментарий
Поделиться на другие сайты

Виртуальной, а я хочу физической :-D

Я бы на твоём месте не веселился, а MSDN открыл.

Вот например - http://msdn.microsoft.com/en-us/library/windows/desktop/aa366528(v=vs.85).aspx

Если не подходит, есть куча вариантов выделить физ. память.

Ссылка на комментарий
Поделиться на другие сайты

Любая добавленная секция исказит контрольную сумму. К тому же, я не вижу смысла в добавлении секции к исполняемому файлу применительно к теории геймхакинга, каковым мы здесь и занимаемся. Если объяснения не будет - извиняйте, тему закрою.

ЗЫ. Красным пишу только в крайних случаях, это надо взять на заметку.

Ссылка на комментарий
Поделиться на другие сайты

Xipho, справедливо указал требования по поводу внесения дополнительной информации к описанию темы. Потому что больше похоже на желание сделать например кряк вместо создания читов наиболее популярными и известными способами. Ну, а кряками мы не занимаемся.

Раз автор не хочет вносить пояснения, то приму эстафету от Xipho. Тема закрыта

Ссылка на комментарий
Поделиться на другие сайты

Гость
Эта тема закрыта для публикации ответов.
×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.