CCProxy v6.2

原创 2007年10月05日 20:26:00

放了很多天了,一直想写一下。

以Telnet的方式登录CCProxy,输入ping 2000个c,CCProxy报错退出。

核心部分:

430300: sub esp,430h          //函数预留出的缓冲区空间

...

430379:  push esi                    //输入的错误参数“c...”的地址

43037A: lea edx,[esp+40h]

43037E: push 478EE8           //提示语“Host not found:%s”的地址

430383: push edx                    //存放完整提示的缓冲区     (11062EC)

430384:   call _sprintf()           //溢出点所在,这个函数是作者自己写的

...

4303D6: add esp,430h

4303DC: retn 0Ch

当时堆栈中的情况如下:

11066F0中存放的是上面这个函数的返回地址,而存放完整提示的缓冲区的首地址是11062EC,

中间有0x404的空间,字符串“Host not found: ”占用了0x10字节,所以留给参数的位置只有0x3F4.

我们刚才输入的参数个数为2000,远超0x3F4,实际上,回车换行还有/0各占一个字节,

也就是输入参数的长度临界点时0x3F1,超过这个数字就会出问题。

问题就出在作者自己写的_sprintf()里,没有检查传入参数的长度,分配出的430h缓冲区中存放_sprintf()显示内容,结果导致会覆盖这一层函数的返回地址。

相关文章推荐

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

CCProxy 6.2 溢出漏洞分析

操作系统:Microsoft windows XP SP3 溢出软件:CCPROXY            http://pan.baidu.com/s/1pJI0loZ   CCProxy...

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

Delphi7高级应用开发随书源码

  • 2003年04月30日 00:00
  • 676KB
  • 下载

CCProxy 6.2 溢出分析

前天去上海比赛,有个CCProxy的溢出题目,当时现场没能调出来,回来后,发现其实是线程的栈空间分配的问题,也就是说:当用OD打开和用OD附加时,线程分配的堆栈地址是不一样的。关于线程的堆栈的关系,不...

ccproxy 6.2

  • 2013年01月08日 19:21
  • 516KB
  • 下载

Amazing Slider(网页图片轮播制作)V6.2中文特别版

Amazing Slider(网页图片轮播制作)是一个易于使用的 Windows 和 Mac 应用程序。它可以快速的创造漂亮而又专业的,反应灵敏轮播滑块,视频库和 WordPress的滑块插件等。 ...

Actual.Window.Manager.v6.2

Ablume.VIPstegano.v1.2.1 ActiveState.Perl.Dev.Kit.Pro.v9.0.1.293382.for.Linux.x64-BEAN\ ActiveSta...
  • findcax
  • findcax
  • 2011年11月26日 16:20
  • 1422

REAL210(V6.2)开发板简介

前面一直在做移植工作,用到的arm开发板是广州润尔的REAL210(V6.2)开发板Android版本 在此对此开发板做一下简单的介绍: 1、软件特性 1.1 Bootloader 版本...
  • xdwyyan
  • xdwyyan
  • 2015年03月15日 13:38
  • 1037
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:CCProxy v6.2
举报原因:
原因补充:

(最多只允许输入30个字)