|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验 / {5 X8 v' v. ]) l" U$ ~. @) D
第一课 9736697ffdbbb8441a316538543f05f5 / |. J8 r) D9 q7 K- L) \% s
基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.6 R( |9 [8 i; p- z) {% u
缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.
# i$ b2 Q6 i/ r7 U: H& m 缓冲区溢出强大在于编写蠕虫,发现0DAY.7 o" V; O- @" t7 I3 [
相关代码在附件里.
- `2 Z% S6 @# g& \ 教程下载地址5 V# }! @) G( d7 ^' R2 w4 I
纳米盘:: u y/ B! L, v% s2 o
http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02
- [( \5 V; \/ i5 `, g& Q8 `$ d; `转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=406191 i! p- D( N" `) J N5 ?
% {2 H" ]% [' E& X* |0 v& P第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b & m$ a9 w' V# {" x
暗组论坛也提供下载
/ F6 w- f* E- ^2 M- x+ H教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)
6 L+ t, j4 Q2 y' F! F9 } 第2课 开始调试和测试缓冲区溢出程序
' X3 w9 m# d7 D! l Q5 L0 v 主要内容如下:通过自己构造特定字符来测试溢出点位置。
$ A0 L+ n% P. V8 D% c) ^ 掌握和定位 函数的内存地址
; n8 \5 ]' ^# d 口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。
8 Z$ z1 c( S3 b+ u2 q0 u" W 课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902 ]' N4 s- O/ ?6 d
& ]2 c7 W2 s7 u7 W" l. ?$ C3 T; {' `转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=409180 \. [# M: t9 }, Z2 z7 g
- k1 G, Q9 x" W7 l
. h3 H' T5 |8 x. N: W% g& l第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d83 U+ e& B0 U( g4 P- F
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02& N/ D+ x2 e/ F H" p
什么是shellcode 6 T) R( ] F L0 K
一段可以调出一个shell的机器码形成的字符串; Z; L7 {3 q, n
5 j* [8 k' q6 `# @( G* |# s" A
如何得到shell的机器码+ S8 S/ k- c& G) ^7 W1 V! X4 A2 L
ASM的嵌入编程 , n4 u$ `) L2 u/ a2 C: y/ A
一个CMD对话框的shell! h/ q2 ]. r# r8 P7 E& D! y5 y# t
' g( M6 i7 D9 d3 @7 D: X5 z通用的格式:
8 ?8 h; k' P; {4 k5 ~: q; F& ZPush ebp7 ^0 a/ Q8 W% Z. I1 _/ o6 O$ A! z
Mov ebp,esp) ]" z) c+ T. c# T! A
Xor eax eax; u% ^6 V' ~) M$ F; V+ k, X h
Push eax9 T# Z6 _: K% o- z4 L" h: h
Mov byte ptr[ebp-xh],xx
. `% j0 n0 ?) [Lea eax,[ebp-xh]3 m& d \2 p$ I; R) P
Push eax
* H# m$ S3 Z" b/ V& A0 U3 S1 sMov eax,0x函数地址
E5 ?9 r1 T% o0 A( ?Call eax
) q; n7 L; H/ O0 V. U) R转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289) |) r. G8 x, f8 a C' q
9 ]$ b# e* {. s
暗组缓冲区溢出第四课
a% J, I. U6 d如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。2 t& `! o% i2 V" q- i. O5 s
所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。
, N8 E7 S: j# ^' [: K2 ?) d0 S/ |) {/ c
关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.7 l; j" L- m( S1 y6 |
0 R& X! U6 W* ~, S( ]
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901, T! Q' I( P9 R/ Q
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071
) O3 x! x T- n+ h8 O( F/ h* c5 T r- K! P: ?
[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|