c - 缓冲区溢出 - 为什么有些 ASCII 可以工作,而另一些则不行

标签 c overflow buffer exploit

如果这个问题很愚蠢或者已经被问过,我很抱歉,但我找不到它。

我有一个程序试图使用缓冲区溢出。这是一个简单的程序,使用 getchar() 检索用户的输入。缓冲区大小设置为 12。我可以通过键入 >12 x 或使用 >12\x78 使程序崩溃,但如果我键入数百个 A 或\x41,则不会出现段错误。

任何帮助或指出正确的方向将不胜感激。

最佳答案

0x41414141 可能是进程文本页内的有效地址。详细请查看流程段图。

关于c - 缓冲区溢出 - 为什么有些 ASCII 可以工作,而另一些则不行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5919067/

相关文章:

c - fgets 无法读取换行符

html - Overflow-y :scroll is not working, 文本超出div

C# 套接字接收 : Taking in data until buffer is full dilemma

linux - 在 Ubuntu Linux 上操作音频输入缓冲区

c++ - 如何使用 SSE 更有效地乘以 A*B^T 或 A^T*B^T(T 表示转置)矩阵?

c - 该程序可能的输入是什么?

c++ - 不支持在 c 或 c++ 中添加两个指针。为什么?

c# - 在检查 block 中调用的方法中没有溢出异常

Jquery 在包装器内部使用溢出隐藏约束进行动画处理

c++ - 缓冲区的动态内存分配