0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
|
|||||||||||
1 | |||||||||||
Инжектор dll, не выполняется вызов MessageBox19.02.2016, 15:25. Показов 3115. Ответов 31
Метки нет (Все метки)
имеется код:
Где ошибка?
0
|
19.02.2016, 15:25 | |
Ответы с готовыми решениями:
31
Перехват MessageBox в dll Инжектор dll Инжектор DLL Как создать инжектор Dll в exe |
19.02.2016, 20:37 | 2 | |||||||||||||||
да вроде всё работает
инжектор Кликните здесь для просмотра всего текста
dll Кликните здесь для просмотра всего текста
CrackMe Кликните здесь для просмотра всего текста
1
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|
19.02.2016, 20:59 | 3 |
Amir_05_05, MessageBox вызывать в DllMain не рекомендуется.
1
|
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
|
|
19.02.2016, 21:00 [ТС] | 4 |
а у меня почему-то не робит
0
|
Ушел с форума
|
||||||
19.02.2016, 21:13 | 6 | |||||
"c" не инициализирована.
VirtualAllocEx - не проверяется возвращаемое значение. WriteProcessMemory - не проверяется возвращаемое значение. CreateRemoteThread - не проверяется возвращаемое значение. То же самое, что написать так:
Еще есть замаскированный баг - в выделяемой памяти не резервируется место под завершающий 0 строки с именем dll.
2
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|
19.02.2016, 21:15 | 7 |
А вот это что за переменная. Вы её не чем не инициализируете. Т.е. в ней мусор передается функции CreateRemoteThread:
1
|
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
|
|
19.02.2016, 21:17 [ТС] | 8 |
ок, щас понаставлю проверок
Добавлено через 1 минуту если указать в функции CreateRemoteThread вместо "c" -NULL,то компилятор выдаёт предупреждение
0
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|
19.02.2016, 21:39 | 9 |
Amir_05_05, поменяйте на 0, там тип параметров DWORD'ы
Добавлено через 2 минуты лооооол Добавлено через 16 минут Amir_05_05, Помимо возвращаемого значения нужно получать код ошибки (GetLastError) в случае если функция потерпела неудачу. Заимейте себе такую привычку. И еще кстати добавлю что CreateRemoteThread возвращает хэндл потока и его тоже нужно закрывать.
1
|
Ушел с форума
|
|
19.02.2016, 21:52 | 10 |
jupman, кстати, да.
И если уже на то пошло, память, выделенная VirtualAllocEx, после того, как поток отработает, тоже подлежит освобождению.
1
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|
19.02.2016, 22:01 | 11 |
Убежденный, ну и тогда, ещё добавлю. Зачем PROCESS_ALL_ACCESS, достаточно PROCESS_VM_OPERATION|PROCESS_VM_WRITE|PROCESS_CREATE_THREAD.
2
|
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
|
|
19.02.2016, 22:07 [ТС] | 12 |
вот!прога в которую внедряю dll вылетает!(ещё вчера это заметил,но было поздно,думал спрошу вас сегодня,но забыл,только щас увидел при тесте.Сам в шоке от себя)
Добавлено через 2 минуты ошибок не выдаёт,возвращает true,процесс убивает)
0
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|
19.02.2016, 22:43 | 13 |
Amir_05_05, а если на другой программе инжект испытать тоже вылетает?
0
|
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
|
|
19.02.2016, 22:44 [ТС] | 14 |
Сегодня испытать уже не получится, давайте завтра продолжим)
0
|
143 / 122 / 21
Регистрация: 13.11.2012
Сообщений: 1,564
|
|
20.02.2016, 04:17 | 15 |
Вообще то так и должно быть, а все выходы каше-функций должны проверяться на правильность, если не правильно - return false.
0
|
Ушел с форума
|
|
20.02.2016, 08:29 | 16 |
Ну и тогда уже, до кучи, перед OpenProcess попробовать включить привилегию отладки.
Это на случай, если целевой процесс запущен из-под другой учетки или имеет специально настроенный DACL, запрещающий открывать его. Согласен, но мой пример о другом.
1
|
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
|
|
20.02.2016, 22:16 [ТС] | 17 |
0
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|
20.02.2016, 22:19 | 18 |
Amir_05_05, Ну значит код показывайте.
0
|
0 / 0 / 0
Регистрация: 06.06.2015
Сообщений: 240
|
|||||||||||
21.02.2016, 12:09 [ТС] | 19 | ||||||||||
dll:
0
|
232 / 135 / 19
Регистрация: 10.11.2015
Сообщений: 305
|
|||||||||||
21.02.2016, 13:24 | 20 | ||||||||||
Amir_05_05, основная ошибка:
Добавлено через 11 минут Ни и вы практически так ничего и не поправили в коде, о чем вам здесь говорили. Добавлено через 1 минуту Кстати, раз уж передаете не полный путь, то имейте ввиду: Dynamic-Link Library Search Order
0
|
21.02.2016, 13:24 | |
21.02.2016, 13:24 | |
Помогаю со студенческими работами здесь
20
При использовании самописного DLL-инжектора программа(не инжектор) вылетает Не выполняется без MessageBox::Show() Вызов MessageBox в цикле Вызов messagebox в функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |