当前位置: 首页 > news >正文

宿州哪家做网站好中小企业管理软件下载

宿州哪家做网站好,中小企业管理软件下载,今天石家庄出什么事了,建设外贸网站案例在程序返回的一条语句堆栈项目处&#xff0c;用新函数的起始地址覆盖&#xff0c;将会跳转到执行新函数。 现在系统对这个行为做了判断&#xff0c;已经无法实施这类攻击或技巧。 1&#xff0c;测试代码 #include <stdio.h> void cc() {printf("I am cc( )\n"…

在程序返回的一条语句堆栈项目处,用新函数的起始地址覆盖,将会跳转到执行新函数。

现在系统对这个行为做了判断,已经无法实施这类攻击或技巧。

1,测试代码

#include <stdio.h>
void cc()
{printf("I am cc( )\n");
}void bb(unsigned long int * x)
{x[7] = (unsigned long int)cc;printf("I am bb(...)\n");
}void aa(int y)
{unsigned long int a[6] = {0,1,2,3,4,5};printf("I am aa(...)\n");bb(a);
}int main()
{int z=100;aa(z);printf("cc = %p\n", cc);return 0;
}

2,运行效果

下图可见,并不是在修改堆栈时terminated,而是在返回时检测到了 stack smashing

3,原理分析

3.1如何防止 stack smash

"stack smashing detected"错误通常是由于缓冲区溢出(buffer overflow)导致的。这种错误会破坏程序的堆栈结构,被系统检测到并终止程序以防止安全漏洞。

要解决这个问题,您可以考虑以下几点:

1. 检查代码中的数组边界:确保在使用数组时不会超出其边界,避免写入超出数组大小的数据。

2. 使用安全的字符串处理函数:避免使用不安全的字符串处理函数(如strcpy、strcat等),改用安全的函数(如strncpy、strncat等)来处理字符串。

3. 使用堆内存分配:考虑使用动态内存分配(如malloc、calloc、realloc等)来避免栈溢出问题。

通过检查代码中的缓冲区操作和内存访问,可以帮助您解决"stack smashing detected"错误。

3.2 系统检测 stack smash 的原理

系统通过一种叫做"Stack Protector"的机制来检测stack smashing。这个机制在编译时会向程序中插入一些额外的代码,用于保护函数的返回地址和栈帧结构不被破坏。

具体来说,Stack Protector会在栈帧中插入一个特殊的"canary value"(金丝雀值),然后在函数返回时检查这个值是否被修改。如果检测到"canary value"被修改,系统就会认为发生了stack smashing,并终止程序的执行。

这种机制可以有效防止缓冲区溢出攻击,提高程序的安全性。

3.3,如何让系统放弃检测 stack smash

要阻止系统进行stack smashing检测,您可以在编译时禁用Stack Protector机制。具体取决于您使用的编译器,以下是一些常见编译器的选项:

- 对于GCC编译器,您可以使用-fno-stack-protector选项来禁用Stack Protector机制。
- 对于Clang编译器,您可以使用-fno-stack-protector选项来禁用Stack Protector机制。
- 对于MSVC编译器,您可以使用/GS-选项来禁用堆栈保护。

通过在编译时使用这些选项,您可以阻止系统进行stack smashing检测。请注意,禁用Stack Protector可能会降低程序的安全性,因此请谨慎使用。

测试放弃检测实验:

编译方式:

$ gcc hello_func_stack.c -fno-stack-protector

由于修改了堆栈中返回后第一条指令的地址,所以函数 cc() 被调用,

http://www.yayakq.cn/news/517543/

相关文章:

  • 做电力招聘的有哪些网站网站开发设计公司简介
  • 唐山网站建设互众动力wordpress安装图片
  • 云畅网站建设网址建设通app官方下载
  • 潜江市网站怎么用个人电脑做网站
  • 汕头市城市建设总公司网站新网站如何做推广
  • 高端定制外贸网站用ps做班级网站
  • 模板建站代理化妆品网站内容规划
  • 太原网站建设搜q479185700做的最好的相亲网站有哪些
  • 俄语网站推广wordpress 手动缩略图
  • 织梦xml网站地图我想做电商怎么加入
  • 台州网站建设推广公司企业展厅设计公司演绎个性设计
  • 深圳设计网站排名wordpress 信息字段
  • 沙坪坝网站建设公司选哪家好网站建设目标和功能介绍
  • 网站收录图片网站首页用什么字体好
  • 外贸网站cms系统滨州北京网站建设价格
  • 芜湖网站设计公司衡阳网站开发
  • wordpress文章永久链接网站推广seo方法
  • 网络营销师证书含金量seo公司彼亿营销
  • 软件公司网站模版wordpress 论坛系统
  • 0511城市建设网站棚户区改造怎么创建视频网站
  • 苏宁易购网站风格wordpress 4.9.5 中文
  • 建设网站的功能定位是什么原因深圳互联网公司比较多的地方
  • 职教集团网站建设wordpress仪表盘关闭
  • 上海装修网站建设财经资讯网站该怎么做推广
  • 网站开发有哪些做白酒的网站
  • 沙洋县住房和城乡建设局网站海报在线制作免费网站
  • 南京一等一网站建设中国建设人才网站
  • 网站制作效果好郑州网站开发技术
  • 美食网站页面设计微信小程序怎么上架商品
  • 中国建设教育协会网站证书今天刚刚发生的新闻事故