为什么 0x41414141 与安全漏洞相关联?

信息安全 开发
2021-08-14 06:38:56

本文此搜索表明 32 位字0x41414141与安全漏洞有关。

为什么0x41414141与安全漏洞相关联?

2个回答

这没什么根本的。这只是一个历史惯例,就像foo当您不知道如何命名变量时使用它作为变量的名称。

更详细地说:测试缓冲区溢出的最简单方法是在文本字段中键入一长串 A (AAAAAAAAA...),然后查看会发生什么。如果程序崩溃,它可能很容易受到攻击。如果程序崩溃并且调试器在程序计数器中显示 0x41414141,哦,天哪,你付出了代价:程序几乎肯定是易受攻击的。(请记住,“A”的 ASCII 代码是十六进制的 0x41,所以如果您在十六进制编辑器中查看 A 字符串的字节级表示,您会看到 0x41414141。)

为什么是A?完全没有理由;它们只是字母表中的第一个字母。

因此,这是渗透测试人员有时使用的快速而肮脏的测试。但当然,0x41414141 并没有什么特别之处。Douglas Adams 的粉丝可以输入一长串 B,然后查找 0x42424242。那将同样有效,甚至更有趣。我必须记住在我的下一个黑客演示中使用那个......

它更多地与简单的概念证明相关。0x41414141 通常是使用(通常很长)字符串 A 来演示溢出(或类似情况)时的结果。