|
来源:http://www.hackblog.com/more.asp?name=lsaint
+ _# b+ W1 X1 q4 h- m9 `3 p 现在大部分html页面是动态页面放入了html模版而形成的静态页面,我们的攻击思路也就明确了,就是从这些静态页面里找出动态页面的地址,在找出注入点,我们需要的工具是sniffer。 ) F" r8 J2 _& C% `. x4 F6 _8 J
% w4 n" i; g4 P6 U
访问这个 IP ,返回"No web site is configured at this address.",初步判断是虚拟主机 0 |7 A2 o8 |3 ]% h% V
先通过 aspshell 下载 Serv-U 的任意一个快捷方式,然后本地查看属性的目标 Serv-U 的目录是 "C:\Program Filesewfq4qrqtgy4635\Serv-U\" , 直接跳转目录。 看到了,马上修改 ServUDaemon.ini文件 % d' f- z& f3 x$ L3 D' ]
* @ C7 a- Y9 W# C4 g- d
view-source:查看web代码
4 s- J- m& F2 ?& [$ p, T: ?总之只要是带有参数的动态网页且此网页访问了数据库,那么就有可能存在SQL注入 - S, m: y, Q: b( x3 z
and 1=(select @@VERSION) 这个是SQL判断版本号的语句 1'or'1'='1
: A% V! ]2 x7 h, J- R# u1'or'1=1, ?/ X* _- y* g1 G7 G9 G( d( X' _/ |
'or'='or'
0 r1 U' i2 ~1 J f
8 Q+ P1 s8 U: Q6 ?- A- }* ]+ S' |select语句在判断查询条件时,遇到或(or)操作就会忽略下面的与(and)操作 2 F7 x5 S: g3 l, p. E
sql="select * from admin where username="&user&" and password="&pwd&"" " q6 k5 P2 ]# Z3 w
sql="select * from admin where username='111'or'1=1' and password='pass'
T0 I8 H" v3 u& E# lsql="select * from admin where username='1'or'1'='1' and password='pass' 6 v/ S. V: q s2 X- W$ }% i
: k+ U' F+ Z' B' ~2 o2 s
开始菜单->运行->iexpress(输入运行这个命令)9 | B/ L; q- R# X
然后呢就自己配置吧 其实就是利用系统自带的CAB打包压缩功能~
9 E* h- i9 [5 H) H a6 q只要你合并的文件不被杀合并器就不会被杀~ * [7 z/ ~: ?4 x4 h+ {& ^* i
c:\progra~1\winrar\rar.exe a d:\web\test\web1.rar d:\web\test\web1 dos下解压 / Z7 |( F$ u0 T( R
: p. H. i8 [) }# [. _
可以把一些常用的ASP代码、函数放在一个.inc中,这样以后使用的时候在ASP文件中加上
# _6 I5 y! ^2 E8 Y <!--#include virtual="/inc/comm/adovbs.inc"--> * R' O! @8 u) i, C5 i# d. U# y
就可以使用该ASP中的代码或函数了,效果和把文件的代码直接写在.asp中是一样的。这里的virtual表示是主机的虚拟目录。例如,当前.asp如果是http://www.myserver.com/mypath/myfile.asp,则该.inc文件为http://www.myserver.com/inc/comm/adovbs.inc。
; B: Y9 Y% ?- \9 i; g* p; }1.相对路径<!--#include file="common.asp"--> 默认为调用它的那个asp所在目录下的common.asp
6 O4 J9 t5 d! ^( ^7 v- V<!--#include file="../common.asp" -->调用它的那个asp所在目录的上一级目录下的common.asp
0 K8 C( s1 s) U0 i( o6 Z1 {2.绝对路径 ! h7 d! m" Z+ g" |! T3 {
<!--#include virtual="common.asp"--> 默认为根目录下的common.asp
4 G% x* T# D4 ~3 y< !--#include virtual="test/common.asp"--> 根目录下的test目录下的common.asp ' t; m# V$ C: Y
_) `* d! z% o9 A5 G4 G
<iframe src="http://..." frameborder="0" width=100% height=100% scrolling=no> </iframe>
1 \; o8 B' _9 B( f l9 J<embed src="http://www.luki8.com/luki/jay/play/kanv.mp3" autostart="true" loop="true" hidden="true"></embed> 背景音乐
) P. U4 r7 E" A+ P7 ?3 E8 v, v5 ftelnet x.x.x.x 80) `+ F- c; W0 l5 C, w8 I; Z
回车两次。 % U5 }0 t8 D( u9 g7 A0 m
cer文件和asp文件在iis中默认用同一个解释器来解释,就是说相对于用户,服务器怎么执行asp,就怎么执行cer。上传的扩展名为cer的asp木马,一样可以正常使用 ! G6 n( U2 T3 D4 O! l( u6 j* Z
暴库的原理也就是,例用调用数据库出错的信息来暴出数据的路径
2 G }% k2 A3 R4 y# @. I
' B, E `0 G( T; furl编码就是一个字符ascii码的十六进制。不过稍微有些变动,需要在前面加上"%"。比如"\",它的ascii码是92,92的十六进制是5c,所以"\"的url编码就是%5c - n# r, ^) u& x2 ?0 g8 D0 t9 f' h" F
6 Z2 D6 c* \7 L我们同样可以在字串中构造"\0",又在结尾处构造RAR,因为扩展名是从右读取的,它认为文件类型是rar,从而可以骗过扩展名验证可以上传,在保存时,文件名又是从左边读取的,当它遇到"\0"时,后面就都丢掉了,于是文件就被保存成我想要的updata.asp了 . r0 z3 P) l; ?6 Y% }) ~7 b
% X4 p) }# Y# S2 w% _( k- F ~. X
<!--#include file="ok.asp"--> 保存为1.stm文件 查看该页代码就能看到ok.asp的代码
1 C8 j; y3 q2 b, X浏览器在无法查别该文件是什么类型时就会第一时间尝试以HTML的格式来打开它了,这样刚好应了攻击者的要求。 3 k: s4 w7 Z! F6 A0 d
% p" r* g% b, |7 K: R- V/ z2 d9 i( S* p
RUNAT属性是指示出该脚本应当在Server端还是在Client(浏览器上)端实现
& D7 I5 T$ |( o# K3 i9 xrequest对象对应于HTTP请求,response对象对应于HTTP响应 q3 ~- r J; [! q7 R" {: E7 z
End方法会立即停止Active Server Pages的执行和相应结果4 w% [: b, w3 e0 N. z. [7 a
Clear方法是用来在不将缓存中的内容输出的前提下清空当前页的buffer,仅仅是使用了缓存输出的时候你才可以利用clear方法
( {1 E& p) B. r2 T2 t. Z■1xx信息:这种状态码主要是实验性的。 4 h6 O9 }; } z9 N
■2xx成功:这种状态信息是说明请求已经被成功接受并响应,例如:状态码200表示主页请求被完全成功的接受。 ! Y0 K5 H1 W% K( W# A }7 m
■3xx重定向。 这个状态码指示一些接受请求前必须了解的一些其后面进程的信息,例如:状态码301说明该主页已经转移到了其他地址,这时浏览器会自动转向新的地址。 + R4 R; j2 o; X) a# w, G5 T# ^
■4xx客户端错误:这个状态码表示浏览器发出的是错误的请求,例如:404指的是浏览器请求的主页是不存在的。
: p9 ~- g5 d$ t/ \3 ?- O+ i5xx服务端错误:这种状态码表明服务器响应出现了问题,例如,503指当前服务端遇到了无法应付的错误。
8 @2 H' ?9 C5 l+ A在IIS中先执行INCLUDE语句而后才是VB脚本的执行
1 k' k" y& w. |" _0 ]( k( T: ~7 Z在Global.asa中不能有任何输出语句,无论是HTML的语法还是Response.Write()方法都是不行的,Global.asa是任何情况下也不能进行显示的。
. h$ q3 W2 T& h5 O+ R+ g: R你只需要在Global.asa中添加一些你希望执行的脚本,那么只要Session一创建,这些脚本就会自动执行: F4 _( [9 Z) k" L
|