|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验
' q! ~) X5 j7 S: u5 `3 M2 ~第一课 9736697ffdbbb8441a316538543f05f5
3 H* J4 J* a* R: l! }4 I h! t$ t基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.
) b" U: D! q- H4 \ 缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.
" x2 U9 |6 d( s+ G6 e7 Q 缓冲区溢出强大在于编写蠕虫,发现0DAY.1 R; p7 n& n8 K: J T; T' k, X+ Z- \
相关代码在附件里.
4 J2 n! n9 r6 o0 T, ~4 j8 p& E 教程下载地址
0 b2 M. o' H/ E( z5 | 纳米盘:
1 y7 W+ z8 B+ {/ h http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab025 m, O/ }8 ]+ q/ X% r0 k
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=406194 W0 B" s4 i2 B3 o7 {; E+ j; S
+ _7 u5 F' o. N w
第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b
7 C n$ v e# ~; A1 e暗组论坛也提供下载
2 s1 X: O8 Q& e教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)
$ ^* _; g, H* z8 _ 第2课 开始调试和测试缓冲区溢出程序2 @4 @+ }1 }4 a
主要内容如下:通过自己构造特定字符来测试溢出点位置。
1 V5 Y" O! J* z5 v1 E9 h! N 掌握和定位 函数的内存地址0 q7 H/ v) F6 J0 }7 Z
口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。
! M4 b" T h7 i, }( d. }- F( j 课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902
& l" J7 f# d3 T" V6 j* w& n: f [$ [4 T
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=409186 F8 l6 J0 j3 P [& b" U. l2 _7 X
. b5 K4 ~" O' y0 S7 _# y) E
2 I7 h; @& T7 B$ e" L5 q2 i! m
第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d8" i( T/ R% Y, h2 X& A- a- v# b6 q
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02
4 l+ V/ p% b+ Q7 g% {什么是shellcode
2 g4 D( _1 ]+ H0 r9 X: G一段可以调出一个shell的机器码形成的字符串
% ]4 v# W+ @6 Q% W/ z* l$ {, g3 {) p% Y, `2 d8 U' j
如何得到shell的机器码/ J2 i# \3 D1 N9 }) a L, N
ASM的嵌入编程
3 U* i1 ^( M) \一个CMD对话框的shell: A4 ~6 q, } ?+ \/ Q. ?: l3 o. c
+ m& o# p( s4 h( T) X2 r( C通用的格式:
U& {8 v3 C/ ^7 J5 G4 s, [3 j0 Y* CPush ebp. }3 I: e! k# d. G. Y* w
Mov ebp,esp
9 K0 O k9 D0 v, lXor eax eax! N# P- L7 Y' {2 D$ t
Push eax& k9 }; t: E; c4 C9 f; f
Mov byte ptr[ebp-xh],xx& i$ X, J/ [) t- b& h
Lea eax,[ebp-xh]
& w' K- v4 G9 P8 {; u4 k- L iPush eax
% s* ]. X4 D8 a1 H2 z3 GMov eax,0x函数地址
5 F7 o( {) n) k- [/ TCall eax7 ^: D0 \; G0 K1 _' [1 I& e3 C% Y
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289
! q1 Z. O8 [1 s! k) B0 S
% s+ C e+ z2 \5 t暗组缓冲区溢出第四课
2 }* Q5 j6 h7 Q9 @2 \( o如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。% J- m2 {8 V: P( N2 y
所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。
8 P! H0 C* K1 K+ R
' m- I% q W$ o" I* e关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.5 ]/ I6 i t f
$ Q) c. w! N7 \! `, F, q$ _5 j- e
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd9010 q) y) z/ T: k- ]+ t6 Q+ E
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071- {, {- T0 |4 S) o3 P: B3 A$ h
; d' `2 D$ K% {: R( ?8 F[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|