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

外链 网站权重布谷海南网站建设

外链 网站权重,布谷海南网站建设,手机网站可以做英文版本吗,江西省上饶市建设局网站定义: 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/wzjs/553799.html

相关文章:

  • 做好的网站模板怎么修改网站建设 客户需求
  • 龙华网站建设哪家公司好个体户备案网站可以做企业站吗
  • 长春模板建站系统搜索引擎优化主要包括
  • 如何在自己网站开发互动视频教程深圳公司开发网站
  • 网站建设方案范本求推荐专业的网站建设开发
  • 大连淘宝网站建设WordPress多功能投稿
  • 笑傲网站建设做网站常用的技术有哪些
  • 建设部监理工程师注册网站wordpress 用户注册 插件
  • 建设监理工程公司网站服装设计师有前途吗
  • ssh可以做wap网站么安阳区号电话
  • 苏州网站备案查询wordpress如何销售卡密
  • 搜寻的网站有哪些关于门户网站建设的请示
  • 网站维护托管要多少钱装饰工程验收规范
  • 怎么知道网站的空间是谁做的网站 筛选功能
  • 中国建设教育业协会网站网页游戏排行榜前十名射击
  • 公司做手机网站建设手机网站制作要求标准
  • 安全的响应式网站建设百度云做.net网站
  • 绮思网站建设qswoo福州专业做网站的公司哪家好
  • 网站开发的技术支撑 经验能力网络推广计划怎么写
  • 网站开发前端与后端区别搜索引擎营销是目前最主要的网站推广营销
  • 微信建设网站兼职网网站建设方案
  • 网站建设的业务范围wordpress纯静态网站
  • 中企做的网站太原php网站开发有什么优点
  • 望京网站建设安居客官网网站
  • 网站建设人员培训纲要wordpress旅游博客
  • 怎么对一个网站做优化网站建设方案设计是什么意思
  • 百度云服务器挂网站免费个人网页模板
  • 宁阳移动网站制作网站制作的知识
  • 做外贸生意是不是需要建网站微信小程序推广引流怎么做
  • 搭建网站是什么wordpress templates