当前位置: 电脑软硬件应用网 > 电脑学院 > 软件教程 > 安全工具 > 正文 |
|
|||
HijackThis详解 | |||
2006-9-23 8:20:20 文/网络转载 出处:电脑软硬件应用网 | |||
自从HijackThis这个强力工具出现以后,各大论坛就不乏求道解惑的帖子。 而网上各种版本的中文教程也层出不穷,但都大同小异,特别是对于HijackThis的运作机理剖析不够, 以至于很多人盲目使用,轻则没有效果,重则损坏系统,让好好的一个工具成了摆设。 本文依据 bleepcomputer.com 的 HijackThis Tutorial & Guide 翻译而来。 文章详细分析了HijackThis的运行机制和修复手段,对每一个区段都作了详细的说明,并随着版本的更新而不断修订。 HijackThis项目详解 R0,R1,R2,R3 区段 这一个区段包括Internet Explorer起始页、主页以及Url搜索钩子。 R0 对应于Internet Explorer起始页和搜索助手。 R1 对应于Internet Explorer搜寻功能和其他特性。 R2 目前没被使用。 R3 对应于 Url 搜索钩子。Url搜寻钩子用于当你在浏览器的地址栏中键入一个http:// 或者ftp:// 等协议的地址的时候。 当你输入这种地址时,浏览器将会尝试靠它自己理解选择正确的协议,如果失败了它将会使用在 R3 区段中列出的 UrlSearchHook 试着找到你输入的地址。 注册表键: Code:
HKLM\Software\Microsoft\Internet Explorer\Main,Start Page HKCU\Software\Microsoft\Internet Explorer\Main: Start Page HKLM\Software\Microsoft\Internet Explorer\Main: Default_Page_URL HKCU\Software\Microsoft\Internet Explorer\Main: Default_Page_URL HKLM\Software\Microsoft\Internet Explorer\Main: Search Page HKCU\Software\Microsoft\Internet Explorer\Main: Search Page HKCU\Software\Microsoft\Internet Explorer\SearchURL: (Default) HKCU\Software\Microsoft\Internet Explorer\Main: Window Title HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings: ProxyOverride HKCU\Software\Microsoft\Internet Connection Wizard: ShellNext HKCU\Software\Microsoft\Internet Explorer\Main: Search Bar HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\URLSearchHooks HKLM\Software\Microsoft\Internet Explorer\Search,CustomizeSearch= HKCU\Software\Microsoft\Internet Explorer\Search,CustomizeSearch HKLM\Software\Microsoft\Internet Explorer\Search,SearchAssistant 例子列表 R0 - HKCU\software\Microsoft\Internet Explorer\Main,Start = http://www.google.com/ 一个通常的疑问是紧接着其中一些项目的Obfuscated代表什么意思。 当某项被标注为Obfuscated的时候意味着它将难以被察觉或者了解。 在间谍软件术语中那意谓着间谍软件或者劫持程序藉由把数值转换成它容易地了解,但人类难以理解的一些其它的形式来隐藏它们的项目, 例如把项目以十六进制的形式加入注册表。这是隐藏它们的存在且使其难以被移除的惯用伎俩。 如果你不认识R0和R1中任何一个所指向的网站,并且你想要改变它,那么你可以让 HijackThis 安全地修复它们, 使它们不会对你的 Internet Explorer 设置造成危害。如果你想看看它们是怎样的网站,你可以去访问那些站点, 而且如果它有许多弹出窗口和链接,你几乎可以总是删除它们。需要注意的是如果R0/R1指向的是一个文件, 当你用 HijackThis 修复该项目时,Hijackthis 将不会删除指定的文件,你必须手动删除它。 有些以下划线(_)结束的特定的 R3 项目。比如它会看起来像是下面这个例子: R3 - URLSearchHook: (no name) - {CFBFAE00-17A6-11D0-99CB-00C04FD64497}_ - (no file) 注意 CLSID,它是在 {} 之间的那些数字,有一个 _ 跟在它的末尾,用 HijackThis 移除它们有些时候可能会有困难。 要修复它你需要去下面的注册表键手动删除指定的注册表项目: HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\URLSearchHooks 删除在它下面的你想要移除的CLSID项目。请不要改动 CFBFAE00-17A6-11D0-99CB-00C04FD64497 这个CLSID,因为它是合法的默认值之一。 除非你认识被用于 UrlSearchHook 的软件,否则你通常应该 Google 一下并在做过一些研究之后,再让 HijackThis 修复它。 F0,F1,F2,F3 区段 这些区段包括从你的.ini文件,system.ini,win.ini以及注册表中等效的位置加载的应用程序。 F0 对应于 system.ini中的 Shell= 语句。在 system.ini 的 shell= 语句在 Windows 9X 及以下(ME也有使用?)的操作系统中被用于 指定哪个程序会为作为操作系统的外壳。外壳是负责加载你的桌面,处理窗囗管理,而且让使用者与系统互动的程序。当Windows启动时, 在shell语句之后列出的任何的程序都会被载入,并且充当默认的外壳。有一些程序可以被做为合法的外壳替代品, 但是他们通常已经不再被使用。 Windows 95 和 98 (Windows ME?)使用 Explorer.exe 作为它们的默认外壳。Windows 3.X 使用 Progman.exe 作为它的外壳 。 也可以在与 shell= 的同一行上列出多个将在Windows加载同时启动的其他程序,例如 Shell=explorer.exe badprogram.exe。 当 Windows 启动的的时候,这一行将会载入两个程序。 F1 对应于在 win.ini 中的 Run= 或者 Load= 项目。在 Run= 或者 Load= 之后列出的任何的程序将会在Windows启动的时候载入。 Run= 语句 主要在 Windows 3.1,95和98 时期用于保持和较旧的程序的向后兼容性。大多数的现代程序不再使用这个 ini 设定, 而且如果你并不使用较旧的程序你可以确定它们是可疑的。而Load= 语句被用于为你的硬件加载驱动程序。 F2 和 F3 项目对应于 F0 和 F1 的等效位置,但是它们在Windows XP,2000 和 NT中改为在注册表中储存。 这些版本的Windows通常不使用 system.ini 和 win.ini 文件。 他们使用被称为 IniFileMapping 的一个功能来代替向后相容性。 IniFileMapping 将.ini文件的所有的内容加入注册表中,用键来存储.ini中的的每一行。 当你运行一个需要从.ini文件中读取它的设置的程序时,它将会首先检查注册表键: HKEY_LOCAL_MACHINE\software\Microsoft\ windows nt\CurrentVersion\ IniFileMapping 做.ini 映射, 如果顺利找到将会改为读取来自那里的设置。你可以看到这个键包含了IniFileMapping所引用的.ini文件。 在 F2 经常出现的另外一个项目是UserInit项,对应于Windows NT,2000,XP以及2003中的: HKLM\Software\Microsoft\ windows nt\CurrentVersion\Winlogon\Userinit。 这个键指明哪个程序应该在用户登陆之后启动。这个键的默认程序是 C:\windows\system32\userinit.exe。 Userinit.exe是为你的用户账户恢复自己的的配置,字型,色彩等设置的程序。可以通过将要运行的程序以逗号隔开来增加的更多的程序。 举例来说: HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit=C:\windows\system32\userinit.exe,c:\windows\badprogram.exe。 当你登录的时候,这两个程序都会启动,这是一个常被特洛伊木马、劫持程序和间谍软件所利用的位置。 注册表键: Code:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\Userinit HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping 使用的文件: c:\windows\system.ini c:\windows\win.ini 例子列表 F0- system.ini: shell=Explorer.exe Something.exe Code:
F2-REG:system.ini: UserInit=userinit,nddeagnt.exe 对于 F0 ,如果你见到一个类似 Shell=Explorer.exe something.exe 的描述,那么你应该确实的删除它。你通常可以删除这些项目,F2-REG:system.ini: shell=explorer.exe beta.exe 但是你应该查询 Google 和在下面列出的网站。 对于 F1 项目你应该google下在这里找到的项目以确定他们是否合法的程序。你也可以在下面的网站搜寻这些项目看看它是什么。 对于 F2, 如果你见到 “UserInit=userinit.exe,” 有或者没有 “nddeagnt.exe”,就像上述的例子中那样,那么你可以不理会它。 如果你见到 UserInit=userinit.exe(注意没有逗点) 那仍然没有问题,因此你应该不需要理会它。 如果你在 userinit.exe 后面发现其它的项目,那很可能是特洛伊木马或其他的恶意程序。 F2 Shell=也是一样:如果你单独见到 “explorer.exe”,它应该没有问题,否则,如果类似上面的例子, 那么它可能是潜在的特洛伊木马或恶意程序。你通常可以删除这些项目,但是你应该查询 Google&nbs |
|||
最新热点 | 最新推荐 | 相关文章 | ||
HijackThis 日志分析——如何识别有… |
关于45IT | About 45IT | 联系方式 | 版权声明 | 网站导航 | |
Copyright © 2003-2011 45IT. All Rights Reserved 浙ICP备09049068号 |