Переполнение буфера.
|
|
Neo | Дата: Понедельник, 19.09.2011, 15:24 | Сообщение # 1 |
Модератор
Зарегистрирован: 04.05.2010
Группа: Модераторы
Сообщений: 317
Статус: Offline
| Всем привет!Недавно я серьёзно занялся изучением уязвимости переполнения буфера.Научился изменять адрес возврата на тот адрес,на который мне заблагорассудится.Только вот проблема!Я переполняю буфер своим ассемблерным кодом в виде символов,потом затираю адрес возврата адресом буфера,куда я код свой ввёл,по идее должно выполниться то,что введено в буфере,но,блин,не выполняется! Уже сил нету!Я даже Dep отключил,всё-равно не получается. Если кто занимался этим,подскажите в чём дело.Почему код не хочет выполняться в стеке?У меня особая надежда на c@t и vvova15,т.к переполнение буфера вызываю в C прогах.
|
|
| |
darkoff | Дата: Воскресенье, 23.10.2011, 09:41 | Сообщение # 2 |
Группа: Удаленные
| Neo а ошибка вылетает? там в ней адрес должен быть
|
|
| |
Neo | Дата: Воскресенье, 23.10.2011, 14:53 | Сообщение # 3 |
Модератор
Зарегистрирован: 04.05.2010
Группа: Модераторы
Сообщений: 317
Статус: Offline
| Дело в том,что на моём сервис паке не вылетает ошибка,что типо приложение обратилось по адресу xxxxxx и не может быть read и т.д.Но если трассировать в С bildere,то bilder выдаст эту ошибочку с адресом,так что эта проблема решена. Только компилировать нужно в visual C++ 6.0,т.к в нём нет защиты от переполнения буфера(на других не тестил).В bildere даже если всё правильно сделаешь,нифига не выйдет!Вот вложение,там я добился изменение адреса возврата на void overload(),которая по идее никогда не вызывается.Но мне нужно добиться запуск cmd.Вот эта статья мне больше всех понравилась,только не пойму один момент:Code .386 .model flat, stdcall extrn ExitProcess:proc .data start: ;---------------[ SUPA SHELL CODE]---------------------------------------------; nach: push 1 ; Параметр для вызова WinExec mov esi,esp ; Устанавливаем esi на стэк try: lodsd ; Ищем текстовую строку ЗАЧЕМ и почему 012345678h? cmp eax,012345678h ; с именем программы jne try ; Эх,был бы рабочий пример с запуском cmd!
Сообщение отредактировал Neo - Воскресенье, 23.10.2011, 14:54 |
|
| |
Neo | Дата: Пятница, 28.10.2011, 18:50 | Сообщение # 4 |
Модератор
Зарегистрирован: 04.05.2010
Группа: Модераторы
Сообщений: 317
Статус: Offline
| Ура!!!Разобрался!Получилось!cmd запускается!!!!!!!!!!
|
|
| |
Neo | Дата: Четверг, 10.11.2011, 16:27 | Сообщение # 5 |
Модератор
Зарегистрирован: 04.05.2010
Группа: Модераторы
Сообщений: 317
Статус: Offline
| Короче предлагаю тем,кто интересуется этим делом объединиться знаниями и начать писать простенькие эксплойты,пока быть может,к своим же программам.
Сообщение отредактировал Neo - Четверг, 10.11.2011, 16:31 |
|
| |