Solaris服务器防范rootkit攻击攻略

2008-06-13 14:21:32.0     推荐:0    收藏:0    评论:0     来源:e800解决方案频道

  三、防止 rootkit 的攻击基本思路

  知道了这些 Rootkit 工具包之后,那么我们如何杜绝黑客 使用 rootkit 程序包来攻击我们的主机呢?由于 rootkit 主要是藉由主机的漏洞来攻击的,因此, 您必须要确定『不必要的服务请务必关闭』, 此外『随时更新主机上面各套件的修补程序』。关闭不必要的服务应该很简单,至于更新套件的修补程序, 最好借助专业工具软件提供的在线更新方式来维护, 这样对于系统管理员来说,会比较轻松。这样还不够喔!因为 rootkit 也很可能会伪装成互联网上面合法的软件, 来吸引您安装他。例如前几年,著名的 OpenSSL 网站上所提供的套件竟然被发现已经被黑客 置换掉所以,在您安装取得的套件之前,请先以 MD5 或者其它指纹数据进行档案的比对, 以确定该档案是没有问题的。当然,最好还是不要安装来路不明的套件较好。而为了确认一下我们的主机是否被 rootkit 程序包所攻击, 其实我们还可以透过其它的软件工具来检查主机的某些重要程序,例如下面提到的 ps, lsof 等的。 这就是我们这篇文章要提到的chkrootkit。

  四、Solaris服务器的基本安全检查

  这里我们分如下几个步骤:

  1.查看登陆系统的用户:

  我们用w命令显示当前所有登陆系统的用户,如图1所示,输出标题行显示了当前系统时间,该系统已运行的时间,当前登陆用户数,最近1分钟,5分钟和15分钟内的平均系统负载。 USER字段显示当前登陆的用户名。TTY字段显示了会话的控制终端,tty表示从控制台登陆,pts/typ则可以表示通过一个网络连接,

  2.查看系统开放的端口:

  我们用netstat –an命令来显示当前系统开放的端口,有时系统开放的端口比较多,一页显示不了,我们可以用|more这个管道命令使结果分页显示,便于我们查看输出行通常有5个结果,其中比较重要的是proto显示了使用协议,local address显示了使用的本地ip,这对于NAT地址转换的情况比较有用,还有foreign address显示了外部ip,state显示了当前这个连接的状态。

  3.使用lsof,

  使用 lsof 您可以检查打开的文件,并根据需要在卸载之前中止相应的进程。同样地,如果您发现了一个未知的文件,那么可以找出到底是哪个应用程序打开了这个文件。在 UNIX 环境中,文件无处不在,这便产生了一句格言:“任何事物都是文件”。通过文件不仅仅可以访问常规数据,通常还可以访问网络连接和硬件。在有些情况下,当您使用 ls 请求目录清单时,将出现相应的条目。在其它情况下,如传输控制协议 (TCP) 和用户数据报协议 (UDP) 套接字,不存在相应的目录清单。但是在后台为该应用程序分配了一个文件描述符,无论这个文件的本质如何,该文件描述符为应用程序与基础操作系统之间的交互提供了通用接口。因为应用程序打开文件的描述符列表提供了大量关于这个应用程序本身的信息,所以能够查看这个列表将是很有帮助的。完成这项任务的实用程序称为 lsof,它对应于“list open files”(列出打开的文件)。几乎在每个 UNIX 版本中都有这个实用程序。

  lsof下载安装

#wget ftp://ftp.sunfreeware.com/pub/freeware/intel/10/lsof-4.77-sol10-x86-local.gz
  #gunzip lsof-4.77-sol10-x86-local.gz
  #pkgadd -d lsof-4.77-sol10-x86-local


  lsof的使用

  只需输入 lsof 就可以生成大量的信息,如图1所示。因为 lsof 需要访问核心内存和各种文件,所以必须以 root 用户的身份运行它才能够充分地发挥其功能。

  

   图1 lsof命令输出

  每行显示一个打开的文件,除非另外指定,否则将显示所有进程打开的所有文件。Command、PID 和 User 列分别表示进程的名称、进程标识符 (PID) 和所有者名称。Device、SIZE/OFF、Node 和 Name 列涉及到文件本身的信息,分别表示指定磁盘的名称、文件的大小、索引节点(文件在磁盘上的标识)和该文件的确切名称。根据 UNIX 版本的不同,可能将文件的大小报告为应用程序在文件中进行读取的当前位置(偏移量)。图5来自一台可以报告该信息的 Sun Solaris 10 计算机,而 Linux 没有这个功能。

  查找网络连接

  网络连接也是文件,这意味着可以使用 lsof 获得关于它们的信息。假设您已经知道 PID,但是有时候并非如此。如果您只知道相应的端口,那么可以使用 -i 参数利用套接字信息进行搜索。下面显示了对 TCP 端口 22 的搜索。

[上一页]   [第1页]   [第2页]   [第3页]   [第4页]   [第5页]   [下一页]
您可以针对本文进行:[评论]  [收藏]  [推荐]  
  • 共有0条评论  点击查看更多评论
  • 网友评论仅供网友表达个人看法,并不表明e800同意其观点或证实其描述
我想发表评论:
用户名密码
  • 匿名发表
    验证码: