Обход стека канарейки без перезаписи - PullRequest
0 голосов
/ 07 октября 2018

У меня есть файл C ++ со структурой, которая выглядит следующим образом:

struct {
    int32_t goodcanary;
    char username[25];
    char password[25];
    int32_t canary;
    char good_username[25];
    char good_password[25];
} v;

Хорошая канарейка рандомизирована, затем канарейка устанавливается равной хорошей канарейке.

Затем я могу ввести и ввести имя пользователя.

Вход в систему "успешен", если canary == goodcanary, username == good_username и password == good_password.Я знаю, что могу ввести действительно длинную строку, чтобы она работала для имени пользователя и пароля, но как мне это сделать, не перезаписывая канарейку (чтобы канарейка все еще равнялась goodcanary).

Есть ли способ прыжкамимо определенной точки?

...