Вопросы по теме 'stack-smash'
Не удалось получить корневую оболочку при загрузке функции execl()
#include <stdio.h>
#include <unistd.h>
#include <string.h>
int good(int addr) {
printf("Address of hmm: %p\n", addr);
}
int hmm() {
printf("Win.\n");
execl("/bin/sh", "sh", NULL);
}
extern char **environ;
int...
1241 просмотров
schedule
20.12.2023
Разрушение стека
Итак, я работаю над заданием для класса безопасности, и задание состоит в том, чтобы использовать переполнение стека для вызова функции oopsDidISmashTheStack, которая никогда не использовалась в программе.
#include <stdio.h>
#include...
293 просмотров
schedule
25.03.2024
Экранирование нулевых символов в шеллкоде
Я пытаюсь выполнить overflow1.c из бумаги Smashing the Stack for Fun and Profit от Aleph One.
Исходный код overflow1.c:
char shellcode[] =
"\xeb\x1f\x5e\x89\x76\x08\x31\xc0\x88\x46\x07\x89\x46\x0c\xb0\x0b"...
1125 просмотров
schedule
08.03.2023
Разбить стек, пример 3 в стиле Aleph One
Я воспроизвел пример 3 из раздела Разрушение стека для развлечения и получения прибыли в Linux x86_64. Однако у меня возникли проблемы с пониманием того, какое правильное количество байтов должно быть увеличено до адреса возврата, чтобы пропустить...
608 просмотров
schedule
22.06.2023
Разрушение стека на OS X Yosemite?
Мне трудно понять, как отключить защиту стека в OS X 10.10.5 (Yosemite). Я как бы собирал многообещающие флаги gcc из различных потоков в Интернете, но пока не смог отключить защиту. В настоящее время я компилирую свою программу с помощью:
gcc...
349 просмотров
schedule
29.04.2023
Есть ли способ избежать завершения программы при разрушении стека?
Я написал программу с 3 потоками, используя pthread на С++. Когда в одном из потоков происходит переполнение буфера, вся программа завершается, и другие потоки не могут быть запущены, и отображается это сообщение: *** stack smashing detected ***:...
303 просмотров
schedule
31.10.2022