2012-01-21 2 views
2

Есть ли какие-либо разделы вообще не загружен PE-загрузчиком? Или каждый раздел, указанный в заголовках раздела загружен? В программах ELF заголовками разделов (заголовками или сегментами вызываемых программ), которые должны быть загружены, являются те, которые помечены как PT_LOAD. Есть ли что-то подобное в программах PE?Какие разделы не загружены загрузчиком PE?

PS. Я нашел флаг IMAGE_SCN_MEM_DISCARDABLE. Разделяются ли разделы с тем, что не загружено?

+2

Это не так, как это работает. Весь файл получает карту памяти. Ничего не загружается, пока вы не откроете страницу памяти. –

+1

Правильно. Ничего не загружено. Страницы загружаются по требованию, несмотря на ошибки страницы. –

+1

Так технически каждая страница доступна, если необходимо? И дать ответ, который я могу отметить как ответ :) –

ответ

3

Когда имеется место для перемещения, но изображение PE не нужно перемещать, загрузчик не загружает секцию перемещения. Если изображение PE было подписано цифровой подписью, в нем есть раздел, содержащий сертификат. Этот раздел не загружается загрузчиком. Кроме того, если доступен раздел отладки, это также не загружается загрузчиком.

+0

Кроме того, DOS Stub также не загружен. Это просто просто игнорируется загрузчиком ..... Некоторые вредоносные программы неправильно используют это и помещают свои собственные вещи в эту область. – mox

0

Ну, DOS Stub - это не раздел!

Как правило, некоторые части файла PE могут быть прочитаны, но не отображены в памяти (например, перестановки). И некоторые части не отображаются на всех. Отладка информации в конце файла является примером такой ситуации.

Обычно данные, помещенные в конце файла, содержат все части в файле (которые готовы к отображению) - не отображаются в памяти.

Смежные вопросы