导航

Win32 缓冲区溢出实战

Posted on 2004-11-15 16:12  charcs  阅读(472)  评论(0编辑  收藏  举报

原文:《Intro to Win32 Exploits》
作者:Sergio Alvarez 2004.09.05
译者:cloie#ph4nt0m.org 2004.10.30
一、前序
很多次被朋友邀请写篇关于在Win32下Exploit的文章。一来是因为此
类文章中关于*nix 平台比较多,而Win32相对较少;二来是因为在Win32
中写exploit有些地方可能困难一点。以下我将用一个具体的简单例子,详
细分析漏洞的发现挖掘、调试以及exploit编写利用,这里选择'War-FTPd
vl.65' 的一个stack缓冲区溢出漏洞。
首先,需要准备以下实战工具:
python - www.python.org
pyOpenSSL - http://pyopenssl.sourceforge.net/
Ollydbg - http://home.t-online.de/Ollydbg/
OllyUni by FX of Phenoelit - http://www.phenoelit.de
War-Ftpd version 1.65 by jgaa - http://www.jgaa.com
Fuzzer vl .0 - http://hack3rs.org/~shadown/Twister/
( 译者注)因为pyOpenSSL可以找到针对python 2.2.x的win32编译版,所
以python安装2.2.x会比较方便。
二、挖掘漏洞
能够实时调试在漏洞挖掘过程中,是非常重要的,可以知道究竟发生
了什么。下面用Ollydbg打开要调试的程序'War-FTPd vl.65':
?运行'Ollydbg'
?File->Open (or press F3) (图一)
?浏览到安装'War-FTPd vl.65' 的目录然后选择
'war-ftpd.exe' file (图二)
?Debug->Run (or press F9) (图三)
?在War-Ftp 窗口菜单中运行->'Start Service'(图四)
启动程序后,可能会有些explaination,按照提示(shift+F7/F8/F9)跳过
即可。不管程序是由Ollydbg(其他调试工具也一样) 启动(Open)的,还是
附加(attached)方式的,进程都将被调试器挂起,我们需要使程序继续运行。
幻影旅团溢出学习材料cloie#www.ph4nt0m.org
图一

图二


图三


图四