Для переполнения буфера, какой адрес стека при использовании pthreads?

Я учусь на уроке компьютерной безопасности, и есть дополнительное кредитное назначение для вставки исполняемого кода в переполнение буфера. У меня есть исходный код c для целевой программы, которой я пытаюсь манипулировать, и я дошел до того, что смог успешно перезаписать eip для текущего фрейма стека функций. Однако я всегда получаю ошибку сегментации, потому что адрес, который я предоставляю, всегда неверен. Проблема в том, что текущая функция находится внутри pthread, и, следовательно, адрес стека, кажется, всегда меняется между различными запусками программы. Есть ли какой-либо метод для поиска адреса стека в pthread (или для оценки адреса стека в pthread)? (примечание: 2-й аргумент pthread_create имеет значение null, поэтому мы не назначаем адрес стека вручную)

Ответы на вопрос(3)

Ваш ответ на вопрос