谨防管家卫士含rootkit隐身杀手
2016/8/28 18:06:18
关键词:WIN 电脑安全 系统 免费杀毒软件
2016/8/28 18:06:18
关键词:WIN 电脑安全 系统 免费杀毒软件
rootkit好多人有一个误解,他们认为rootkit是用作获得系统root访问权限的工具。实际上,rootkit是攻击者用来隐藏自己的踪迹和保留root访问权限的工具。通常,攻击者通过远程攻击获得root访问权限,或者首先密码猜测或者密码强制破译的方式获得系统的访问权限。进入系统后,如果他还没有获得root权限,再通过某些安全漏洞获得系统的root权限。接着,攻击者会在侵入的主机中安装rootkit,然后他将经常通过rootkit的后门检查系统是否有其他的用户登录,如果只有自己,攻击者就开始着手清理日志中的有关信息。通过rootkit的嗅探器获得其它系统的用户和密码之后,攻击者就会利用这些信息侵入其它的系统。
rootkit介绍Rootkit是一种特别的程序,它具有隐身功能:无论静止时(作为文件存在),还是活动时,(作为进程存在),都不会被察觉。换句话说,这种程序可能一直存在于我们的计算机中,但我们却浑然不知,这一功能正是许多人梦寐以求的——不论是计算机黑客,还是计算机取证人员。黑客可以在入侵后置入Rootkit,秘密地窥探敏感信息,或等待时机,伺机而动;取证人员也可以利用Rootkit实时监控嫌疑人员的不法行为,它不仅能搜集证据,还有利于及时采取行动。!
因为在应用程序和硬件之间隔着操作系统,所以应用程序不能直接访问硬件,而是通过调用操作系统提供的接口来使用硬件。也就是说,对应用程序而言,硬件是不可见的。当然,凡事是没有绝对的,应用程序绕过操作系统来直接访问硬件也不是不可能的,但这样做会付出高昂的代价。设想一个软件开发商在开发一款功能丰富的软件,功能本身就够他头痛得了,现在他还得操心某个数据在某个磁道的某个簇上,某个字符在某品牌显示器上的颜色的二进制代码等等繁琐的事情,不用说财力和物力,单说开发周期就是无法容忍的。所以,现在的应用程序都是使用操作系统提供的简单明了的服务来访问系统的,因为毕竟没有谁愿意自讨苦吃。这就为隐身程序提供了舞台,它可以避开操作系统而存在于硬件,比如硬盘或内存上。
进程管理。进程可以简单理解为运行中的程序,它需要占用内存、CPU时间等系统资源。内存上的某些数据结构是内核感知进程存在的依据。因此,只要修改这些数据结构,就能达到隐藏进程的目的。
文件访问。内核中的驱动程序把设备的扇区结构抽象成为更加易用的文件,并提供一个一致的接口供上层程序调用。通过修改内核的这部分驱动程序代码,攻击者能够隐藏文件和目录。
安全控制。对大部分操作系统来说,因为系统中同时存在多个进程,为了避免各进程之间发生冲突,内核必须对各进程实施有效的隔离措施。比如,在MS-Windows系统中,每个进程都被强制规定了具体的权限和单独的内存范围。因此,对攻击者而言,只要对内核中负责安全事务的代码稍事修改,整个安全机制就会全线崩溃。
内存管理。现在的硬件平台(比如英特尔的奔腾系列处理器)的内存管理机制已经复杂到可以将一个内存地址转换成多个物理地址的地步。举例来说,进程A按照地址 0x0030030读取内存,它得到值的是“飞机”;然而,进程B也是按照同样的地址0x0030030来读取内存,但它取得的值却是“大炮”。像上面这样,同一个地址指向截然不同的两个物理内存位置,并且每个位置存放不同的数据,Rootkit为此可以躲避追踪。
上面介绍了内核的主要功能,以及它们对 Rootkit的重大意义。说到这里,我们就要切入正题了,即:只要我们颠覆(即修改)了操作系统的核心服务(即内核),那么整个系统包括各种应用就完全处于我们的掌控之下了。要想颠覆内核,前提条件是能把我们的代码导入内核。
其中针对SunOS和Linux两种操作系统的rootkit最为臭名昭著(树大招风)。所有的rootkit基本上都是由几个独立的程序组成的,一个典型rootkit包括:
1 以太网嗅探器程程序,用于获得网络上传输的用户名和密码等信息。
2 特洛伊木马程序,例如:inetd或者login,为攻击者提供后门。
3 隐藏攻击者的目录和进程的程序,例如:ps、netstat、rshd和ls等。
4 可能还包括一些日志清理工具,例如:zap、zap2或者z2,攻击者使用这些清理工具删除wtmp、utmp和lastlog等日志文件中有关自己行踪的条目。
一些复杂的rootkit还可以向攻击者提供telnet、shell和finger等服务。
攻击者还可以使用rootkit中的相关程序替代系统原来的ps、ls、netstat和df等程序,使系统管理员无法通过这些工具发现自己的踪迹。接着清理日志,消除自己的踪迹。然后,攻击者通过安装的后门入侵。如果攻击者能够正确地安装rootkit并合理地清理了日志文件,系统管理员就会很难察觉系统已经被侵入,直到某一天其它系统的管理员和他联系或者嗅探器的日志把磁盘全部填满,他才会察觉已经大祸临头了。
Rootkit 是一种特殊类型的 malware(恶意软件)。Rootkit 之所以特殊是因为您不知道它们在做什么事情。Rootkit 基本上是无法检测到的,而且几乎不可能删除它们。 Rootkit 本身不会像病毒或蠕虫那样影响计算机的运行。攻击者可以找出目标系统上的现有漏洞。漏洞可能包括:开放的网络端口、未打补丁的系统或者具有脆弱的管理员密码的系统。在获得存在漏洞的系统的访问权限之后,攻击者便可手动安装一个 Rootkit。这种类型的偷偷摸摸的攻击通常不会触发自动执行的网络安全控制功能,例如入侵检测系统。
找出 Rootkit 十分困难。有一些软件包可以检测 Rootkit。这些软件包可划分为以下两类:基于签名的检查程序和基于行为的检查程序。基于签名(特征码)的检查程序,例如大多数病毒扫描程序,会检查二进制文件是否为已知的 Rootkit。基于行为的检查程序试图通过查找一些代表 Rootkit 主要行为的隐藏元素来找出 Rootkit。一个流行的基于行为的 Rootkit 检查程序是 Rootkit Revealer.
在发现系统中存在 Rootkit 之后,能够采取的补救措施也较为有限。由于 Rootkit 可以将自身隐藏起来,所以您可能无法知道它们已经在系统中存在了多长的时间。而且您也不知道 Rootkit 已经对哪些信息造成了损害。对于找出的 Rootkit,最好的应对方法便是擦除并重新安装系统。虽然这种手段很严厉,但是这是得到证明的唯一可以彻底删除 Rootkit 的方法。
目前,用网络“超级巡警”可以查杀某些Rootkit。
令人惊讶的是,一些管家卫士类软件在它的安装目录上有Rootkit存在的证据。国内不少电脑公司,如早先的万象网管、3721均通过安装Rootkit或其他后门实现对用户电脑的全监控,强制广告或长远商业目的。目前国内流行的使用ROOTKIT技术的后门主要有:NTROOTKIT、新版本灰鸽子、PcShare等等,超级巡警是国内首个提供自动化的ROOTKIT检测和清除的工具,在第一次启动的时候会强制检测系统中的使用ROOTKIT技术的木马,您也可以随时通过鼠标右键菜单进行ROOTKIT检测。
[1] [2] [3]
相关文章(向右看)..
rootkit介绍Rootkit是一种特别的程序,它具有隐身功能:无论静止时(作为文件存在),还是活动时,(作为进程存在),都不会被察觉。换句话说,这种程序可能一直存在于我们的计算机中,但我们却浑然不知,这一功能正是许多人梦寐以求的——不论是计算机黑客,还是计算机取证人员。黑客可以在入侵后置入Rootkit,秘密地窥探敏感信息,或等待时机,伺机而动;取证人员也可以利用Rootkit实时监控嫌疑人员的不法行为,它不仅能搜集证据,还有利于及时采取行动。!
因为在应用程序和硬件之间隔着操作系统,所以应用程序不能直接访问硬件,而是通过调用操作系统提供的接口来使用硬件。也就是说,对应用程序而言,硬件是不可见的。当然,凡事是没有绝对的,应用程序绕过操作系统来直接访问硬件也不是不可能的,但这样做会付出高昂的代价。设想一个软件开发商在开发一款功能丰富的软件,功能本身就够他头痛得了,现在他还得操心某个数据在某个磁道的某个簇上,某个字符在某品牌显示器上的颜色的二进制代码等等繁琐的事情,不用说财力和物力,单说开发周期就是无法容忍的。所以,现在的应用程序都是使用操作系统提供的简单明了的服务来访问系统的,因为毕竟没有谁愿意自讨苦吃。这就为隐身程序提供了舞台,它可以避开操作系统而存在于硬件,比如硬盘或内存上。
进程管理。进程可以简单理解为运行中的程序,它需要占用内存、CPU时间等系统资源。内存上的某些数据结构是内核感知进程存在的依据。因此,只要修改这些数据结构,就能达到隐藏进程的目的。
文件访问。内核中的驱动程序把设备的扇区结构抽象成为更加易用的文件,并提供一个一致的接口供上层程序调用。通过修改内核的这部分驱动程序代码,攻击者能够隐藏文件和目录。
安全控制。对大部分操作系统来说,因为系统中同时存在多个进程,为了避免各进程之间发生冲突,内核必须对各进程实施有效的隔离措施。比如,在MS-Windows系统中,每个进程都被强制规定了具体的权限和单独的内存范围。因此,对攻击者而言,只要对内核中负责安全事务的代码稍事修改,整个安全机制就会全线崩溃。
内存管理。现在的硬件平台(比如英特尔的奔腾系列处理器)的内存管理机制已经复杂到可以将一个内存地址转换成多个物理地址的地步。举例来说,进程A按照地址 0x0030030读取内存,它得到值的是“飞机”;然而,进程B也是按照同样的地址0x0030030来读取内存,但它取得的值却是“大炮”。像上面这样,同一个地址指向截然不同的两个物理内存位置,并且每个位置存放不同的数据,Rootkit为此可以躲避追踪。
上面介绍了内核的主要功能,以及它们对 Rootkit的重大意义。说到这里,我们就要切入正题了,即:只要我们颠覆(即修改)了操作系统的核心服务(即内核),那么整个系统包括各种应用就完全处于我们的掌控之下了。要想颠覆内核,前提条件是能把我们的代码导入内核。
其中针对SunOS和Linux两种操作系统的rootkit最为臭名昭著(树大招风)。所有的rootkit基本上都是由几个独立的程序组成的,一个典型rootkit包括:
1 以太网嗅探器程程序,用于获得网络上传输的用户名和密码等信息。
2 特洛伊木马程序,例如:inetd或者login,为攻击者提供后门。
3 隐藏攻击者的目录和进程的程序,例如:ps、netstat、rshd和ls等。
4 可能还包括一些日志清理工具,例如:zap、zap2或者z2,攻击者使用这些清理工具删除wtmp、utmp和lastlog等日志文件中有关自己行踪的条目。
一些复杂的rootkit还可以向攻击者提供telnet、shell和finger等服务。
攻击者还可以使用rootkit中的相关程序替代系统原来的ps、ls、netstat和df等程序,使系统管理员无法通过这些工具发现自己的踪迹。接着清理日志,消除自己的踪迹。然后,攻击者通过安装的后门入侵。如果攻击者能够正确地安装rootkit并合理地清理了日志文件,系统管理员就会很难察觉系统已经被侵入,直到某一天其它系统的管理员和他联系或者嗅探器的日志把磁盘全部填满,他才会察觉已经大祸临头了。
Rootkit 是一种特殊类型的 malware(恶意软件)。Rootkit 之所以特殊是因为您不知道它们在做什么事情。Rootkit 基本上是无法检测到的,而且几乎不可能删除它们。 Rootkit 本身不会像病毒或蠕虫那样影响计算机的运行。攻击者可以找出目标系统上的现有漏洞。漏洞可能包括:开放的网络端口、未打补丁的系统或者具有脆弱的管理员密码的系统。在获得存在漏洞的系统的访问权限之后,攻击者便可手动安装一个 Rootkit。这种类型的偷偷摸摸的攻击通常不会触发自动执行的网络安全控制功能,例如入侵检测系统。
找出 Rootkit 十分困难。有一些软件包可以检测 Rootkit。这些软件包可划分为以下两类:基于签名的检查程序和基于行为的检查程序。基于签名(特征码)的检查程序,例如大多数病毒扫描程序,会检查二进制文件是否为已知的 Rootkit。基于行为的检查程序试图通过查找一些代表 Rootkit 主要行为的隐藏元素来找出 Rootkit。一个流行的基于行为的 Rootkit 检查程序是 Rootkit Revealer.
在发现系统中存在 Rootkit 之后,能够采取的补救措施也较为有限。由于 Rootkit 可以将自身隐藏起来,所以您可能无法知道它们已经在系统中存在了多长的时间。而且您也不知道 Rootkit 已经对哪些信息造成了损害。对于找出的 Rootkit,最好的应对方法便是擦除并重新安装系统。虽然这种手段很严厉,但是这是得到证明的唯一可以彻底删除 Rootkit 的方法。
目前,用网络“超级巡警”可以查杀某些Rootkit。
令人惊讶的是,一些管家卫士类软件在它的安装目录上有Rootkit存在的证据。国内不少电脑公司,如早先的万象网管、3721均通过安装Rootkit或其他后门实现对用户电脑的全监控,强制广告或长远商业目的。目前国内流行的使用ROOTKIT技术的后门主要有:NTROOTKIT、新版本灰鸽子、PcShare等等,超级巡警是国内首个提供自动化的ROOTKIT检测和清除的工具,在第一次启动的时候会强制检测系统中的使用ROOTKIT技术的木马,您也可以随时通过鼠标右键菜单进行ROOTKIT检测。
相关文章(向右看)..