|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验 8 [& [' B7 j( x6 A
第一课 9736697ffdbbb8441a316538543f05f5 - U' u7 M5 `6 l% Z& ]/ Q
基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.
& W: L5 y% A+ h 缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.' D( H7 J7 d) J w
缓冲区溢出强大在于编写蠕虫,发现0DAY.; @/ [1 g# M& E, x1 }
相关代码在附件里." }, N( ?$ t' C* N8 E
教程下载地址
: l* @( Q! H5 }. X8 A 纳米盘:# {; p, j/ e0 w# a$ D" m
http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02
( M3 b) ?3 n& K L1 v6 ?. X7 L6 K转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619
. {8 r; Y! } k1 W
% V1 E& r0 @% q) F+ b3 c第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b + }: ?0 U; W5 k5 ^0 L) ~
暗组论坛也提供下载
7 Q2 {' t' H( }, g4 N P教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)0 N( I; T8 B% c9 K/ _* k
第2课 开始调试和测试缓冲区溢出程序
# }9 p& [# {& P( O. }. b 主要内容如下:通过自己构造特定字符来测试溢出点位置。& S3 s! G& k5 b7 X8 F* v2 i
掌握和定位 函数的内存地址
5 ~$ g- ?7 X, C1 r. P# } o 口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。# ?0 q9 c* }4 o* J" ^7 [
课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902
$ Y: @1 S: ^9 i9 u1 t; T
. D8 A4 g& ]& \! x Z4 p转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918+ q, {- N# Z/ J) z" h
9 ]0 s2 X3 c* g( o2 ~2 D, r
0 K) X$ k1 x& F4 e第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d8
( m3 p& k( G0 B. p: y课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02+ D* V! Y- }" h% C; r
什么是shellcode , Y2 R4 @& |; f$ f( _1 e7 y
一段可以调出一个shell的机器码形成的字符串* V, R/ B0 l6 k1 o) o5 b. e# W
+ ]. H$ K1 x7 |& r
如何得到shell的机器码6 c. O1 I6 h( ]7 q
ASM的嵌入编程 . V0 W% T3 L& D
一个CMD对话框的shell
9 t, n8 }* C G% w8 l6 d! P2 w8 v7 y: M+ I: w N# w8 R
通用的格式:
y: i( Q7 q4 M% M' F1 fPush ebp
1 p8 l r8 Q( Q* P* n mMov ebp,esp
6 k) T Z9 [% WXor eax eax
6 y$ ] y7 R5 k: o' N, F3 z- gPush eax
: r' D; J- W. ?Mov byte ptr[ebp-xh],xx% _' m0 w" v. y% H: M8 u
Lea eax,[ebp-xh]
@4 m0 n4 {' E. YPush eax
8 e. ~5 d0 m; }5 YMov eax,0x函数地址2 J+ @1 R( Z# y9 V; D V
Call eax
, P1 |1 M! b7 K6 |1 y% @7 c转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289
& `& B( Q" o( p; b+ R7 M! B2 X" b' _+ q, H2 {; b2 F# Q
暗组缓冲区溢出第四课8 M v* [- U8 Y Q
如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。9 \* i4 o0 t5 B3 ]: x2 d
所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。' }# b) E) c. I2 U5 X N: a
2 p0 t3 @8 j, d! U关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.. H* w" \* s2 J
7 U3 N7 X; _- l. Y( }
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901$ A6 x. m% x( P# n0 r9 s/ C
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071( {5 a: ?3 K+ e) n
4 l {' y# s3 S. R3 ?[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|