|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验 ! f9 E; p: H3 n" j8 ^9 r! e
第一课 9736697ffdbbb8441a316538543f05f5 . C1 U( I, w0 h! t3 h, ]; d
基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.& |- j! ?( L8 K$ x( F5 @
缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶., ~- k5 H) X8 g
缓冲区溢出强大在于编写蠕虫,发现0DAY.- F* h4 n/ A2 @* D5 r. X( Y
相关代码在附件里.
. [& e# Q3 H& y$ O 教程下载地址
, F2 h6 y1 l+ h; n+ c! v; V4 ]1 { 纳米盘:" y7 Q, S0 {& x" q9 N2 D9 t5 v& k Q4 `
http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab022 r! ^* f1 ` l" ]* `1 c& {
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619
1 R7 e; m, u9 q0 E) q0 O& l, ? c4 i' N, n5 H
第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b / ^1 F. G) e& e& X5 }: q$ e4 C
暗组论坛也提供下载 ' ]; m5 m( q7 n
教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)
q8 d4 A/ }# W, U5 X, }0 A 第2课 开始调试和测试缓冲区溢出程序0 l+ d- ~& k/ w, Y9 E
主要内容如下:通过自己构造特定字符来测试溢出点位置。
8 B+ w" M( U* H, z8 h3 v: n) T; J 掌握和定位 函数的内存地址
0 J: t# |/ E6 s# x, H6 v7 ] 口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。
/ g' L, R! C' _3 m9 E 课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902
+ @9 r& h8 a: F1 X1 W' _2 a/ A- Y3 {
/ O& t' D* z0 z* j0 P转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918& ?3 q9 V- u+ W" D8 [6 W" u0 e
1 D9 ]( k. k0 J. b ]
" Q, F# J. O7 ~第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d85 Y7 B# U: |& x; X
课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02% h7 c- T0 P" B3 E5 T
什么是shellcode ) A' H( l: Z& S( z* r
一段可以调出一个shell的机器码形成的字符串% [* L9 }& j' o& M" R
! h2 a' ]% m( Q9 l9 z4 M) T
如何得到shell的机器码
0 }; g. ?0 T- h$ o- N& bASM的嵌入编程
# o6 a6 a. Y5 Z: q$ G一个CMD对话框的shell
7 B: Y) B4 H. h8 O% a3 _3 V: K6 j c! D6 ^) `. m2 O! t- z) u
通用的格式:
/ j+ V* x9 U% O2 yPush ebp
: D; P, V1 G2 _' ?+ D6 yMov ebp,esp
% g8 Z+ l& F( {) @" ?% O0 AXor eax eax
: u, ~8 m6 v. m: Y; h, JPush eax
$ K6 o- s4 u9 d! f) m. iMov byte ptr[ebp-xh],xx6 ^6 ]2 f. n2 T0 g/ ~
Lea eax,[ebp-xh]
: }. c5 @# L0 f" S1 u- \5 x9 lPush eax& l8 r3 x5 b& E8 V1 T% {
Mov eax,0x函数地址
0 \# o0 V0 B9 J# a- R5 M& yCall eax
4 e; [5 X7 G4 j9 i转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289! Z0 t4 T0 w! p# {6 e1 k0 R3 i0 a x
& K1 e; ^ A$ P. g
暗组缓冲区溢出第四课
. E4 r8 R, F" }, A如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。
! W! G: B( q1 j8 @9 e, U' v所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。
+ I1 I8 ]8 _6 ]+ S, l% N6 X' ~% y2 P' o1 w9 ^1 p
关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.
: z1 }/ Y2 v b- H% y/ G; m( @5 f* T7 q2 d
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901
! p2 m+ V, b& F+ e, G8 V转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=440717 K& \/ _( d/ ^% I3 S
7 d5 W* j9 V5 K% D# u4 C[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|