|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验
7 ?2 C# s1 L- y7 e3 o; W5 b3 }- k第一课 9736697ffdbbb8441a316538543f05f5 * l1 ^+ L" E; ~4 p. g$ B/ B
基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.4 u+ n( s: @1 D" h. q1 X
缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.
: A8 q& Q' Q7 \( v" r" e% S 缓冲区溢出强大在于编写蠕虫,发现0DAY.
d3 [/ {* ^- F 相关代码在附件里.& j1 |9 C8 m2 e
教程下载地址% Y- |" l( u5 z" Q; Y0 v0 Z
纳米盘:: P4 R" o: J Z }$ I5 `) m' ^
http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02
; P4 ^- a( M2 e5 A+ Z转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619! s2 T- ?+ v% U/ h3 P8 ?
S t( _$ j2 h' \. Y6 Z第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b ; B! [. l& Q$ t6 U% x( ?: Y2 A% r
暗组论坛也提供下载
3 W+ {1 m/ r6 f5 u ~! ?! Y% N教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)* M0 T: U% U- Y3 I+ d3 O3 S3 R2 c
第2课 开始调试和测试缓冲区溢出程序
3 |8 ]* u K( D/ G, ]. U) w1 q: R. S 主要内容如下:通过自己构造特定字符来测试溢出点位置。
" u& E) t4 _/ F+ H2 t. E3 p 掌握和定位 函数的内存地址
. b- Y2 E9 P/ I1 {3 |5 p$ w 口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。6 }- V& q6 {7 a: D
课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb9029 |* v6 S: E8 s% s% @5 _
6 w# p- s+ {! z* i" E5 l转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918
2 r5 Z7 A( O& O+ v' C; I$ N, R$ o! I* k: t
* {0 E& Y$ ?0 k
第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d85 U) U% Z" F: t: Q) @$ u! z! l8 a5 S
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02
4 P8 o J* {( L \7 ^什么是shellcode
. q, O& X( ^2 M- N9 r一段可以调出一个shell的机器码形成的字符串- {. c# J8 H- g; E# N+ \
; e3 S$ f2 S0 q( Y. l3 X$ L1 N如何得到shell的机器码" i# V+ ]/ E {6 \' k/ u
ASM的嵌入编程
2 \9 Z* Y6 i" S- ]; X% K一个CMD对话框的shell
( ?$ i7 _4 y2 l' Q# c y7 q3 u' `1 z/ e3 S! L3 a. O# ] o$ v
通用的格式:3 o+ U( H7 w6 G& e* ~
Push ebp
2 n7 `* X6 W8 p6 YMov ebp,esp9 r, L+ S, |/ z, G( c
Xor eax eax
6 Y- P/ h$ _" I5 G$ ^Push eax. s. h% H% i' l+ n9 L# {+ ^7 ^
Mov byte ptr[ebp-xh],xx; _! w9 U5 K+ W2 I
Lea eax,[ebp-xh]
5 Y* [( ]7 Z1 s- f4 qPush eax$ ^+ f$ t2 w9 S# r2 o7 f$ W
Mov eax,0x函数地址% n& Q& Q3 x# ?# y
Call eax
M! @- u6 S/ [转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=412892 S7 y& i% V, X$ a. f$ S5 U
' s5 c# M* I5 H& I9 `+ k! M
暗组缓冲区溢出第四课
% f" u5 U0 f+ H6 @% w8 v% l0 j如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。
' t& B; i$ [3 j7 L. M* J: Y) n所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。
. m: X X* I, g, s/ ~" y: y) R8 I' ]: w/ o4 a- ~
关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.% z c( G4 x! j" K! X* J6 Z/ y
) d% j6 S) O% @: x8 M1 l
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901
, G# `. X; Y9 Y: W4 I) \9 u转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071
6 n1 v6 g1 `, _3 u6 D* C+ P
* s, j) q* ?' {$ D+ z[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|