Linux内核入侵检测安全增强实现(上)(转)[@more@] 在计算机制造业中,只要涉及到计算机安全性要求非常重要高的地方,总要提起入侵检测和如何处理黑客的入侵。在这个方面的主要讨论焦点是:在入侵者进行完成入侵后发现并记录入侵,还不如在他们入侵之前就发现并阻止他们对系统的入侵。我们可以检测系统每一个进程,这样我们就可以在入侵者实行入侵攻击的时候实现入侵的防御,因为这样就可以即时阻止恶意的系统命令的执行。实际上,最严重的破坏都是通过在被攻击系统上执行的恶意系统调用带来的。
这篇文章提供了设计和实现这种对敏感的系统调用的监视功能。我们的目的主要是在类UNIX系统内核上通过截获系统调用来实现这种功能。这个系统的综合功能可以嵌入到内核中的系统调用代码,这样在系统调用被引用的时候就可以检查系统调用是否符合访问控制数据库所定义的规则。
这里实现的方法是通过一个简单的方法来截获系统调用和他们的参数值。这样做不用改变内核已有的数据结构和算法。在对所有对程序进程的修正和改变后,他们还可以继续稳定的运行,不用改变源代码和重新编译内核。
这里还提供了一个完整的能够检测和阻止缓冲区溢出攻击的代码,这段代码可以作为一套Linux的操作系统的内核源代码补丁。
一.介绍
现在大家已经公认了,世界上没有绝对的方法或绝对安全的系统来阻止黑客的入侵:没有漏洞的软件对我们来说还是一个梦想。即使是很流行的程序或是操作系统一样会包含很都可以被入侵者利用的漏洞。
许多软件包的行为都是和其他操作系统的组件(函数库或是内核)相互作用的。 由于这个原因,所以入侵检测和如何处理入侵行为在计算机工业里一直在广泛的讨论和研究。 很多现有的入侵检测的技术都是基于一些对审计和日志文件的分析。主要思想是搜索整个系统的文件和参考列表来发现畸形的,不期望的系统配置的改变。(如,有一个新的用户的用户ID是0)。另外一种方法就是周期性的执行一个程序来做系统文件的属性和参考列表的比较。这些过程主要是来对付Trojan木马的。这样的程序是看起来对系统不是很危险,但是可以让入侵者得到控制整个系统所需的权限。
这样程序的好处是不用进入内核部分。如,他们不用进行对系统命令的修改。但是,他们也不能对入侵进行即时的防范,因为,大多数情况下,这些结果都是在入侵者攻击以后才生成的。 因为所有对系统的破坏性攻击都是通过一些敏感的系统调用来实现的。所以,即时的入侵检测通过监视每一个系统调用就可以保护你的系统不受攻击者破坏。
这篇文章提供了设计和实现这种对敏感的系统调用的监视功能。我们的目的主要是在类UNIX系统内核上通过截获系统调用来实现这种功能。这个系统的综合功能可以嵌入到内核中的系统调用代码,这样在系统调用被引用的时候就可以检查系统调用是否符合访问控制数据库所定义的规则。
这里实现的方法是通过一个简单的方法来截获系统调用和他们的参数值。这样做不用改变内核已有的数据结构和算法。在对所有对程序进程的修正和改变后,他们还可以继续稳定的运行,不用改变源代码和重新编译内核。
这里还提供了一个完整的能够检测和阻止缓冲区溢出攻击的代码,这段代码可以作为一套Linux的操作系统的内核源代码补丁。
一.介绍
现在大家已经公认了,世界上没有绝对的方法或绝对安全的系统来阻止黑客的入侵:没有漏洞的软件对我们来说还是一个梦想。即使是很流行的程序或是操作系统一样会包含很都可以被入侵者利用的漏洞。
许多软件包的行为都是和其他操作系统的组件(函数库或是内核)相互作用的。 由于这个原因,所以入侵检测和如何处理入侵行为在计算机工业里一直在广泛的讨论和研究。 很多现有的入侵检测的技术都是基于一些对审计和日志文件的分析。主要思想是搜索整个系统的文件和参考列表来发现畸形的,不期望的系统配置的改变。(如,有一个新的用户的用户ID是0)。另外一种方法就是周期性的执行一个程序来做系统文件的属性和参考列表的比较。这些过程主要是来对付Trojan木马的。这样的程序是看起来对系统不是很危险,但是可以让入侵者得到控制整个系统所需的权限。
这样程序的好处是不用进入内核部分。如,他们不用进行对系统命令的修改。但是,他们也不能对入侵进行即时的防范,因为,大多数情况下,这些结果都是在入侵者攻击以后才生成的。 因为所有对系统的破坏性攻击都是通过一些敏感的系统调用来实现的。所以,即时的入侵检测通过监视每一个系统调用就可以保护你的系统不受攻击者破坏。
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10617542/viewspace-962253/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/10617542/viewspace-962253/