通常在尝试将数据复制到缓冲区而不检查足够的空间时会发生,从而导致数据被覆盖在相邻的单元格中。
如何在 GCC、Windows XP、x86 中编写缓冲区溢出漏洞利用?
void 函数(int a, int b, int c) { 字符缓冲区1[5]; 字符缓冲区2[10]; int *ret; ret = 缓冲区1 + 12; (*ret) += 8;//为什么是8? } 无效主(){ 整数x; x = 0; 函数(1,2,...
在遗留代码中,我在强化审计中遇到缓冲区溢出错误。 我在这里解释一下这个问题: 我有一个函数,比如 foo(size_t len, unsigned char **buf) ,在这个 foo 中我正在复制一个 str...
我使用这个代码: while ( scanf("%s", buf) == 1 ){ 防止可能的缓冲区溢出以便可以传递随机长度的字符串的最佳方法是什么? 我知道我可以限制输入
为什么向容量为 128 的缓冲区发送 127 个字符时出现“分段错误”
我从这里获取了以下代码: #包括 #包括 #包括 #包括 #定义横幅\ “欢迎来到”LEVELNA...
对于这个问题输出应该是这样的: “这是第一个 ” “这是第二个。 ” 但我无法解决,它应该通过指令运算来解决。你只能...
在不调用任何“call”或“jump”函数的情况下,我们需要按照“这是第一个”然后“这是第二个”的顺序获得输出。在我看来,我们需要你...
我有一个关于exploit_notesearch 程序的问题。 该程序仅用于创建一个命令字符串,我们最终使用 system() 函数调用该命令字符串来利用 notesearch 程序
任务如下: “任务 编写一个程序,输入一个自然数,即无符号整数,数字 n 并以正确的顺序输出 n 的二进制数字(即,从最高有效位开始......
所以,我正在做一个CTF,现在已经结束了,但我想知道这个问题。 一旦你通过了“登录”页面,它就会带你到这段代码,但我无论如何也无法做到……
我正在阅读《为了乐趣和利润而粉碎堆栈》。 当作者使用 x86 汇编代码来说明 execve() 行为时,他说: 0x80002bc<__execve>:pushl%ebp 0x80002bd<__e...
我正在编写一个绑定缓冲区程序,生产者根据缓冲区的大小生产数据,但消费者没有消费它,因此没有解决问题。我缺少什么? 缓冲液...
【C语言】 “ASCII码16由控制字符␐表示,也称为数据链接转义” 我想从键盘上获取这个字符作为程序的输入...
我找不到回答这个问题的好来源。我知道 nop sled 是一种用于在缓冲区溢出攻击中规避堆栈随机化的技术,但我无法理解它是如何实现的
我想更改文件(.ULNC),并且在过去当我更改的解码文本具有相同的长度或者当我要替换的值大于我要替换的值时成功地做到了这一点...
我有这个小的选择组件,当我单击按钮时,我需要获得一个下拉列表,但项目在按钮顶部而不是向下打开,并且前几个按钮不显示所有
当读取一个简单文件时,尽管我确保在读取之前获得文件的大小(以字节为单位),但我仍然会溢出并从文件中读取字节。 这是我当前的代码: 文件* 文件; 整数
我正在编写一个测试实用程序(WinForm)来检查网站的性能。为此,我设置了要发出的多个请求,以及与请求关联的参数列表。我可以将请求设置为
Linux - 使用 sigaction 处理堆栈溢出和缓冲区溢出
sigaction 仅适用于某些 SIGSEGV 场景。 当我尝试处理由缓冲区溢出或堆栈溢出引起的 SIGSEGV 时,处理程序永远不会被调用。 但是当其他场景...
早安帮, 我是 C 新手,我有一个用于创建图形的结构: 结构图{ 整数顶点; int 边缘; int **边缘矩阵; 字符 ** 名称; }; 然后当我尝试...