Возникли вопросы после прочтения статьи Криса Code (Text): Внедрение X-кода в файл путем сброса части секции в оверлей. Внедрение. Обобщенный алгоритм внедрения выглядит так: * Считываем PE-заголовок и приступаем к его анализу; * Если DATA DIRECTORY содержит ссылку на структуру, привязывающуюся к физическим смещениями, либо готовимся скорректировать ее надлежащим образом, либо отказываемся от внедрения; * Если LS.r_off + LS.r_sz > SizeOfFile, файл, скорее всего, содержит оверлей и лучше отказаться от внедрения; 1. Почему оверлей проверяется так LS.r_off + LS.r_sz > SizeOfFile , а не наоборот (LS.r_off + LS.r_sz < SizeOfFile)? Ведь оверлей распологается от физического конца последней секции до конца файла. 2.Что значит Code (Text): Если DATA DIRECTORY содержит ссылку на структуру, привязывающуюся к физическим смещениями ?
Случайный косяк \ опечатка \ проверка сообразительности или чего-то. Одно из пяти. Кстати, физический размер секции (raw section size) необходимо округлить на FileAlignment в большую сторону - при загрузке файла именно так и происходит. Данно. Серьёзно, не имеем никаких здравых соображений. Ждём ответа мыщъх'а
Скорее опечатка, нежели другое. . Здесь по ходу, имеется ввиду ссылки на такие структуры как директория с отладочной инфой, т.к в ней записываются raw смещения, а не RVA. Также следует проверить секцию релоков.
Физические смещения помимо структур директории отладочной информации имеют структуры директории сертификатов безопасности. По сути, структуры, адресующиеся только по физичексим смещениям, представляют собой некое подобие оверлея, так как они не проекцируются при загрузке файла. Сертификаты безопасности, например, проверяются загрузчиком перед загрузкой, и если их структуры будут перенесены, пускай даже значение в директории сертификатов и будет скорректировано, но в них применяется физическое смещение, то есть при переносе значения смещений станут не верными, что приведёт к сбою. Отсюда и совет, либо отказаться от заражения, либо скорректировать значение физических смещений в данных структурах