使用Autoruns处理启动进程和恶意软件

大多数极客都有自己选择的工具来处理自动启动的进程,无论是MS Config、CCleaner,甚至是Windows 8中的任务管理器-但它们都没有Autoruns那么强大,这也是我们今天的极客学校课程。

在过去,软件会通过在开始菜单的Startup文件夹中添加一个条目,或者在注册表的Run键中添加一个值来自动启动,但随着人们和软件变得更善于找到不需要的条目并将其删除,可疑软件的制造者开始想方设法变得越来越狡猾。

这些可疑的垃圾软件公司开始研究如何通过浏览器助手对象、服务、驱动程序、计划任务,甚至通过一些非常先进的技术,如图像劫持和appinit_dll,自动加载他们的软件。

手动检查这些情况不仅耗时,而且对于普通人来说几乎是不可能的。

这就是Autoruns发挥作用并拯救世界的地方。当然,您可以使用Process Explorer查看进程列表并深入研究线程和句柄,而Process Monitor可以准确地找出哪个进程正在打开哪些注册表项,并向您显示令人难以置信的大量信息。但是,当您下次启动PC时,这两种软件都不会阻止再次加载垃圾软件或恶意软件。

Autoruns允许您查看几乎所有自动加载到您计算机上的内容,并且只需单击复选框即可将其禁用。它非常容易使用,而且几乎不言而喻,除了一些你需要知道的非常复杂的事情,才能理解一些标签的实际含义。这就是本课要教给我们的。

使用Autoruns界面

您可以从Sysinterals网站获取Autoruns工具,就像其他所有工具一样,无需安装即可运行它。在继续操作之前,您需要这样做。

注意:Autoruns不需要以管理员身份运行,但实际上这样做是最有意义的,因为有一些功能在其他情况下不会运行得很好,而且您的恶意软件很有可能也是以管理员身份运行的。

当您第一次启动该界面时,您将看到大量的标签和计算机上正在自动启动的内容列表。默认的Everything选项卡显示每个选项卡中的所有内容,但它可能有点混乱和冗长,所以我们建议您只单独查看每个选项卡。

值得注意的是,默认情况下,Autoruns会隐藏Windows内置的所有内容,并将其设置为自动启动。您可以在选项中启用这些项目的显示,但我们不建议这样做。

正在禁用项目

要禁用列表中的任何项目,只需删除该复选框即可。这就是您要做的全部工作,只需浏览列表并删除所有不需要的内容,重新启动计算机,然后再次运行以确保一切正常。

注意:一些恶意软件会不断监视它们触发自动启动的位置,并会立即将值放回原处。您可以使用F5键重新扫描,并查看禁用后是否有任何条目返回。如果其中一个再次出现,您应该使用Process Explorer挂起或杀死该恶意软件,然后在此处禁用它。

颜色

与大多数Sysinterals工具一样,列表中的项目可以是不同的颜色,它们的含义如下:

粉色-这意味着没有找到发布者信息,或者如果启用了代码验证,则意味着数字签名不存在或不匹配,或者没有发布者信息。 绿色-在与以前的Autoruns数据集进行比较时使用此颜色,以指示上次不在那里的项目。 黄色-启动条目在那里,但它指向的文件或作业不再存在。

同样,就像大多数Sysinterals工具一样,您可以右键单击任何条目并执行一系列操作,包括跳转到条目或图像(资源管理器中的实际文件)。您可以在线搜索流程的名称或列中的数据,查看详细的属性,或者通过在Process Explorer中执行快速搜索来查看该条目是否正在运行-尽管许多流程都有一个加载程序,然后在退出之前启动其他内容,因此,仅仅因为该功能没有显示任何结果并不意味着什么。

如果您单击了“跳转到条目”,您将被直接带到注册表编辑器,在那里您可以看到该特定的注册表项并四处查看。如果条目是其他条目,您可能会转到其他实用程序,如任务调度器。事实是,大多数时候,Autoruns会在界面上显示所有相同的信息,所以除非你想了解更多信息,否则通常不需要费心。

用户菜单允许您分析不同的用户帐户,如果您在同一台计算机上的不同帐户上加载了Autoruns,这会非常有用。值得注意的是,您显然需要以管理员身份运行才能查看PC上的其他用户帐户。

验证代码签名

Filter Options菜单项将您带到一个选项面板,您可以在其中选择一个非常有用的选项:验证代码签名。这将进行检查,以确保每个数字签名都经过分析和验证,并在窗口中直接显示结果。您会注意到下面屏幕截图中所有粉红色的项目都没有经过验证,或者出版商信息不存在。

另外,您可能会注意到下面的屏幕截图与开头的截图几乎相同,只是列表中的一些项目没有标记为粉色。不同之处在于,默认情况下,如果没有打开“验证码签名”选项,如果不存在发布者信息,Autoruns只会用粉红色的行向您发出警告。

分析脱机系统(如将硬盘连接到另一台PC)

想象一下,你朋友的计算机完全乱七八糟,要么无法启动,要么启动太慢,以至于你不能真正使用它。您已经尝试了安全模式和恢复选项(如系统还原),但这无关紧要,因为它不可用。

与其拔出“重新安装”卡(通常只是“我放弃”卡),你可以拔出硬盘,用你方便的USB硬盘插座将其连接到你的PC或笔记本电脑上。你确实有一个,对吗?然后,您只需加载Autoruns并转到“文件”->“分析脱机系统”。

浏览以查找另一个硬盘上的Windows目录以及您尝试诊断的用户的用户配置文件,然后单击确定开始。

当然,您需要驱动器的写入权限,因为您需要保存设置以删除最终发现的任何垃圾信息。

与另一台PC(或以前的全新安装)进行比较

File->Compare(文件->比较)选项看似不起眼,但它可能是分析PC、查看自上次扫描以来添加的内容或与已知的干净PC进行比较的最强大的方法之一。

要使用此功能,只需在您尝试检查的PC上加载Autoruns,或使用我们前面描述的脱机模式,然后转到文件->比较。自比较的文件版本以来添加的所有内容都将显示为亮绿色。就这么简单。要保存新版本,您可以使用File->Save选项。

如果你真的想成为一名专业人士,你可以从新安装的Windows中保存一个干净的配置,并将其放在闪存驱动器中随身携带。每次您第一次触摸PC时都保存一个新版本,以确保您可以快速识别所有者添加的所有新垃圾软件。

查看选项卡

正如你到目前为止已经看到的,Autoruns是一个非常简单但功能强大的实用程序,几乎任何人都可以使用它。我是说,你要做的就是取消勾选,对吗?不过,了解有关所有这些选项卡含义的更多信息是很有用的,因此我们将在这里尝试教育您。

注册 / 进入系统 / 同 login

该选项卡检查Windows中所有要自动加载的“正常”位置,包括注册表的Run和RunOnce键、开始菜单…。还有很多其他地方。事实证明,软件可以插入43个不同的“正常”位置,以便在登录或注销时自动启动。难怪Windows中会有如此巨大的恶意软件、垃圾软件和间谍软件问题!

我们的建议:自由地取消勾选所有你不需要的东西。如果需要,您可以随时重新启用它。

探险者

此选项卡列出可以将自身加载到Windows资源管理器中的所有加载项组件。因为在我们的测试系统上没有任何要说明的,所以我们不会向您展示屏幕截图,但是这些将主要是上下文菜单附加组件和其他类似的东西。

如果您在浏览文件、使用上下文菜单或仅在Windows周围时遇到性能低下的情况,这可能是罪魁祸首。您可以在这里禁用您想要的任何功能,尽管您可能会失去某些应用程序的某些功能。

Internet Explorer

当在别人的计算机上工作时,此选项卡非常有用,因为他们使用Internet Explorer的可能性比我们的读者大得多。此选项卡列出恶意软件通常用来监视您或向您显示广告的所有浏览器扩展、工具栏和浏览器辅助对象。我们建议取消勾选您看到的几乎每一件东西。

排定任务

这是目前恶意软件隐藏自身最狡猾的方式之一。恶意软件不是隐藏在人们知道要查找的任何地方,而是创建一个计划任务来重新安装自己、显示广告或做各种邪恶的事情。任务调度器的混乱程度使问题变得更加复杂,因此大多数人甚至都不知道要在这里查看。谢天谢地,Autoruns让这件事变得容易了。

我们建议您删除几乎所有您不认识并且肯定不是来自Microsoft的内容。这是使用“验证码签名”选项非常有用的一个示例。

服务

在任务之后,如今恶意软件隐藏自身的最常见和最隐蔽的地方之一是通过在Windows中注册服务,或者在某些情况下,通过创建帮助确保其他恶意软件进程仍在运行的服务。

在禁用此选项卡上的内容时,您需要更加小心一些,因为某些内容可能是合法和必要的。在下面的屏幕截图中,您将看到一些Google、Microsoft和Mozilla服务都很不错。虽然我们禁用它们没有什么大不了的,但在禁用之前做一些额外的研究仍然是值得的,除非您已经将其识别为垃圾软件或恶意软件。

司机

信不信由你,但一些垃圾软件和恶意软件制造商实际上已经创建了包含恶意软件或非常粗略的组件来监视您的设备驱动程序。在我们的测试机被一堆垃圾软件感染后,我们注意到这个驱动程序出现在其中一个上。我们仍然不太确定它的用途,但考虑到它是如何到达那里的,它可能不是什么好东西。

你肯定会想要在这个屏幕上更加小心。禁用错误的驱动程序可能会损坏您的计算机,所以请进行研究,右键单击每个驱动程序并在线搜索,只有在最有可能与间谍软件相关的情况下才禁用该驱动程序。在下面的示例中,我们已经将突出显示行的Image path中的文件夹标识为crapware,因此禁用它是合乎逻辑的。

编解码器

这些代码库用于处理视频或音频的媒体回放,不幸的是,它们已被恶意软件滥用,将其作为在计算机上自动启动的一种方式。如有必要,您可以在此处禁用它们。

引导执行

您可能不必处理这个问题,但它用于在系统启动期间启动的事情,比如您计划在启动时进行硬盘检查,因为它不能在Windows实际加载时发生。

图像劫持

如果您阅读了有关Process Explorer的第二课,您将了解到可以用Process Explorer替换任务管理器,但您可能不知道这实际上是如何发生的,更不用说恶意软件可以并且确实使用相同的技术来劫持您计算机上的应用程序。

您还可以在注册表中设置一些控制如何加载内容的设置,包括劫持所有可执行文件并通过另一个进程运行它们,甚至为任何可执行文件分配一个“调试器”--即使该应用程序不是调试器。

实际上,您可以在注册表中赋值,以便在您尝试加载notepad.exe时,它将改为加载calc.exe。或者任何应用程序都可以被换出并替换为另一个应用程序。这是恶意软件阻止您加载MalwareBytes或其他反恶意软件工具的方式之一。

您可以亲自查看它-左侧是可执行文件的名称,右侧的“Debugger”键设置为在我的桌面上运行的process Explorer实例。但是你可以在任何一边把它改成你想要的任何东西,它都会起作用。这可能会是一个很棒的恶作剧,几乎没有人能猜到。

如果在Image Hijacks(图像劫持)选项卡中看到Process Explorer的值以外的任何内容,则应立即禁用它们。

AppInit

还有一个例子说明了为什么Windows有如此多的垃圾软件和间谍软件,注册表中的AppInit_dlls条目令人惊讶。在某种程度上,微软在Windows中编写了一项功能,可以加载特定注册表项…中列出的所有dll文件。进入到每一个启动的过程中。

从技术上讲,每当应用程序加载Windows user32.dll库时,它都会检查注册表项的值,然后将列表中找到的任何DLL加载到进程中,从而允许每个应用程序都被恶意软件劫持。

在Windows Vista和更高版本中,他们最终决定通过要求DLL使用数字签名的…来限制这一点。除非将*RequireSignedAppInit_DLLS项设置为0,否则Windows无论如何仍会加载它们。正如您可以想象的那样,正如您在下面的示例中看到的那样,恶意软件已经利用了这一点。

还记得在第3课中,我们向您展示了管道是如何劫持其DLL文件并将其插入到浏览器进程中的吗?这就是它是如何做到的。您可以在上面的屏幕截图中看到spvc64loader.dll,然后使用它将SPVC64.dll文件加载到浏览器中。

邪恶。

KnownDLL

此注册表项确保Windows使用特定版本的DLL文件。在大多数情况下,除非恶意软件扰乱了该列表,否则您不需要担心-使用此选项卡的主要目标只是确保列出的所有内容都是经过验证的Windows组件,这非常简单。

Winlogon、Winsock提供商、打印监视器、LSA提供商、网络提供商

您通常不必担心这些选项卡,因为它们只是包含扩展Windows各个方面的加载项-Winlogon和LSA连接到登录和身份验证系统,Winsock和Network Handle Networking,以及打印监视器是处理打印机的第三方应用程序。

如果您在这些选项卡中确实有值,那么在禁用它们之前,有必要对其进行调查。恶意软件当然有可能劫持这些东西。

侧栏小工具

如果你在Vista或Windows7中有任何侧栏小工具,你会在这里看到它们,如果你愿意,你可以禁用它们。

下一课

Autoruns到此为止,明天我们会教你关于Bginfo和在桌面上显示系统信息的知识,敬请关注。

相关文章