it167.com  设为主页
 收藏本站
 
  资讯:业界动态 | 软件动态 | 人物专栏 | 安全资讯 | 网络生活 | 电子商务 | 小游戏 | 视频 | 美女图片 | 音乐
  网络编程 | 网站运营 | 网页制作 | 图形图象 | 操作系统 | 媒体动画 | 软件教学 | 网络应用 | 邮件系统 | 网络安全 | 认证考试
asp | .net | php | jsp | Sql | java | Dreamweaver | FrontPages | Javascript | css | Coreldraw | photoshop | Flash | Coreldraw
当前位置: > 主页>服务器>Linux服务器教程>Linux环境下发现并阻止系统攻击 (3)
最新新闻

·机会与整合 边缘化互联
·TOM-Skype新增三大本地
·雅虎抢闸邮箱竞赛 网易
·新浪抢攻北京奥运
·洞悉网络口碑的掘金机会
·拆解网络病毒黑金交易
·木马下载器近期出现新变
·《互联网周刊》第17期文
·Web2.0是否催生自吹自擂
·三张宝宝裸照招来MSN封
热门新闻
·Linux操作系统12则经典
·Windows和Linux的“鹊桥
·给Linux新手
·在Linux下访问MSSQLServ
·Linux环境下发现并阻止
·Linux环境下发现并阻止
·Linux环境下发现并阻止
·LINUX下MYSQL完全安装使
·Linux的防火墙配置!
·浅谈Linux优化及安全配
推荐新闻
 
 

Linux环境下发现并阻止系统攻击 (3) 

作者:   来源:it167   点击:   日期:2007-01-27

三、一个笑话里说一个小偷进入到一家,偷光了屋子里所有的东西,但是却用一个相同的东西代替了偷走的东西。但是在网络世界里,这却是可能发生的。一个攻击者利用一个系统漏洞非法入侵进入到你的系统后,当你使用ps命令列出系统中的所有的进程时,却看不到什么异常的证据。你查看你的password文件,一切也是那么的正常。到底发生了什么事情呢?当系统进入到你的系统以后,第一步要做的事情就是取代系统上某些特定的文件:如netstat命令等。当你使用netstat-a命令时,就不会显示系统攻击者存在的信息。当然攻击者将替代所有的可能泄露其存在的文件在linux环境下一个有名的这样的工具包名字是rootkit。通过在任何一个搜索引擎搜索关键字rootkit可以得到数以百计的结果。这些工具一般来说包括:

ps netstat top .....

由于这些经过文件已经被取代。所以简单的利用ls命令查看这些文件是看不出什么破绽的。有若干种方法你可以验证系统文件的完整性。如果你安装的是Red Hat, Caldera,TurboLinux或任何使用RPM的系统。你可以利用RPM来验证系统文件的完整性: 首先你应该查明你的那些你需要查看的文件来自哪个软件包,使用rpm命令你可以查明某个文件属于某个包: # rpm -qf /bin/netstat net-tools-1.51-3 然后,可以扫描

整个rpm包来查看那些发生了改变。对没有发生改变的包使用该命令将没有任何输出信息,如下所示:

# rpm -V net-tools

将netstat的5.2版本的二进制可执行文件替换为6.0的版本以后再使用该命令的结果为:

.......T /bin/netstat

这说明/bin/netstat/文件已经被修改。若我使用rpm-qf测试ps和top命令可以得到其属于包procps,然后再验证包procps的完整性。下面是一个被"黑"的站点的结果:

# rpm -qf /bin/ps procps.2.0.2-2 
# rpm -V procps 
SM5..UGT /bin/ps 
..UGT /usr/bin/top


攻击者入侵到系统中,并且用自己的ps及top命令替代了我们系统中的命令。从而使管理员看不到其运行的进程,也许是一个sniffer来监听所有的用户所有进出网络的数据并找寻到密码信息。

下面是一个小的script来扫描你系统的所有的rpm库,并检查所有的包是否被篡改。但是应该注意的是并不是所有该scripts

报告的问题都是说明该系统文件被攻击者破坏。例如你的password文件一般肯定和你安装系统时是不同的:

#!/bin/bash 
# 
# Run through rpm database and report inconsistencies 
# for rpmlist in `rpm -qa` 
# These quotes are back quotes 
do echo " ----- $rpmlist -----" ; 
rpm -V $rpmlist done > /tmp/rpmverify.out



当你运行该scripts时,输出被定向到文件/tmp/rpmverify.out你可以使用less命令查看该文件。但是由于文本文

如:/etc/passwd, /etc/inetd.conf等很可能显示为被修改过。但是你如何知道这些是管理员自己修改的还是入侵者修改的呢?方法是:

在你确保你的系统是干净的,没有被攻击者入侵时,你为这些系统文件创建指纹信息。在你怀疑你的系统被入侵时使用这些这些指纹信息来判定系统是否被入侵。创建文件的指纹信息是通过命令md5sum 来实现的:

# md5sum /etc/passwd 
d8439475fac2ea638cbad4fd6ca4bc22 /etc/passwd 

# md5sum /bin/ps 
6d16efee5baecce7a6db7d1e1a088813 /bin/ps 
# md5sum /bin/netsat 
b7dda3abd9a1429b23fd8687ad3dd551 /bin/netstat


这些数据是我的系统上的文件的指纹信息。不同的系统上的文件的 指纹信息一般是不同的,你应该是使用md5sum来计算自己系统文件的指纹信息。下面是一些你应该创建指纹信息的文件;

/usr/bin/passwd /sbin/portmap /bin/login /bin/ls /usr/bin/top /etc/inetd.conf /etc/services通过指纹信息你可以决定是否有系统文件被篡改。


文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【论坛讨论

   相关文章:
·Linux环境下发现并阻止系统攻击 (2) ·Linux环境下发现并阻止系统攻击 (4)
·Linux环境下发现并阻止系统攻击 (1) ·LINUX下MYSQL完全安装使用指南
·在Linux下访问MSSQLServer数据库 ·Linux的防火墙配置!

   文章评论:(0条)
  
 请留名: 匿名评论   点击查看所有评论 网管论坛
 

  责任编辑:it167  声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。