|
|
为了避免教程被人捆马 首先公布下MD5码 请大家自行效验
, v* f, L9 b! N2 I4 d9 h第一课 9736697ffdbbb8441a316538543f05f5
6 S/ H+ `. _# h) Y0 Q$ }) D基本上市面上没有什么关于缓冲区堆栈溢出的教程,黑防的7剑要好几千.闲来无事.做一个试讲篇.希望暗组的朋友喜欢.' Q, _: x' T5 m1 t, w' q8 c
缓冲区溢出一直是很多人追求的目标.市面上关于缓冲区溢出的书非常的少,最重要一点,代码不通用.给新手学缓冲区溢出造成很大的困饶.3 Q5 D1 m6 V6 O7 @# I
缓冲区溢出强大在于编写蠕虫,发现0DAY.. t- Y# N1 T6 K
相关代码在附件里.
" N9 D4 y5 x2 D" T5 `" D 教程下载地址
# n3 B4 C' \2 H, G/ t8 R7 Z 纳米盘:( F. s' Q+ n* K( ^3 I
http://www.namipan.com/d/a8e60a9 ... 82e8591a2ee5e43ab02
! [$ Q* _. }& }! U3 \2 `. D5 C转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40619- q S- o6 G' u' s8 e7 J
( _1 H8 }6 ?0 `
第二课 MD5效验码 1dfba3d54e667cb1632fffc0b6210a3b + M4 J; z* Y+ p x0 W9 b8 R6 A4 r
暗组论坛也提供下载
A- c4 P# [' a8 D( R! R教程说明:由于我的ASP空间大小有限(只有100MB)只能删一课,再放一课。还有课程的更新情况 每周基本上保证1-2课的速度。如果时间宽裕的话,我争取更新3课。关于课程不明白的请跟帖提问。只要我知道的,一定解答。(本人不收徒弟,要0DAY以及蠕虫 免开尊口)3 }- e* u8 d" z; i
第2课 开始调试和测试缓冲区溢出程序9 k# d; r; {& o! ]; W% Q
主要内容如下:通过自己构造特定字符来测试溢出点位置。
( C: \0 w& o* b, e 掌握和定位 函数的内存地址 I6 k$ f, `5 v+ _
口错:教程中将26个字母 好几次说成24个字母,请大家谅解。主要代码在附件中。
( M Q# ?9 m/ x4 d4 Q5 P& i% G) @ 课程下载连接:http://www.namipan.com/d/5c1db95 ... 68b64811144a31fb902
% @) X2 I! P, y1 f1 |/ I; y' e: b5 {2 v; n* g7 V( Y
转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=40918/ g. [% f+ K% N, s6 `
3 N! R0 K0 y; l3 L% ^8 g$ y
- V$ O8 ~& a: E0 Z7 t* t% i第3课动画MD5效验码 d41d8ccd1668ceda673bf7473efa65d8
; a( G4 J# @" j% w+ t课程下载地址(纳米盘) http://www.namipan.com/d/1af97d4 ... 03c5cf7c504d63c0e02. S! b8 U) B7 ~
什么是shellcode
+ K" {- a S, {7 D! I; m4 O一段可以调出一个shell的机器码形成的字符串
$ p& _/ ^ H' G9 G8 W. C1 m+ G. U1 E- ]7 g
如何得到shell的机器码* V" m! r: f& ^! w
ASM的嵌入编程
" w2 @) X/ ^6 K一个CMD对话框的shell
' N9 F2 b. Y" u- ?3 Z
: ]1 A- t8 M7 N9 E- E- K! e通用的格式:
; \/ U* V1 O; k% v3 |5 D# sPush ebp
) u" P2 P' B* N EMov ebp,esp4 ^$ ]1 ?; G, Y0 X" L
Xor eax eax
$ X" H. \0 S6 H4 |! E0 O. H6 }; Y/ t: xPush eax/ q1 ^: p2 S" n% S' J. x3 Z. g
Mov byte ptr[ebp-xh],xx
; j' V! c) [! r) F& u2 A' h) {1 z5 `Lea eax,[ebp-xh]
- p% ?" h5 m2 X% c! h0 k& ]Push eax
/ o. `/ G1 Q# U- {. d) F6 vMov eax,0x函数地址# A. r3 y0 O0 A! f
Call eax
8 ]' p) W7 [. Z; u5 T转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=41289
- e9 ?: {- b8 T
* H% Z% O" j% A( s; m. n! h暗组缓冲区溢出第四课
; m' g4 W: U3 r& { m( K) b如果把Exploit比喻成一枚火箭的话,我们都知道如果要设计火箭,那么就要考虑导弹的飞行路线,攻击目标,这些因素。而Exploit就是如何定位漏洞的位置,以及如何保证SHELLCODE被加载运行的。8 N( m/ b. d3 q6 v% u* ~0 |
所以Exploit+Shellcode就构成了一个完整的缓冲区溢出攻击程序。那么Exploit与shelllcode的关系就是运载火箭与弹头的关系。合在一起那就是计算机中的“巡航导弹”。& t! `$ a- K* g4 M
3 O* f' T) `( f# q+ C/ U关于shellcode,他既可以是一个开玩笑式的“礼花弹”,他也可以是夺取计算机控制权的“高爆弹”更可以是毁灭整个计算机系统的“核弹”。处于研究目的,今天我们还是来研究一个稍微有点破坏力的shellcode.- v& q9 I" r R
! g X/ S! E3 y% n" X
视频下载地址http://www.namipan.com/d/lesson4 ... 8ca07809e09d91cd901
& ?% H% G W( \' M4 Z7 r转载请注明出自暗组信息安全论坛 http://forum.darkst.com/,本贴地址:http://forum.darkst.com/viewthread.php?tid=44071. S5 e; W3 y: P( ?7 J- [9 w3 W
3 Y! I! q: f5 u+ p1 D! f; o
[ 本帖最后由 a673803 于 2009-6-16 00:35 编辑 ] |
|