En el shellcode independiente de la posición para las ventanas de 32 bits, ¿cuáles son las técnicas más utilizadas para almacenar variables de cadena? He estado usando cadenas basadas en la pila:
- Ajusta el registro ESP
- Almacene el valor ESP en EBP
- Empuje las cadenas DWORD requeridas en la pila.
- Use EQU para las compensaciones de los nombres de las cadenas dentro del espacio de la pila para facilitar la vida al usar las variables más adelante.
Mi entendimiento es que no puedo usar definiciones de variables en la sección .data ya que las compensaciones son desconocidas. He intentado desmontar una serie de cargas útiles de metasploit para ver cómo funcionan, pero parece que no se utilizan otras técnicas.
Cualquier información sobre otras opciones y sus pros y contras sería genial.