|
来源:http://www.hackblog.com/more.asp?name=lsaint
I4 O+ }' g4 U0 s 现在大部分html页面是动态页面放入了html模版而形成的静态页面,我们的攻击思路也就明确了,就是从这些静态页面里找出动态页面的地址,在找出注入点,我们需要的工具是sniffer。
! T! J1 F: X+ [) P7 |* ?* K( Y, T: ^: C9 T* _
访问这个 IP ,返回"No web site is configured at this address.",初步判断是虚拟主机
0 E4 c, `+ E& r1 J; c先通过 aspshell 下载 Serv-U 的任意一个快捷方式,然后本地查看属性的目标 Serv-U 的目录是 "C:\Program Filesewfq4qrqtgy4635\Serv-U\" , 直接跳转目录。 看到了,马上修改 ServUDaemon.ini文件 6 }$ h4 t5 y" C" U- l& b" g3 t
& t# u2 _7 a- j' i- P( {; Hview-source:查看web代码 3 n+ t( Y; T) a! }6 ]+ |3 D
总之只要是带有参数的动态网页且此网页访问了数据库,那么就有可能存在SQL注入 $ b! r. y& R$ Q) P7 s' F0 f
and 1=(select @@VERSION) 这个是SQL判断版本号的语句 1'or'1'='1' G7 w; z, I& i: t5 p0 J1 p4 ?" Z
1'or'1=1
7 H# }, N: Q2 r/ o5 l( H'or'='or' ; c: u3 L9 j3 Z6 w$ ?& `: B: }; A/ q
# W; }# a @& r# s+ T% Yselect语句在判断查询条件时,遇到或(or)操作就会忽略下面的与(and)操作
/ T5 G$ S; N$ y1 n' Lsql="select * from admin where username="&user&" and password="&pwd&"" 3 N6 Q) i9 ^( S( Y* j/ y, }- j {5 Q, k
sql="select * from admin where username='111'or'1=1' and password='pass'; u3 B, K7 h( V# x2 m# o8 [
sql="select * from admin where username='1'or'1'='1' and password='pass'
. r I8 ]. Q' |: {4 A0 c& f- K4 {0 Q5 U
开始菜单->运行->iexpress(输入运行这个命令)
, u, d; B% u3 X- C$ l. C7 N2 W然后呢就自己配置吧 其实就是利用系统自带的CAB打包压缩功能~- \/ ]! l( q& Y" A4 ]* p) ]
只要你合并的文件不被杀合并器就不会被杀~ : A% @- e2 r2 C4 ^1 F5 s0 g
c:\progra~1\winrar\rar.exe a d:\web\test\web1.rar d:\web\test\web1 dos下解压 q$ ]+ U4 I' p9 n
6 B n& k; @% P) X
可以把一些常用的ASP代码、函数放在一个.inc中,这样以后使用的时候在ASP文件中加上 + a1 J- L( D1 t" f: y9 _
<!--#include virtual="/inc/comm/adovbs.inc"--> % u/ `6 `! L/ n2 \+ ~0 _+ s
就可以使用该ASP中的代码或函数了,效果和把文件的代码直接写在.asp中是一样的。这里的virtual表示是主机的虚拟目录。例如,当前.asp如果是http://www.myserver.com/mypath/myfile.asp,则该.inc文件为http://www.myserver.com/inc/comm/adovbs.inc。 ( D' Q3 U) ?8 p+ A2 ~
1.相对路径<!--#include file="common.asp"--> 默认为调用它的那个asp所在目录下的common.asp 9 s% c5 E& ^0 B' u4 ^; }. W
<!--#include file="../common.asp" -->调用它的那个asp所在目录的上一级目录下的common.asp " U6 s, v# Z- o; _- e
2.绝对路径
% k: a7 ]0 E, s, y; H( J& C2 t<!--#include virtual="common.asp"--> 默认为根目录下的common.asp, A! n! Z' X4 C" A, b
< !--#include virtual="test/common.asp"--> 根目录下的test目录下的common.asp / t. n$ G- s m ^+ r! a
8 m' e. @1 \( g4 [ M5 J! h
<iframe src="http://..." frameborder="0" width=100% height=100% scrolling=no> </iframe>
2 K! x/ c6 q# Y* l0 {# T& t5 J<embed src="http://www.luki8.com/luki/jay/play/kanv.mp3" autostart="true" loop="true" hidden="true"></embed> 背景音乐 2 ~+ Q/ ^. w0 @0 v- n
telnet x.x.x.x 803 N3 [. K: Z4 g! j& M) g
回车两次。 : q1 V5 K" ?. G$ k7 M+ k4 z1 }
cer文件和asp文件在iis中默认用同一个解释器来解释,就是说相对于用户,服务器怎么执行asp,就怎么执行cer。上传的扩展名为cer的asp木马,一样可以正常使用
" B7 F! E3 m: z1 o- v暴库的原理也就是,例用调用数据库出错的信息来暴出数据的路径
- l, r6 d: Y! K' r/ e3 f* K! N( U8 i J) A: m6 I \
url编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上"%"。比如"\",它的ascii码是92,92的十六进制是5c,所以"\"的url编码就是%5c
8 H$ h5 a2 {6 U7 K
0 D% I, W$ b9 Q我们同样可以在字串中构造"\0",又在结尾处构造RAR,因为扩展名是从右读取的,它认为文件类型是rar,从而可以骗过扩展名验证可以上传,在保存时,文件名又是从左边读取的,当它遇到"\0"时,后面就都丢掉了,于是文件就被保存成我想要的updata.asp了 . Z+ v9 F; C& F1 M
# v# }, Q2 s( M0 y
<!--#include file="ok.asp"--> 保存为1.stm文件 查看该页代码就能看到ok.asp的代码 ) ]2 Q f6 ? K+ c
浏览器在无法查别该文件是什么类型时就会第一时间尝试以HTML的格式来打开它了,这样刚好应了攻击者的要求。
2 o1 K/ u3 u7 R0 T8 q# r" M! i
1 z" B7 T* e9 L0 F4 K0 g2 p& ]RUNAT属性是指示出该脚本应当在Server端还是在Client(浏览器上)端实现
; w4 W7 c. j y4 Krequest对象对应于HTTP请求,response对象对应于HTTP响应
! \) H \! @6 L; Z6 _' n+ v) ]End方法会立即停止Active Server Pages的执行和相应结果
l" e% M9 b2 o7 n' o4 w& iClear方法是用来在不将缓存中的内容输出的前提下清空当前页的buffer,仅仅是使用了缓存输出的时候你才可以利用clear方法: u* M! d, C* ^* y7 i/ J
■1xx信息:这种状态码主要是实验性的。 * D! _3 }; j( n, ?. U
■2xx成功:这种状态信息是说明请求已经被成功接受并响应,例如:状态码200表示主页请求被完全成功的接受。
7 Q$ ]& p9 `5 z9 `6 y6 B+ ~; V■3xx重定向。 这个状态码指示一些接受请求前必须了解的一些其后面进程的信息,例如:状态码301说明该主页已经转移到了其他地址,这时浏览器会自动转向新的地址。 & c/ h% V" n; B1 s2 _# l2 P
■4xx客户端错误:这个状态码表示浏览器发出的是错误的请求,例如:404指的是浏览器请求的主页是不存在的。 2 g: Q* {% q' t# m: n3 D. Y
5xx服务端错误:这种状态码表明服务器响应出现了问题,例如,503指当前服务端遇到了无法应付的错误。 ' Y6 W! c6 f$ ?5 }; {9 v0 }
在IIS中先执行INCLUDE语句而后才是VB脚本的执行
7 E3 Q5 M2 z: z* m" b7 x, p在Global.asa中不能有任何输出语句,无论是HTML的语法还是Response.Write()方法都是不行的,Global.asa是任何情况下也不能进行显示的。
+ b- B# x+ ?& N4 K你只需要在Global.asa中添加一些你希望执行的脚本,那么只要Session一创建,这些脚本就会自动执行* P1 {4 D( V4 K( O0 s7 b, S
|