В настоящее время я работаю над домашним заданием для бинарной эксплуатации.
int zerg(char *arg)
{
char buf[12];
static int i, sum;
if (strlen (arg) > 24){
exit(1);
}
}
Я хочу создать переполнение буфера, но проверка strlen не позволяет мне это сделать.Поэтому я решил использовать \ 0, чтобы обмануть Стрлена, чтобы подумать, что у меня меньше 24.
Я использовал python для аргументации.Мой скрипт на python выглядит следующим образом:
padding = 'A'*12
n = '\0'
payload = 'BBBB'*100
print padding+n+payload
Я получил эту проблему: xargs: ПРЕДУПРЕЖДЕНИЕ: во входных данных появился символ NUL.Он не может быть пропущен в списке аргументов.
Как я могу пройти проверку strlen?