Здравствуйте! Имеется тестовая программа с buffer overflow. Я инжекчу простой шеллкод, дебажу в gdb, и когда выполнение доходит до int 0x80 (спавн шелла) ничего не происходит. Вообще ничего, просто дальше выполнение идет. Подскажите пожалуйста или посоветуйте, в чем может быть проблема? Проблема не в шеллкоде однозначно, пробовал множество, штук 10. Программа скомпилированна естественно с -z execstack. Заранее спасибо за ответ!
Дружище, тут нет экстрасенсов. Скидывай билд, а лучше исходник, и посмотрим. Далее суть атаки в том, чтобы изменить поведение программы, а не просто заинжектить шелкод. Для того, чтобы твой шелкод отработал, ты для начала должен его записать туда, а потом вернуть на тот адрес, в который ты его записал. Для этого тебе надо вычислить размер твоего буффера, чтобы корректно его записать а не перезатереть следующие инструкции. Ах да забыл. А ты отключил ASLR и прочие механизмы защиты? Или ты хочешь сразу high level?