Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.04.17;
Скачать: [xml.tar.bz2];

Вниз

Импорты в dll   Найти похожие ветки 

 
Александр Л.   (2003-02-25 02:06) [0]

Здравствуйте! Я понимаю, что тема скользкая, но... Заказали утилиту для криптовки PE-файлов, в качестве ключа, для шифрования/дешифрования, используется фраза, введенная пользователем. Шифрованию подлежат кодовая секция и данные. После этого в файл дописывается новая секция, содержащая декриптор/загрузчик, на который и будет скорректирован RVA PE-шника. Проблема в том, что если в PE файле к которому дописана секция в таблице импортов нет user32.dll, то при ее загрузке функцией LoadLibraryA в WIN2k/XP в регистре eax возвращается 0
и невозможно вызвать функцию MessageBoxA (мне и надо-то только ее одну). Может быть можно как-то это решить?
Спасибо!


 
paul_shmakov   (2003-02-25 21:57) [1]

не может такого быть. только что проверил на тестовом примере.

win2000, test.exe (импортирует только kernel32.dll, LoadLibraryA и OutputDebugStringA в таблице импорта присутствуют). дописал секцию следующего содержания:

push OFFSET szUser32
call LoadLibraryA
test eax, eax
jz notLoaded
push OFFSET szSuccess
jmp print
notLoaded:
push OFFSET szFail
print:
call OutputDebugStringA
jmp оригинальная точка входа

szUser32 db "user32.dll", 0
szSuccess db "user32.dll loaded!", 0
szFail db "failed to load user32.dll", 0



выравнял секцию, скорректировал поля в pe-заголовке (количество секций, список секций, размер образа, точка входа), запустил.

выдает:

user32.dll loaded!


так что вы где-то ошиблись.
удачи!



Страницы: 1 вся ветка

Форум: "Система";
Текущий архив: 2003.04.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.011 c
14-54885
Kruger
2003-04-01 12:56
2003.04.17
Что же выбрать???


3-54474
nv-vetal
2003-03-29 20:13
2003.04.17
ADO. MS Access. Удаление записи - получение ошибки.


1-54562
Вадим
2003-04-06 13:01
2003.04.17
dll и VCL


8-54756
OxOTHuK
2003-01-17 22:51
2003.04.17
3Д Макс + Делфи


8-54766
_noname_
2003-01-11 12:21
2003.04.17
OpenGL





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский