Para desbordamientos de búfer, ¿cuál es la dirección de pila cuando se usan pthreads?

Estoy tomando una clase en co, mputer security y hay una asignación de crédito adicional para insertar código ejecutable en un desbordamiento de búfer. Tengo el código fuente c para el programa de destino que estoy tratando de manipular, y he llegado al punto en que puedo sobrescribir con éxito el eip para el marco de la pila de funciones actual. Sin embargo, siempre recibo un error de segmentación, porque la dirección que proporciono siempre es incorrecta. El problema es que la función actual está dentro de un pthread, y por lo tanto, la dirección de la pila parece cambiar siempre entre diferentes ejecuciones del programa. ¿Hay algún método para encontrar la dirección de la pila dentro de un pthread (o para estimar la dirección de la pila dentro de un pthread)? (nota: el segundo argumento de pthread_create es nulo, por lo que no estamos asignando manualmente una dirección de pila)

Respuestas a la pregunta(3)

Su respuesta a la pregunta