|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验
6 c4 s9 E* }5 L4 ?2 Y$ D- k第一课 9736697ffdbbb8441a316538543f05f5 5 e; x) t& [2 j4 }6 F1 C& }: L
基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.
4 U8 D9 J7 C# y1 g% B 缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.+ {0 x6 R0 Q' ^# ?7 Y3 F f0 D- |
缓冲区溢出强大在于编写蠕虫,发现0DAY.
) T1 x2 B* ?& S5 p4 Y9 d5 [ 相关代码在附件里.
0 M+ t- M/ [/ f. F$ T 教程下载地址
6 C8 e0 y0 N" d! H& y" I 纳米盘:
% X% \) s; e7 R/ ~2 k8 ] http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02) z+ @8 k6 L9 G0 K8 k! }0 R' k# }
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619
& [8 H g3 f, t# u: O. G! S6 @2 c1 F0 p9 n% C, G6 k4 `* f
第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b
. b& {+ b$ H: o9 i" D/ M* J7 ?暗组论坛也提供下载 0 N/ q! [8 V$ D$ I% l3 W) p* R
教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)
! L+ H3 `( t7 ]8 ^) n+ J C 第2课 开始调试和测试缓冲区溢出程序8 Y+ y3 t- k# |2 z' F
主要内容如下:通过自己构造特定字符来测试溢出点位置。
# g. Z) }4 p( [% d/ u; R. R 掌握和定位 函数的内存地址
# n/ t& `6 o) }0 `; t& H7 z 口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。, b) [- Q" i- Z
课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902( M7 A; n5 H: p' P4 j& c
9 `) F- v& O& b% u) @: x6 G
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=409181 k& G% B" d" f! Q2 a
2 j& Q j$ x8 b% e& p8 h# A8 C
( N: M4 z0 h0 s, y) m第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d8
0 I- {0 [+ e; y' d课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02
1 t7 j8 f8 F( _; {! n9 }( M什么是shellcode
! V3 N' u$ F/ G一段可以调出一个shell的机器码形成的字符串3 N: u \% l# o. A. Y; O
9 Q% i. z' q" y9 y9 y8 l- J
如何得到shell的机器码
+ p/ w5 z6 \/ j& i* EASM的嵌入编程 * U+ m! h1 V' M: d% e
一个CMD对话框的shell
' y6 H3 W* c& a3 q5 ?! U7 l5 Y* e0 K5 V
通用的格式:
. {5 b7 m1 n0 C0 VPush ebp/ ]; z, m* R! E" X& I- i
Mov ebp,esp
; T# `' g1 F7 o) K- C8 G0 jXor eax eax
0 d! n' u! T i8 s1 XPush eax
% ^/ q9 b, T5 SMov byte ptr[ebp-xh],xx
: g& S% x; ~+ w1 z( k# h; rLea eax,[ebp-xh]9 n+ i, ^, c# Q4 N) R0 c4 d, ?
Push eax- o* _. q6 n+ ^$ m O, `
Mov eax,0x函数地址5 u& N( m$ D' Y$ ]9 J
Call eax
* l' j* g6 Z1 O. _: q; ~" H转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289
# s: y* z7 b) s0 `! z7 j
? J+ n) S5 J# ^7 l- @' Z6 r: l暗组缓冲区溢出第四课
5 }( |$ ?+ x+ F. S如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。
: V1 l. T; `1 |3 Z2 t5 X0 z" `所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。
5 W) A1 K3 M u ~/ Z% ^5 L1 \3 K2 \+ i- Y0 j$ j
关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.) A: d$ A2 X5 R
6 L; D/ m7 t5 q' H. [5 ~视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd9014 V& |/ }" M% o
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071
; [9 @) _ ]+ }. r. r* k- F. ^' @( f0 `" t' H+ X+ b, T
[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|