Перемещение раздела PE файла и файлы cookie стека -> Ошибка - PullRequest
0 голосов
/ 11 ноября 2018

Я пытаюсь увеличить размер раздела pe, который находится после раздела .text. Я хочу увеличить размер .rdata на 0x1000, чтобы перейти от этого макета

layout before

к этому макету

layout after

путем добавления 0x1000 в качестве смещения k к размеру сечения.

Что я делаю, чтобы достичь этого:

  • Добавление дополнительного размера / смещения (k) к свойству "VirtualSize" pe-файла
  • Добавление смещения k ко всем свойствам "VirtualAddress" всех следующих разделов
  • Добавление смещения k к свойству "SizeOfImage" заголовка pe
  • Добавление k ко всем адресам каталога данных больше или равно 0x5000

В чем проблема: Я могу запустить файл pe без жалоб загрузчика Windows. Тем не менее новый exe вылетает из-за вызова "_security_init_cookie". Однако, если я использую отладчик, чтобы пропатчить вызовы файлов cookie стека и перейти непосредственно к реальному основному, как обычно, запуска программы.

Мой вопрос: Как я могу исправить эту ошибку относительно стека куки? Где адреса в файле pe, которые я должен исправить, чтобы сделать это?

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...