|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验 3 y7 @9 e! U Y' y! [" V
第一课 9736697ffdbbb8441a316538543f05f5
$ a7 k0 U3 S$ I7 {, K' W0 X基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.
& H% V/ [. O% g! n3 q) A. p( x8 L* C 缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.
' y/ W" ?1 a1 L2 [) T7 R 缓冲区溢出强大在于编写蠕虫,发现0DAY.
3 C! J' |" d" t" e) g) ? 相关代码在附件里.
- s% u% ~0 `2 S- [; k 教程下载地址" x+ x* v# [0 H7 l" d# r* \) ^
纳米盘:
3 J8 C7 H* n. }. C1 I7 `1 L$ b http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02
( {: e# a9 S* n2 b% p8 r, O转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619
2 } d9 y% g( J% p. R
: u3 C3 i9 l+ X% h- c/ L' j' n第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b 6 M. n+ \! H9 K( b
暗组论坛也提供下载 ~( B; [* k& g/ F
教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)
0 I6 j2 S* b. m% S5 F, g# n 第2课 开始调试和测试缓冲区溢出程序# o5 |& f, u2 V4 F% F
主要内容如下:通过自己构造特定字符来测试溢出点位置。
; h9 l- T) q; R! y/ Y 掌握和定位 函数的内存地址8 {7 `/ X. D- Q5 a+ X% `- |9 o& s
口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。
. Y1 G5 h+ f- S. z6 n( ?: _, E 课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902
8 N( o+ {/ ~8 d# W
( O1 Z( }* J) h7 @9 Y) S0 H转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918. `: V8 x* N& U4 `; p
% q" K% |. w* {6 n; _: P
1 i5 [8 P- j) e4 T1 F第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d8+ Y( Y$ F' U; S# e
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02
+ y) {3 ]. H6 n; v7 y5 f什么是shellcode ' C$ n# l& V1 q. X
一段可以调出一个shell的机器码形成的字符串
7 d: s- g6 r% g! j: ~
) G% b0 ^6 p" Y" D如何得到shell的机器码
6 N1 N* h+ A* \0 I4 ?) ~" hASM的嵌入编程
* X, y( u; B1 ^6 u5 i' M一个CMD对话框的shell
) i/ ?6 `* C- T4 _( \; Q. [1 F- ?
/ t# }1 s3 q+ a& D% p通用的格式:8 B) u) M% {5 u/ u1 h: j
Push ebp
4 l# _& d8 h& IMov ebp,esp
! T, f' k! R, k- kXor eax eax' y2 x" k) U9 V! W
Push eax5 P' g! X1 M8 L% C: h! v4 @
Mov byte ptr[ebp-xh],xx
* u7 J+ |, m i& a, oLea eax,[ebp-xh]
/ \% F1 E& p" b$ m) b( i& LPush eax' N8 T n' d9 i+ ?6 g
Mov eax,0x函数地址
: C- i3 I& _9 Z! H$ DCall eax
( Q( \1 ?: b, r/ W/ N转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289
% q# U; O/ W4 w8 N2 B6 m8 v3 `6 n2 `
- b- |+ c* z' T# `7 Y8 j) C) N暗组缓冲区溢出第四课: j. J/ U6 n5 |% Q! G# p
如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。
1 ~7 [8 X: t+ @8 X0 X3 L所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。
' A6 @; g- Q# W" [) G5 G( e" M2 i1 w4 S
3 `+ Z7 S. i7 w5 Z* N8 }* r7 R关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.4 Y% j5 _) |: h$ t6 L' N- G
3 @9 u! y9 ~( | i" @
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901
) M2 Q8 v$ l2 K$ E: X- m转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071
o, O* c+ c2 f X/ T' y
7 b+ I+ S$ y# T" E[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|