Я уже построил несколько цепочек ROP, чтобы получить оболочку.
Но моя новая задача - создать цепочку ROP, которая выполняет файл elf, используя execve .
Итак, я написал этот кусок кода, скомпилировал его, и он работает просто отлично.
Но в цепочке ROP мне нужно поместить эти строки в стек, что, как я полагаю, невозможно, потому что я не могу найти ничего полезного в своем списке гаджетов.
#include <sys/types.h>
#include <unistd.h>
#include <stdio.h>
main()
{
char *const parmList[] = {"foo", "bar", "alpha", NULL};
char *const envParms[2] = {"MYENVVAR=HELLO", NULL};
execve("./myProgrammIwantToExploit", parmList, envParms);
}
Для гаджетов ROP я использовал мой /lib/x86_64-linux-gnu/libc-2.24.so