Este artículo y esta búsqueda sugiere que la palabra de 32 bits 0x41414141
está asociada a las vulnerabilidades de seguridad.
¿Por qué 0x41414141
está asociado a las vulnerabilidades de seguridad?
Este artículo y esta búsqueda sugiere que la palabra de 32 bits 0x41414141
está asociada a las vulnerabilidades de seguridad.
¿Por qué 0x41414141
está asociado a las vulnerabilidades de seguridad?
No es nada fundamental. Es solo una convención histórica, como usar foo
como el nombre de una variable cuando no tienes idea de cómo nombrarla.
Más detalladamente: la forma más sencilla de probar un desbordamiento de búfer es escribir una cadena larga de A (AAAAAAAA ...) en un campo de texto y ver qué sucede. Si el programa falla, podría ser vulnerable. Si el programa falla y un depurador muestra 0x41414141 en el contador del programa, ooh boy, golpea la basura de pago: el programa es casi seguramente vulnerable. (Recuerde, el código ASCII para 'A' es 0x41 en hexadecimal, por lo que 0x41414141 es lo que vería si observara la representación a nivel de byte de una cadena de A en un editor hexadecimal).
¿Por qué A's? No hay ninguna razón en absoluto; son solo la primera letra del alfabeto.
Entonces, esta es una prueba rápida y sucia que los pentesters usan a veces. Pero, por supuesto, no hay nada especial en 0x41414141. Los fanáticos de Douglas Adams podrían escribir una larga cadena de B y luego buscar 0x42424242. Eso sería igual de efectivo, y aún más divertido. Tengo que recordar usar ese en mi próxima demostración de piratería ...
Lea otras preguntas en las etiquetas exploit