首页 > TAG信息列表 > buffer-overflow
c-跳到argv吗?
我正在尝试shellcode,偶然发现了nop-slide技术.我写了一个小工具,将buffer-size作为参数并像这样构造一个缓冲区:[NOP | SC | RET],NOP占用缓冲区的一半,然后是shellcode,其余的则填充(猜测的)返回地址.它与他的著名论文中描述的工具aleph1非常相似. 我脆弱的测试应用程序与他的论文linux-使用tc进行流量整形
我正在一个学校项目中尝试模拟Buffer Bloating的网络现象.这本质上是延迟,这是由于廉价的内存价格导致路由器中的缓冲区在时间上越来越大的结果. 现在,要开始这个项目,我已经对linux“ tc”命令及其使用方法进行了一些研究,但是我没有看到如何根据自己的需要设置正确的配置.情况如系统功能和堆栈
我对Linux系统调用System()和堆栈有疑问. 让我们假设我们有: #include <stdio.h> #include <stdlib.h> int main(int argc, char* argv[]) { char buff[] = "/usr/bin/ls" system(buff); return 0; } 现在,由于system()函数先生成fork(),然后再生成execl(),所以我的问题c – boost :: asio :: buffer:获取缓冲区大小并防止缓冲区溢出?
我有以下两个用于发送和接收数据包的功能. void send(std::string protocol) { char *request=new char[protocol.size()+1]; request[protocol.size()] = 0; memcpy(request,protocol.c_str(),protocol.size()); request_length = std::strlen(request); bo禁用GCC中的堆栈保护不起作用
我正在尝试使用带有strcpy的经典溢出使用此函数重新创建堆栈缓冲区溢出: #include <stdio.h> #include <string.h> void main(int argc, char **argv) { char buf[100]; strcpy(buf,argv[1]); printf("Done!\n"); } 我已经尝试使用所有各种标志进行编译,以便删除堆栈c – 为什么GCC没有发生缓冲区溢出?
我刚刚学习缓冲区溢出.我试图使用GCC复制它.这是我写的代码. #include <stdio.h> #include <string.h> int main(int argc, char *argv[]) { int value = 5; char buffer_one[8], buffer_two[8]; strcpy(buffer_one, "one"); strcpy(buffer_two, "two&qulinux – 当速率很高时检测到httperf缓冲区溢出
我在Ubuntu 12.04.1 LTS 64位上运行httperf 0.9.0(downloaded from Google Code),带有2CPU和4GB RAM.我正在尝试对Web服务器进行基准测试,但遇到了以下缓冲区溢出问题. 终端命令: httperf --timeout=5 --client=0/1 --server=localhost --port=9090 --uri=/?value=benchmarks --ratc – sprintf(buf,“%.20g”,x)//应该有多大?
我正在将double值转换为字符串,如下所示: std::string conv(double x) { char buf[30]; sprintf(buf, "%.20g", x); return buf; } 我已经将缓冲区大小硬编码为30,但我不确定它是否足够大以适应所有情况. >如何找到我需要的最大缓冲区大小? >从32位切换到64时,精度是否导致缓冲区溢出,段错误
我试图在以下非常简单的程序中导致缓冲区溢出: #include <stdio.h> #include <stdint.h> void badf(int n, char c, char* buffer) { char mycode[] = { 0xeb, 0x0f, 0xb8, 0x0b, 0x00, 0x00, 0x00, 0x8b, 0x1c, 0x24, 0x8d, 0x0c, 0x24, 0x31, 0xd2, 0xcd, 0x80, 0xe8, 0xec