|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验 # b; G. X2 \% x
第一课 9736697ffdbbb8441a316538543f05f5 # f* h! z4 M D* D) g2 |
基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.
! {+ g O: j' R 缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.' B" z) f1 {$ K1 h# U( b
缓冲区溢出强大在于编写蠕虫,发现0DAY.
- [' o, B# b) P) E; ^1 e 相关代码在附件里.% k- p G( M& U, G* F& ?
教程下载地址4 u7 [; i# S# Y
纳米盘:, E3 y+ Y4 L! Z: O9 R
http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02
3 A7 `+ t: \0 l8 V转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619
. n- Q! a! }6 Y% b5 e
. J% K- F. c) _0 f+ o, V第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b . l+ g/ ^: j ^1 p& s2 ~; ]& ~
暗组论坛也提供下载 + |0 i2 m/ }0 Z+ y9 P$ i: ~& {
教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口); W0 x4 _! Y4 ^4 Q `6 l3 T
第2课 开始调试和测试缓冲区溢出程序4 q% d9 q% f- A, o2 U' c
主要内容如下:通过自己构造特定字符来测试溢出点位置。
" W- d: K0 g; x X9 X 掌握和定位 函数的内存地址8 Q. Y, d' L" s* j# `/ |. M
口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。
7 i9 d2 t* @. j+ A* J 课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902* i& F* X7 B' O/ I x3 j% o8 t5 F- `
4 K# r+ F" [7 w6 l9 K1 s8 {! Z" c
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918% K( K1 |* a( g8 v7 z
" U8 O' d! g- e- s5 H
8 n3 A6 U' ^5 X: r1 ^/ a: x
第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d86 w; i0 w) t+ l* l( d
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e029 S* g4 u2 H ?! ]7 a
什么是shellcode B1 @" q9 D- [" X" k4 i+ m& X
一段可以调出一个shell的机器码形成的字符串. |& K! o: ~" o
; c& s& N* H% e) S& d如何得到shell的机器码: M: j0 k8 d) R* c* y
ASM的嵌入编程
2 u9 p! X7 ]+ u' Q. u- m! V一个CMD对话框的shell
8 W( \) m- `, [2 m( n
/ ?3 |) R: A8 U通用的格式:
0 i' q# e* | K5 u. yPush ebp
, X+ y7 G- J9 X: i+ M* K0 l/ nMov ebp,esp0 S& p/ E- t9 f' c) B" }
Xor eax eax
7 U" e M+ N. V4 g4 h, ^Push eax/ g. C* V9 Y% \- H7 M, `; ^
Mov byte ptr[ebp-xh],xx
( j) W1 C1 {, ]6 b& F% }- HLea eax,[ebp-xh]
+ c/ \: T6 h* o6 o5 d$ c6 b: dPush eax
. X6 J7 k6 `* q) SMov eax,0x函数地址) o7 d: V0 Y% V
Call eax
! @% v5 }* J, f4 B z1 O5 ~0 K% u5 j转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=412890 W; |0 X/ N! }. Y
( l, y+ b3 e7 c V暗组缓冲区溢出第四课; X" \7 t9 U( a$ s
如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。& x5 s! J% X. D& P
所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。1 U0 H1 t; _* y
2 ]5 {7 T5 c' _. h! O7 _% R3 Q关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.% T( I- O1 q- t) v) S& I
+ l/ `1 N+ i! y- g+ W
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901
) V! `9 Y! J" v) Q' z6 ^7 @) r! l) J转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=440713 j1 R2 w9 `+ y0 V
5 ?# `; b+ n7 `0 C1 W' I
[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|