|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验
# |6 i- h3 w* x3 s4 K! c7 E第一课 9736697ffdbbb8441a316538543f05f5 6 z3 T; w, J5 F0 o* X0 i5 C
基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.6 Y, F% |' Y8 D/ q# I
缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.
- M, s5 D" U7 O0 _6 p4 o; Z 缓冲区溢出强大在于编写蠕虫,发现0DAY.8 @3 t+ q6 B- M8 @
相关代码在附件里." d* d, N' s- V4 i
教程下载地址
; Q, B/ [1 x s; T- G0 Z" q 纳米盘:
8 C: c! ~$ j0 _, h! i; r6 S http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab028 Z5 q6 C: J9 V: B* v7 N
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619
* e9 y9 B% H: j5 ^& l8 f* d
3 H0 B$ |7 x4 j: _第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b
7 M' y M! l* m2 g% v暗组论坛也提供下载
( w% }1 |$ V( p) u" b5 r4 e+ Y教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)
: J0 v1 e2 F6 p7 y( d. C 第2课 开始调试和测试缓冲区溢出程序% S: L6 P# ]4 k1 y
主要内容如下:通过自己构造特定字符来测试溢出点位置。
8 Q" r: J* D2 N( Q8 h' x4 I 掌握和定位 函数的内存地址
6 a1 e9 y( e9 @- l: D, u6 l5 [ 口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。
' k: y- s$ X" ~2 L7 z8 p2 s 课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902+ N! y: k+ k, n5 R0 `, o# r, u, ]
% W6 X$ @) b2 y6 e9 a7 e转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918
( Y* \" y1 _, F8 c, C6 V, ~9 d0 D2 y5 P* H& J+ y* {7 A1 T" C' z
9 x* x4 T% b) g/ u6 d第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d8# a M* N; m$ p; F& Y3 l' Q- [
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02
# B: X# [5 k) @- C, z3 M: O4 @- l什么是shellcode 7 M2 H* V3 A0 N% E
一段可以调出一个shell的机器码形成的字符串
: g8 h5 ?1 m7 t$ Z! C, W4 t. e: i. f5 h: Q
如何得到shell的机器码$ A$ M' x: _! d' B$ W% _+ I
ASM的嵌入编程 6 M# a/ ], w, _" \9 g0 f# y
一个CMD对话框的shell& H# p# Y7 E; ]1 x
# \0 b' }8 Y+ H& z) q
通用的格式:
. @5 z- U5 |* H( `, N3 fPush ebp
6 c. n" Q# V# w& JMov ebp,esp
, f6 ?! [6 s& Z; O% C" YXor eax eax
; T4 x, l0 A! s( F! m2 TPush eax8 F& I3 N5 Z; b1 h( i% D9 A
Mov byte ptr[ebp-xh],xx0 O0 x. H* u% A2 g \8 {1 p" T
Lea eax,[ebp-xh]. J: F3 d5 I* l* ]. Y1 C3 y
Push eax4 U- o) z6 f% J$ B- H4 Y q: m& [$ w9 N
Mov eax,0x函数地址
) T9 e8 x2 k4 cCall eax) g& u7 {2 E7 C; }
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=412893 q" t0 i3 g# Z( B' b2 L
5 j; x& g" d1 d% A W2 I暗组缓冲区溢出第四课- Q, G3 M" F0 U: }0 R
如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。$ P7 _7 j/ ]6 y% ~, n: ]
所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。1 v& V6 [, n1 J* P" A
' B# [# V+ o, i1 o6 ^, c
关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.
) L) Y8 T/ O' T% N* o
. K4 P" l& i) }0 j视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901
4 g2 i9 d: Q c0 K& A: e. O转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071+ V+ y- L% c1 [; Y. E% c
) @4 m/ M$ {' h4 A* }, n: J8 L[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|