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

广州英文网站制作那个网站可以兼职做效果图

广州英文网站制作,那个网站可以兼职做效果图,深圳注册公司怎么注册,mvc4 做网站定义: Canary是一种用以防护栈溢出的保护机制。 原理: 是在一个函数的入口处,先从fs/gs寄存器中取出一个4字节(eax,四字节通常是32位的文件)或者8字节(rax,通常是64位的文件)的值…

定义:

Canary是一种用以防护栈溢出的保护机制。

原理:

是在一个函数的入口处,先从fs/gs寄存器中取出一个4字节(eax,四字节通常是32位的文件)或者8字节(rax,通常是64位的文件)的值存到栈上,当函数结束是会检查这个栈上的值是否和存进去的值相同。

通常在pwn题写exp是用的字符a,这样存储进缓冲区,将会覆盖原始的canary的值

当canary被覆盖后,也就是原应为canary的位置被字符a覆盖如此就会导致函数结束时会识别到canary被改变,如此就会触发_Stack_chk_fail函数,程序就会直接退出并报错。

绕过思路【核心:泄露canary】

1.格式化字符串泄露canary

通过格式化字符串去读取缓冲区的canary的值

2.canary爆破(针对有fork函数的程序)

fork函数会将此前的进程复制出一个子进程,在子进程执行之前,其状态等完全与父进程一模一样。也就是自我复制,这样每一次复制出的子进程的程序的内存布局一模一样,这也就构成canary的值一模一样。那我们就逐位爆破,如果程序崩了就说明这一位不对,如果正常进行并进行到了下一步就说明此位正确,如此循环直到爆出canary为止。

3.Stack smashing(故意触发canary)

这个并非是泄露得到canary,而是通过canary的错误,根据其报错信息去打印出任意地址的值(还未了解)

4.劫持_Stack_chk_fail

canary覆盖就会触发_Stack_chk_fail函数,我们可以利用其他漏洞来修改got表中的_Stack_chk_fail函数的地址,然后canary被覆盖去故意触发这个函数,但是该函数已经被改变了地址,那么就会去执行我们想要这个程序去执行的函数(eg.system())

格式化字符串(简单了解)【canary泄露常用方法】

通常在c语言中采用printf()函数去输出格式化的字符。在这个函数的学习中我们也了解到判断字符串结束的依据是\x00。那么当我们把需要输入的内容与canary连起来,那么打印的时候就能把canary一起打印出来。!!注意:canary的最后一位一定是\x00(用于防止被连带输出),那么修改的时候也要把canary的最后一位也修改。(结合gdb设断点,去查看canary的值,然后写入exp中)

http://www.dtcms.com/a/502585.html

相关文章:

  • 网站建设中色无极报价网站
  • 网站建设的网络技术昆明360网站制作
  • 资源网站建设wordpress 获取当前用户id
  • 前端怎么接私活做网站职业生涯规划书模板
  • 17网站一起做网店广电商网站建设设计报告总结
  • 衡阳网站优化教程品牌商城网站建设
  • 网站运营和维护都是干什么的wordpress的html代码
  • 常见的电子商务网站有哪些网络维护这个工作好吗
  • 浦东做网站公司凡客诚品正品男
  • 更换网站服务器wordpress 后台 500
  • 有什么平面设计的网站网上学设计哪个网站好
  • 怎么用lamp做网站打开建设银行官方网站首页
  • 百度排名竞价php网站开发优化
  • 个人外贸网站建设docker wordpress多个
  • 佛山微网站如何让新网站快速收录
  • 国外免费推广网站有哪些带着购物系统回到80年代
  • 企业网站建设要多百度提交网址
  • 中国icp备案网站seo关键词排名优化app
  • 网站建设后怎么做主页数据分析工具
  • 网站建设程序制作大数据网站建设费用
  • 成都建设网站专业公司中小型网站建设信息
  • 网站域名后缀代表什么意思越秀金融大厦
  • 福建建设执业资格注册管理中心网站上海做外贸网站的公司
  • 本地南京网站建设重庆免费网站推广软件
  • 网站建设单元格边距北京网站建设推
  • 网站建设厘金手指排名二一建材 东莞网站建设
  • 福田网站建设龙岗网站建设网站建设管理工作情况汇报
  • 网站设计要求 优帮云推广平台网站热狗网
  • 网站ico如何添加番禺广州网站建设
  • 搭建网站 软件长沙网站建设软件