|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验
3 o' q+ I3 J) W8 }* o0 N第一课 9736697ffdbbb8441a316538543f05f5
) }: x8 r% M2 p: Q0 k" ~! L基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.
. F' m& N @8 B, m- C; P5 v1 D 缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.
& C# V$ N1 G, B6 n) r 缓冲区溢出强大在于编写蠕虫,发现0DAY.3 |8 C) W- g! H9 p+ Y ~( Q
相关代码在附件里.5 z2 i2 M+ m& W) E4 j# ]; {
教程下载地址# L6 J9 `* y5 s! j+ U8 ^" F
纳米盘:' g e& N! `; g1 t5 X
http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02
7 m, O: j, O+ u, ?: e' x转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=406199 v0 {7 L: Y1 x1 [7 c
8 s1 H `! S# e; u% D5 e第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b
, q" |6 A& a4 ?1 Y0 I1 ~, o暗组论坛也提供下载
' |* D7 a4 l8 j" ~( d教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)" r s- S) E7 t
第2课 开始调试和测试缓冲区溢出程序
Z/ C, J) Z5 o# T C3 z 主要内容如下:通过自己构造特定字符来测试溢出点位置。+ V* Q1 W Y% m; A: s m
掌握和定位 函数的内存地址
, |( r9 ?; L/ p2 p6 m W" @& V 口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。0 M# h; l+ w6 X* ^8 d& m
课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902$ O/ H* M6 T: V2 f- p/ X+ t' B
' y. @" f+ u d& Z转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918# F6 g* ^- W- }/ Y& P8 v
$ ?* T. g+ t" D/ @- e( w
+ I! z& ^8 x+ p! o& y! {/ v第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d88 b6 ~$ J! n1 [$ D: B
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02
: L4 G8 a! ]1 p: K& ]什么是shellcode }7 I- V8 J, s
一段可以调出一个shell的机器码形成的字符串5 D ~2 a/ }+ e# `+ O" R
9 x, R2 Y7 ?5 p) }4 @9 u如何得到shell的机器码6 X: u5 h0 P; {/ m; k3 ]/ X8 F
ASM的嵌入编程 0 v4 _: j8 S& b* x2 ], {
一个CMD对话框的shell6 B8 V e1 p- ^1 H! ~7 B+ S2 f$ Q
, J' H; ]6 w! b, n通用的格式:! r3 {3 y1 h+ m7 x# [
Push ebp
1 g6 T$ r# }6 r- ^8 y: MMov ebp,esp
& P2 e a6 q/ T/ |/ D9 G/ PXor eax eax
1 L3 r8 G% D$ y8 X! @* Y8 @$ y$ aPush eax
- |$ V+ L* @5 G8 i1 zMov byte ptr[ebp-xh],xx
8 c8 r% g' S# Q6 n' V2 v" D" N; k' oLea eax,[ebp-xh]2 u& a) O9 a. [
Push eax
- B5 H8 _4 H. q! n7 \Mov eax,0x函数地址( _5 \- J' \- T9 {. l. Z
Call eax h+ k: M9 C+ C2 J$ L! S0 d
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289
; M3 ~) j+ q' A2 [& n e1 y- o" S; G- Y/ b7 h8 f& _; ^/ Z
暗组缓冲区溢出第四课
) |' a C i5 |, ^% E0 ^如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。
/ {* J, h5 A7 {# O0 @: N所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。! P" d3 K1 m* _, o
% a) n) ~2 X) l P0 Y+ H- H. O
关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.( d7 `: d, B* ?- A/ J1 P
7 V7 O+ \* d5 Q# P. V+ D) C
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901
, `' X; e1 j# U% F8 y- J& d$ j转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071
% o/ X! D- Y; X% C) m" k5 ?( W n
[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|