|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验
3 y* r7 P1 ~# I, X; e3 H第一课 9736697ffdbbb8441a316538543f05f5
8 C2 j& x, ~# H: K基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.9 J" k/ Q+ b* o3 ^8 v$ S+ V
缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.
$ z5 B, l, e* |$ [ 缓冲区溢出强大在于编写蠕虫,发现0DAY.
0 W" N R3 C) q- f0 q6 K 相关代码在附件里.
/ [( L4 Z9 V4 h* d) ?; A, G. ] 教程下载地址+ d _' W% o8 G2 Z# h
纳米盘:
$ s. n9 O, f& `% | http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab023 P& ~0 T3 E; h5 D* g
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619
# M3 E( x/ {- ?6 w* ]! }; L b) a4 v# m! R
第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b
$ I2 G/ a5 M4 S8 g+ T暗组论坛也提供下载 , S" {# T* r0 t8 k
教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)
- v- R' N: w% e& I; w5 O 第2课 开始调试和测试缓冲区溢出程序
2 A, Z6 w- i9 q1 f" t 主要内容如下:通过自己构造特定字符来测试溢出点位置。& }! p* G, w# K; j" [ ?+ {; n. T$ w
掌握和定位 函数的内存地址 k+ O7 \. c5 p) l: a
口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。, y( R6 f9 x1 h6 b2 U* {& f b+ \
课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902
+ ^$ S$ F. m3 Q3 E; C; [) q! g8 j7 g6 P' L0 ?
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918
$ [4 m3 o) z1 ?1 L5 c
( ]; W6 `( J3 N8 e0 [/ j) S w) b6 P0 v: u: t/ v' A/ D0 X; a2 m) ] t' E0 {) d& [' ~( _
第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d8$ g4 X0 P( a" P- ?, a
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e021 g' g" E4 R( R
什么是shellcode 9 _: ?+ f' j) P
一段可以调出一个shell的机器码形成的字符串: w8 q0 \" B5 {) `; l
! g3 U8 J: x: G( @4 m0 u
如何得到shell的机器码
. i7 d6 q: X" ~, P: u5 v+ nASM的嵌入编程
( `3 {2 c5 ?" F) `; p* @: E一个CMD对话框的shell3 I0 U+ u$ e3 G9 n& e. B! Y
" ]4 ]: [$ S3 n
通用的格式:( C* \9 K. p% g* H" {, q
Push ebp
/ R; [4 o* ]; C$ mMov ebp,esp
' B( Q% ]/ A. wXor eax eax6 v& w+ y1 r" D
Push eax
- ~, y- m6 U0 ]4 {1 zMov byte ptr[ebp-xh],xx l! k1 x2 @3 n) S; l( C# h
Lea eax,[ebp-xh]
# G3 n& C- }+ I. H# ~, ]; pPush eax+ U |/ f: J1 l1 L) d: C
Mov eax,0x函数地址
* r9 k+ ~! F/ c- J% ]Call eax9 L" V% t, Y( E/ h
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=412897 R) Y( J" }3 H: T3 A
$ H5 v! z) Y4 |暗组缓冲区溢出第四课
5 Z7 a' d2 B* J' Y2 x$ C0 i8 j如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。$ `4 {; _7 m7 r, U5 I/ n
所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。
& e% R% n/ K d( `2 O- b' t8 q8 c- R5 H) L& L9 h: O, l0 X
关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.! @: O+ @0 k$ s7 }- Q
9 h; O2 e' h9 p& O4 J# [2 M
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd9015 Z: o7 E0 G. {: k3 v. P% B
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071' v1 C# Y( M2 u) t5 K
, T% ~. ?& ~7 _! u. P' E( L7 m[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|