У меня было задание домашней работы, предлагающее мне вызвать функцию без явного вызова ее, используя переполнение буфера. Код в основном таков:
#include <stdio.h>
#include <stdlib.h>
void g()
{
printf("now inside g()!\n");
}
void f()
{
printf("now inside f()!\n");
// can only modify this section
// cant call g(), maybe use g (pointer to function)
}
int main (int argc, char *argv[])
{
f();
return 0;
}
Хотя я не уверен, как действовать дальше. Я подумал об изменении адреса возврата для счетчика программ, чтобы он перешел непосредственно к адресу g(), но я не уверен, как получить к нему доступ. Во всяком случае, советы будут отличными.