Почему этот код выводит -32768, а не 32768? Похоже на переполнение, но я не могу понять, где. #include <stdio.h>
#include <stdlib.h>
int main()
{
char *buffer = (char*)malloc(sizeof(char)*2);
Доброе утро, У меня есть оголенный бинарный, и я должен обойти ASLR и NX. Я борюсь с тремя днями, чтобы найти решение, но я не могу его найти. Я не могу найти библиотеки, связанные с двоичным файлом,
Я изучаю отладку с помощью gdb и регистров, но я застрял в одной точке. В качестве инструкции, я должен напечатать print $esp
result: $1 = -9008
, но я ожидал такого результата: $2 = (void *) 0x7
Я следую учебнику по переполнению буфера. Я создал свой блок NOP, я также установил свой код оболочки, теперь мне нужно добавить адрес возврата в конец моей строки. Я знаю, что мой обратный адрес: 0xb