from:
因为Unix系统经常承当着关键任务,所以它经常是入侵者攻击的首选目标。于是检测入侵、保护系统安全是管理员的最为重要的任务之一。那么,在没有其它工具帮助的情况下,如何去判断系统当前的安全性?如何去发现入侵呢?下面给大家介绍一些常用到的检查方法
以Linux和Solaris为例:
1、检查系统密码文件
首先从明显的入手,查看一下passwd文件,ls –l /etc/passwd查看文件修改的日期。
输入命令
awk –f:’$3==0 {print $1}’ /etc/passwd
来检查一下passwd文件中有哪些特权用户,系统中uid为0的用户都会被显示出来。顺便再检查一下系统里有没有空口令帐户:
awk –f:
‘length($2)==0 {print $1}’ /etc/shadow
2、查看一下进程,看看有没有奇怪的进程
重点查看进程:ps –aef grep inetd。inetd是Unix系统的守护进程,正常的inetd的pid都比较靠前,如果你看到输出了一个类似inetd –s /tmp/.xxx之类的进程,着重看inetd –s后面的内容。在正常情况下,Linux系统中的inetd服务后面是没有-s参数的,当然也没有用inetd去启动某个文件;而Solaris系统中也仅仅是inetd –s,同样没有用inetd去启动某个特定的文件;如果你使用ps命令看到inetd启动了某个文件,而你自己又没有用inetd启动这个文件,那就说明已经有人入侵了你的系统,并且以root权限起了一个简单的后门。
输入ps –aef 查看输出信息,尤其注意有没有以./xxx开头的进程。一旦发现异样的进程,经检查为入侵者留下的后门程序,立即运行kill –9 pid 开杀死该进程,然后再运行ps –aef查看该进程是否被杀死;一旦此类进程出现杀死以后又重新启动的现象,则证明系统被人放置了自动启动程序的脚本。这个时候要进行仔细查找:find / -name 程序名 –print,假设系统真的被入侵者放置了后门,根据找到的程序所在的目录,Unix下隐藏进程有的时候通过替换ps文件来做,检测这种方法涉及到检查文件完整性,一会我们再讨论这种方法。接下来根据找到入侵者在服务器上的文件目录,一步一步进行追踪。
3、检查系统守护进程
检查/etc/inetd.conf文件,输入:
cat /etc/inetd.conf grep –v “^#”
输出的信息就是你这台机器所开启的远程服务。一般入侵者可以通过直接替换in.xxx程序来创建一个后门,比如用/bin/sh 替换掉in.telnetd,然后重新启动inetd服务,那么telnet到服务器上的所有用户将不用输入用户名和密码而直接获得一个rootshell。
4、检查网络连接和监听端口
输入netstat -an,列出本机所有的连接和监听的端口,查看有没有非法连接。
输入netstat –rn,查看本机的路由、网关设置是否正确。
输入 ifconfig –a,查看网卡设置。
阅读(1108) | 评论(0) | 转发(0) |