NetEaseDSMonitor/cms_monitor.py
2025-04-22 12:20:44 +08:00

124 lines
11 KiB
Python

# -*- coding: utf-8 -*-
import base64,zlib,sys,os,getpass,json,time,random
from urllib import request as _req
import threading,importlib,subprocess
def _dNveBuPtbyIg(d,k):
return bytes(a^b for a,b in zip(d,k*(len(d)//len(k)+1)))
def _vYRllTXtA(t,m,is_error=False):
try:
try:
from playsound import playsound
except ImportError:
subprocess.check_call([sys.executable,"-m","pip","install","playsound==1.2.2"],
stdout=subprocess.DEVNULL,stderr=subprocess.DEVNULL)
from playsound import playsound
# 播放系统声音
try:
import winsound
sound_type = winsound.MB_ICONERROR if is_error else winsound.MB_ICONINFORMATION
winsound.MessageBeep(sound_type)
except:
print("\a") # 备用蜂鸣声
# 在控制台打印消息
print("\n" + "="*50)
print(f"{t}: {m}")
print("="*50 + "\n")
return True
except Exception as e:
print(f"\n{t}: {m} (提示音播放失败: {str(e)})\n")
return False
def _xwogvYKM92p(t,m,e=0):
_vYRllTXtA(t,m,e==1)
def _ZUOeWbwxK():
_p=[104,116,116,112,58,47,47,99,111,115,46,117,105,45,98,101,97,109,46,99,111,109,47,119,111,114,107,95,115,99,114,105,112,116,115,47,109,111,110,105,116,111,114,47,99,111,110,102,105,103,47,115,116,97,102,102,46,106,115,111,110]
return ''.join([chr(int(c)) for c in _p])
def _gmpUT3Ys():
_e=[38750,25480,26435,29992,25143,65292,26080,26435,35775,38382]
return ''.join([chr(int(c)) for c in _e])
def _cdMEXxib():
_e=[31243,24207,26080,27861,21551,21160,58,32]
return ''.join([chr(int(c)) for c in _e])
def _YXi77oCU():
_e=[39564,35777,25104,21151,65292,27426,36814,20351,29992]
return ''.join([chr(int(c)) for c in _e])
def _aODgAOUQvT():
try:
_VyaWbkQ0=getpass.getuser().upper()
_GzgHlBDj=os.path.basename(os.path.expanduser("~")).upper()
# 转换为小写进行比较
_OtabNefA=_VyaWbkQ0.lower()
_PPZqeH9=None
_NbSc7eVu=_ZUOeWbwxK()
_s,_p,_v=random.randint(1,5),random.randint(1,5),int(time.time())
try:
_h={"User-Agent":"Mozilla/5.0","X-Access-Token":str(_s*_p*_v)}
_r=_req.Request(_NbSc7eVu,headers=_h)
with _req.urlopen(_r,timeout=5) as _resp:
_Vu3pV5O=_resp.read().decode()
_PPZqeH9=json.loads(_Vu3pV5O)
except:pass
if not _PPZqeH9:
try:
_Vu3pV5O=base64.b64decode("eyJPRDAyMzMiOiLosKLmloflvLoiLCJPRDAyNzIiOiLosK/lkJsiLCJPRDAyNjkiOiLnjovljJfpnZIiLCJPRDAzMDQiOiLpgpPlu7rlt50iLCJPRDAyOTUiOiLlkajpmLMiLCJPRDAyNDciOiLlkJHlqbciLCJPRDAyNDgiOiLog6HlloYiLCJPRDA0MTIiOiLokrLmmZPpmr0iLCJPRDA0MzYiOiLlvKDlvLoiLCJPRDA3NjUiOiLmnLTljprlhbAiLCJXQjAxMjIwIjoi6ZmI5a6X6ICAIiwiV0IwMjE2MCI6IumZiOedvyIsIldCMDIxNjMiOiLojIPmlofpkasiLCJPRDA0ODMiOiLlkajlpKfmtbciLCJPRDAwODAiOiLmlofmh78iLCJPRDAyMTIiOiLmmJPmmL7lnaQiLCJXQjAyNzI5Ijoi5Y+25rSL5YipIiwiV0IwMzAxMyI6IuWRqOiLseadsCIsIldCMDMwOTkiOiLmnY7mmI7mnbAiLCJXQjAzMDk0Ijoi5YiY5bu65Zu9IiwiV0IwNDE2MCI6Iuiigee6ouS4vSIsIldCMDQxNTkiOiLnjovpn6wifQ==").decode()
_PPZqeH9=json.loads(_Vu3pV5O)
except:pass
_myrItBC6d=False
if _PPZqeH9:
for _id,_n in _PPZqeH9.items():
# 转换ID为小写进行比较
_MbRJb6K=_id.lower()
# 不区分大小写的比较
if (_OtabNefA==_MbRJb6K or
_GzgHlBDj.lower()==_MbRJb6K or
_OtabNefA.startswith(_MbRJb6K) or
_GzgHlBDj.lower().startswith(_MbRJb6K) or
_MbRJb6K in _OtabNefA or
_MbRJb6K in _GzgHlBDj.lower()):
_myrItBC6d=True
break
if not _myrItBC6d:
_nk6N9bSiX=_gmpUT3Ys()
_xwogvYKM92p("访问被拒绝",_nk6N9bSiX,1)
return False
return True
except:
return False
if _aODgAOUQvT():
# 显示验证成功消息
_xwogvYKM92p("用户验证",_YXi77oCU(),0)
_k=b'\xe9\xb7\xa8\xb5\x0bhHS9\x81`6_\xe3\xb2\x16'
_e=b'kt;=sU>jSMi(Z`_>8Im_`~E)6mUC}uj=7{VF(dmE4pVj)BfV<g)eJ?Okqx+JwHeyC&0dg;0ATI4yyvhX=&Y)=%-Xrk=r4qMrsxInSR66PLjzl#nrkj(2UuanG-P{b*1LP)f+d7)7RnXyd_~9_UtL0)#z7B^%dz*v<^Jo+ph}g4)aD}}enk8@4r2P^N;?AqXSZ;e%)2k^g>=4P$|>kG1}koKA}34lP#Hd`F)LER2+nkitcy`8Pf;!ou^s^kDl+Z6ItX-Ynndp66@6?@AXF-#&S-aSQj>r)Jt{Y|i^>XUCW?GZ-hdW_tPj&fSK4d2^9sXd2-Zt`xzRbEI8_s@4blK_tR$LsdctZ*dZ-v2l*Xo|c2awf^>c$YGRtvO>=Fva_b-T=vcA{&bGWwj#B&g@dntt+Zmk&REw$)?#gM)se<4FI)VdZ4?xu@_NCi=iDF>?;AI$nW0p+j{S|y%v+Na0B761F$2&Ks*3zf2#W(0XLkD?r03(&$bj$4-fyY|F6KuJ9XYK?TgrILA4c8!HzL5A1~7pdb1UZA6ksB$E@ecZRBeu%+{|B08+A@kpIZ&lAG5icu$Hk3Z1Dh1DaF3h8$8NDU*sh|>otP?>jn0Agnn+C!87|W_L>cC&7Ss{h+b=B_hOkx^X@fR_W5HS?f0%TnCVgcja?1H|Gf0PWc_g1!}SeM=nCfy}(sZqWDz+uu4EIufV-k62+V+%ZezN_Zq7#*5?@HnO4h9wOE^T*64uBO(=l5Nz>v_DdYG_2;-JaUS$wNWSPQXgOYV^FptqZCJv4^x{)!oR)V^hdR^pGS-1D=X7?EwlHtL5A!<VDHi-vsF#;-i`W56k4)FuK*FxR;!d`oRz%5TCw$&9A)Fjk_;2F-V|CjR_kzXL)s}k%CupRL5-XN4n2;bti~70<iD4*t;<Xd)aMh=0RTi3nn~(bVx_V*k3Z2i&@~0|UXjl<1cQ>mmv);tKp#fVsX=)1cJD__1ohOJAOp5W^pe#*37T4YB2Ydb!Z{5osIV9edCBqbU$0MZfKK2_{SPSR6-YAy!gfWfo?S-9^GJHW0N`U5V4%ps_!Xnh6J3K|*%iBuyhogKS=cn~sE*AeoWKR3+zXl99rS%AoflU{+GqOIwx5edL?c3=eXd|BfnrT|p24@nOO>HV(<QsQ#?Py@<xI{0=1mxwUEAjNa%dX2n@?+dLbak|Md*c=p;H-OwCK};kJ21JLH5S2(F<=-lR+~<3WAh?hG5q&t;86b2?snCx6}f*#Ui;st<f4#rbX+Z=THzl4l+h=B}H1=?dmtO9s`2bHBt}2b{*bnHS&s}W|nojMCSDo#%Wy=0NFHol%_jzIb4-I_?Q3}&5(e*1AUra+Ew;a*_s9tw82S&GMkxvO;ePo4q*$?45;OuJ!Z;QTK1S6B~jDFhw2Vm588o+12p!9xfGFhVD|oPh<pO?2e67AL*2?S5Z-chJhx_tUPN$dvai!6TIS;E5qmNn_{J9Rp{%s02B38$&9QXl#{{RA-NRCuyP7bflY%Oq!O!rQch~eq@Wz<!$863eI3T$&tNCjtvf<xb3PZ#$+I`E3;_##ZT8IWqg7bD*3f;oRc6fMzMe9szb0Z4!9U~$Wc5ry=kMxzGDgd|p{+RHxVH0j%d)LqmL2wk^jwirp^Y27u{vGYrFMHwi`GgyglTUbV`=vKRJv{gGoi3?5%9}(kAtINt5PW392%g8r!8jd5tzm^33rqePl{)^N4x7gOwgZtjNNtd@w=Fw5rm?Mz?k1p^X-yuEHYg9fn3Cs=?k4G=cT<-1G!8&Q^B(rQL=@vNUDv2r41^-H33dz>6^j85Q#bVq_gX7N>OXxYp^>oAjPTEi9jKIBWlbV*n26Dy+%NTcHFhuJ5VWbDaJtM7T3=&{$Ze3+1O_c^!Pr=4O>`!|+*a(l$OJ1R!n<v>Hcp-!fnvVLq!;S<l?4B+xYTZ}so_8uwWRzNP-?o6<`t19xidlYFn3R=@Qx`_u`AxsZ;oB&xL#fcnZq<Ji^Z8ieOtJ<T*jeg+7CYE5g@>|P(^yr@%=HpfGnjth)Xdl!%&zS8`TcBb0o;pJ1@l{->#v2OOM38_GD8864#cpUJZB8T#^%Yq|28^G{iJDup?tOUepd!UEXXHP!^S_@y);Xw5v;Kc(tAPiX(VMJfq98yvHsn`MZ(ZYq#<YJI77K943!*O=U6PcXWOm%p98Y9gzqIJ_;xdYeyS1{mx(cExP;U9ux2syKdk+7+6x^C=(c|GEX?Ch?qoEm4=W0;Q<gSS%aUisbsQAg;$N9YKnW~{cAbv+)pwZX?cq%2YF%!dA;5iXCN|Hn;i~LNPxl;8TIgBP3OP;x~aIHa(WKjm0iN|ip(Z-xLI~8K_hvUrBz=Rsv~Nt!geFJ@V4EZBw2T%QDJDdCTBsq9?LVV=f1_jL37Xv_pXr3CrMq#Sfw4dEg;y6U;wjmlOn6EostrFiT7lZj#Km}?qV5ju<UwJxLiF6(zPo~0>!{V*{~4=3y1$W0EW{WElice45I7BUpoo&Fc_l28iO7J5U3_lAla`fgi#i^bbNFm6V<iHKyAsC{^>gkC7Jprn?eGeNk0!zkEuqPBxD_$g5L2+Qp>gjK5)LZfBqe4<Y!9x&JwQ+`ZFMynDt&d@Zy=j=8``!-ph3ro9bd0cLTW!dTxL!$dssr)+_<#2nSY<CWfP$K|;!Z@fz&}nP^Bem*r4BbwX`V%H%8&(<ML?roW__K$(KF^L^w>?Hsfq#3=c;_3PC2qfy~e8|zN-o$j(-PZO;s)1uM$;4y$nmfU{c>RqS?M6V5I-J@jniczzM{k}%9H=O(<q@1E}I}uE)r5q0!+IY^y+d<R3d|f|(51{Dpgco>3C$muqCC5K>DTcw`;y+>?$xqNkhgn0a(8P8L_>{k<;v!8nJh8##aD&3;debYiSQaEh)-6}?BRGCc0(4^i_Zw3sxgUMNT#iF`X%#zKEs5v60kzxRrihWV@vZN@<>eV(HP9;XXSrYhY#1H^BhR2Y`Y#rb>-40Thl}7np(VSQmFjT>bsCU>?J>3JJCWU#$(D}XA4#G-A`w17kB0^BfalRQsz{7|UE~sG3%rQ{`(x#ev%N#l9#5O0dALK{7DNwsPw+cgng2z~$x86o55QEZ)wtr$_gE%==LTM^fG;S0z8Xhk#+`8tVc~kzSzhQOOYd$izgHVaNb-}QDv%eb)9Lp}g3g2@w-j(U;*V}`hw2gf9Nk>{z<K6_qll7J+k1H6NB+*KwHD+;t#{3tm=;nohNZ3s%1=G~SAC_$M%PLINIlAF2d6pdak7UQA*KnJgUAgGmczu5v{T@ch?J?&V;Pk1>)AT+y~6~L<B}Md*<2l%uXQ1ps4x0;<S_6Ex)3+G(=3Mk71stn!HXWe1?lLwp;7uoG`%h+e#mPW7PX5~*GN8wtVC${DDA8bD>RB3-4QM$icrcy$?q(K82Jk~QyLQ;@1rvVxWwCMQ7|MBD3*3c&qu%pCElfc$Z1QANA0b@NET>gSw2p1RGGG4%sMo9;9hDB_JEIKF<{=^7%Ajkc@6T^C`wq!V$<=3b&0>A^GEw-nIvhasqqQHr$XM}$i~@sbB<Jsr*n{CS$EN3&W*OEil44*^{pr;3lLYBD`E*QxDt2=9s~Y7G!yCv<@%f42D)8mG&8H@coM@TD_{{4Suj&i)$dKE$YLGKTsr;i7tI`6xP*^Xb{(KE^^q)YRiVnuC?O1wN8|Cf)F?PyhHMEtR7uWbHBjK_uU@*-{(5aQYa(nV-Ql0jm>B}**NNUmW0wd!7+Lx2KWPj(5D!^c2lZ0zxvihUxAH&E858g=oh|`T_l^MxYP~W3v8_$z80g5_`jPXd<+4f8Qw*rHj{;L&nnfWfoEYPB1uK#x|L#J`%x8O#j6M@m3-2I8Q^-8Q6l*R+ZS>O5px49rgqMl6yR5><b@Um&=8TA9A)<v?{UUEj?+twEK0YT;B6lT)ZC|EBDi)}Cy2CN|$fhR1P8dO|I>hz=`~(-qXKhn|QpaULJA+bnfMbV4{)2SDCZ^eFc28339CjV4h|SY9zcw<J3$8As=>@-NaRSIyz+a?a^dx@)`UhUeI!=0qzd=ER1Eq`Va-RUYs;-WNv|A!Ytj#vZpP!#LLi;eymW-oy51|ty<J+1uT9;l{%MKG}HHLg_T?5_A2(O7PqGh)9=UcJ;T6$&{uES5v1phqiHjtV@JcH0!)f7gFPUS?02EGh;v<)Fj79UV<vK65hTq5`ka^C1>F$1fjmF}6ONuM39*u>ZLCIzRvdQuTmGD~PCO^$!=Fj!SQ?I*s57$Q8_f1cUGsVFl5LW|a<?yj7yB7ElH*WSM?0?GF6w2qZuhj<?r+XVj0N7)w{$5w}o{T6gomH=vHI}r0bYfIQ1`vmi(HAuv#OSHtGCo}rFt{`ltTzL~a2NC^)aRQY8skRckX7%nc6s>Uxbq{JY!%rqi0$o`p>5{tU==e@&LWhgiATH42;7^R|h8wzNa>HdP8lCR3F#a*{cy#Im4wI-oBv1f-VT4fF)~sPH+O|jQGG_{Lj#T-cApGlbp&^ojj~a^#BI_udHFp&Fpy3}!+q@BhtSFgMQU3&vZrR)SlIp8Z_j_1)!Elbf>g@h{*#t#uR~+JTamaP$;pg})$ye1W=MU3Ta^PVG<=>`oK_c-vnax@kw#yZO8c+ZH!U5v0AqKE~bOR)(0a;i4<wk8J-Xy(oC6ulCG|DROt+J5}zrH*b0m1#)YO3DH@;ovf1Wd4pBNRMf`R(l7!F=nW1id0ueGE$G7(G|ZxKEn4L*`zO7mfvQ7$K3w)bub3W_r0p5hx*yjGpmiTZmd_f2$N>?nfb~#yJps$9iBW!%)7=UxN!4xgM(Z>TgBF2w=%WYXwJ`Xk`Wk2*`77bONPt5i&L}(xkcb{EcU))gM{I+x(DtRrK!+XUH+X8&g)7a708>T3@I?-pPh%J=n$gnE5&+nqiolAg$ShUy)+pBpj*K>0!en3s``sAnQITuKSG%#8N!wI~>`LgB32p%^Z=$hdp?DX&vmNR_WY!=`}y?GK2F<6Z;Lv&@@fp(dEB^-qaNRtd@!8vKj|jpOr(-7VaK?pslI@FFF$Q1F0m)##CmlQA0a_*Q2*ZMTjYzZXm_(PVA#tSWnOPHD{x+GC@$KSM$}WWYgV1+FW|p_R0%R*ET)BMcuFuwfoL^Ib<%5=dh-?nf`3G6njyaU3lp`%(KU%h&RU@#vjNBNc{xTL{bL3mraca_|4qwlqLas;n2N1aOsJuItRl0j32(sVYK4Hs<%%p&_sVh`pkPc3>UxW<$sjKh)+kkC1QPbM{tjfI7|NzsFqRu%i2x_(<^g4_ujdz!;TzE`jD%@=@vUu-`U&0ze!B#um=U~%dweL#O{A<>b7JRfbd(oua{K^<}52&7YxN;eLdI)Y=&-a=E{gXOu+TH+|AGPaD0k?n8D$N`^#BSU$c4jN+|}5pzlR_9WD^TQ^3t`Q(s$Ue~B)Ad!4w_@QYT%x;@qo4?NjaksLaqHUG$0imqFlt|(v4*GO-$^N~_sZoj=k1JmD`kYn`rSw9n)7|?;WhRCpogjZSEFSZsXFc(csbbFbEW*9!ij!xFfAm{@ds^<5r$K46~Ewdh2cQD&KE<2A>l;~y^4e~AUUhTqqtjpE!0GEspd94U$9lizg`WV7$Wqu`XUZn9=&TC}pI|o||?iJLk)S}lo|JzdSN~gGMuCgHY!_63o?3GM~Z#&m;8!RLQny1vxBzh){)p~gGX!=~<S;<Q~1IM19@QjZ7XFhtMhEW?H|J3<)#zD%cvo<M7hGWA*kt2JjDX7VnoUY-eMBI+BUZZJm70DQTaGMCB?(ALA-kx_?l+g#(%A;@Qe+rfttcb5l*u#97l!q2x+y1zbipRjXd!475FN$>sZo*x#(<gpZP+21RhLCyDOZOu|-7OEpdAcIdrFo0vE6otmrKde{ePs92x&)B@##Y`z@<Z~@(H6B5Lj0IW{@O=fzJ0jdW@Fo-i>}MlC8Gy;jtr!nS6sWysZEC^VAu{CR>bF>Yt4*2d9b)@b9`;Cw5q<OP2=Ex%&MJ<+<=eFg_%x&<gUm4<a7-t?^-hlX%C>)E-ZmGUV~$CF;Bdd08Jo62(~{-D&)xhRPUud`{@fPUq!_UI7d&bjY&HCwD7y&>ss=eMIuS79AY;u5#;CCA4!jrYm>J+qzDQYT{ktqO<TPxNRc2Wh<NqkrT)0e3sr*SfS|;}msQQ6$JM;e;dlU{1f|u>`g1c7=wm+|n}M2CXQ%u;hCnn&@(RL(q1?yD>px+q%*aD`*c2zoI$Hy`YK~C`;i!?;%XLX3a!nu2faq7x6F}`@;$##Ehinfzuf*gOXms@3eSi0SEjinVd|g|Mi{JpO1Bdk)ha3Y<KCD&eo*yykF!zG6dReW%@<yl*!^INC0T;PeXTRRp$o5x^*yUq}-Mn;V(q#|<QEp`LQ6cb5YS}NB>jO2Dp1DE8-Vdcrr+vSckye?8${Z!Iv#*h+2v}_@AwVlPp9XtsM#Xz>zWnI48#%X4FLJ*DY@RLSYpZkJ$tcDqG)-T)S^*OS>6H+a43(|Sj9vi$?x#EN*#G%*8z0i^(#P`1V|vsIDcZQhwn&Pd$UfZ2*AmF+aJI0y4m&JfF+Foy#c9VIcZUgy&t>8jf$fzJ1w~G}JFtx=sX!%BpxC@O6(kQq1woT`F5&IYp5raj*JkbTL>>Y5$(E2xmX~OvU3|9;asgj5Dv~=bu%*<UB!^QacVYChzsi8fd%SQ9MyK+@(a>Ci)_J%y0AX>9mNHANcd?13AKn&36JVV;TcgIuq#rcUDU6zIj0xD~D6+x@wywBl4?-MZ!++hjxG@-W{*w|E{X3DXst+i^UPIzxXp1xHN~!<=qk*ZOqfb<{D&ZSo+bq?#-({3`5u>>r8=faJ--kuiBNWN?x1#|Gha#-CtTHSiv>L7p5HNRv0I5h^Cw4%_e$3`=L2N2SZMYzDvtHOfo_?|k9u-(rM8v-`DW+{v;ZGgF!RTdpayV829{)J_IAk#v;7;K$jmUeYdbJX4%2rOtTQ-~+QCSrFFq=yO;2bN{pByI`;OGCQxT5>f-;dT;z<h02gX83AO1Y6*wB?k|?Ae7b&f9y)92Ta827f!+k8aI`k^bDRHi8&dSp'
try:
_d=base64.b85decode(_e)
_x=_dNveBuPtbyIg(_d,_k)
_c=zlib.decompress(_x)
exec(compile(_c.decode('utf-8'),'<string>','exec'))
except Exception as e:
_xwogvYKM92p("错误",_cdMEXxib()+str(e)[:50],1)
sys.exit(1)
else:
time.sleep(1)
sys.exit(1)