当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 做好防范 Linux系统下的攻击软件全接触

Unix/Linux
Linux 防火墙配置基础篇
初手学堂;跟我学习安装配置RedHat9.0
基于FreeBSD操作系统的安全电子邮件系统架设
Linux下增加Apache的rewrite Module
Linux/Unix下ODBC的安装、配置与编程
安装大型Linux 集群: 简介和硬件配置
安装大型Linux 集群: 配置服务和安装
经典推荐:远程网络安装RedHat-Linux
Linux操作系统下软件的安装方法大全
安装Linux应用软件的五种基本方法
Linux下Resin+JSP+MySQL的安装和配置
清爽漂亮 Ubuntu 7.04 新手指南
Linux操作系统下轻型虚拟机VirtualBox
通过PXE远程安装Linux系统全程解析
打造完美linux系统:常用软件安装
IBM P服务器的Linux基本安装和配置
用VNC访问远端Linux桌面 详细步骤解析
Debian4(Etch)系统简要安装详细介绍
RedHat SELinux系统简介及案例分析
Linux系统源码安装过程中的prefix选项

Unix/Linux 中的 做好防范 Linux系统下的攻击软件全接触


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 103 ::
收藏到网摘: n/a

现在,大量的网络服务器开始使用Linux操作系统,Linux服务器的安全性也开始受到关注。对Linux服务器攻击的定义是:攻击是一种旨在妨碍、损害、削弱、破坏Linux服务器安全的未授权行为,攻击的范围可以从服务拒绝直至完全危害和破坏Linux服务器。对Linux服务器攻击有许多种类,从攻击深度的角度说明,我们可以把攻击分为四级:服务拒绝攻击(DoS)、本地用户获取了非授权的文件的读写权限、远程用户获得特权文件的读写权限、远程用户获得根权限。下面,我们将选取一些有针对性的经典工具,一一加以说明。

1、溢出:从开源代码开始

Linux系统中最常见的缺陷就是缓冲区溢出,缓冲区以前可能被定义为“包含相同数据类型的实例的一个连续计算机内存块”。极其常见的缓冲区种类是简单的字符数组,溢出就是数据被添加到分配给该缓冲区的内存块之外。由此,我们可以看到,作为开源系统,Linux系统中的代码检查就显得十分重要。对于攻击者和管理员来说,谁首先重视它,就在一定程度上取得了主动权。

(1)SPIKE

SPIKE是immunitysec公司的Dave Aitel写的一个黑盒进行安全测试的工具。SPIKE提供了各种各样的构造函数。例如s_binary可以构造二进制数据,s_string可以构造字符串,s_unistring可以构造UNICODE字符串等。SPIKE的另一个优势是Dave Aitel的Fuzz理论,它可以构造一些特殊的数字或者字符串作为程序的输入,检查程序是否能够处理这些异常数据。此外,SPIKE里边提供了常见的协议支持,例如SUN RPC和MS RPC。

(2)Lint

Lint能够检查的部分错误列表:可能的空指针;在释放内存之后使用了该指针;赋值次序问题;拼写错误等。通常,一个C/C++的编译器假设程序是正确的,而Lint恰恰相反,因此,它优于编译器执行的一般性检查。Lint还可以贯穿多个文件来执行它的错误检查和代码分析,这是编译器做不到的。比较流行的Lint 程序有:PC-lint是一个由Gimpel Software提供的支持C/C++的商用程序;Splint (原来的 LCLint) 是一个GNU免费授权的 Lint程序,但是只支持C不支持C++。

运行 Lint时,和正常的编译器一样,只要把直接加入的makefile 中就可以了。通过配置选项、代码注释等方法可以控制和校准Lint的输出。例如,这里有一个返回NULL指针的函数,Splint可以通过下面的注释 /*@null@*/ 来识别:

/*@null@*/ void *test(void){// a function that returns NULL!return NULL; }

这样做有两个目的:防止Splint为这个返回Null指针的函数告警;保证Splint 检查任何调用该函数的代码中使用该函数的返回指针是有效的。

(3)Flawfinder

Flawfinder 是一款用Python编写的c、c++程序安全审核工具,可以检查潜在的安全风险。它通过搜索检测文件源代码从而得到潜在的安全漏洞,支持检测数据库,以HTML格式生成报告。

2、嗅探器:Linux上的“狗鼻子”

Sniffer是一种常用的收集有用数据方法,它几乎能得到任何以太网上的传送的数据包。这些数据可以是用户的帐号和密码,可以是一些商用机密数据等等。这些嗅探器很容易被入侵者完成入侵以后种植在受害者服务器当中,有的只是简单的用来捕捉用户名和密码,有的则非常强大可记录所有的网络数据流。 Linux操作系统下有很多这样的优秀工具,下面,我们来具体看看。

(1)tcpdump

这是一个专业的网络管理工具,而且这个工具也留下了不少网络攻击故事。它能把匹配规则的数据包的包头显示出来,使用TCPDump去查找网络问题或者去监视网络上的状况.。tcpdump的安装十分简单,一般由两种安装方式。一种是以rpm包的形式来进行安装。另外一种是以源程序的形式安装。以rpm 包的形式安装是最简单的安装方法,通过rpm命