在我们经常使用Unix操作系统的过程中,很多的入侵者攻击的首选目标就选择了Unix操作系统。那么,管理员的最为重要的任务也就包括了检测入侵、保护系统安全。下面,我们就来学习下这个问题。
检查Unix操作系统守护进程
检查/etc/inetd.conf文件,输入:cat /etc/inetd.conf | grep –v “^#”,输出的信息就是你这台机器所开启的远程服务。一般入侵者可以通过直接替换in.xxx程序来创建一个后门,比如用/bin/sh 替换掉in.telnetd,然后重新启动inetd服务,那么telnet到服务器上的所有用户将不用输入用户名和密码而直接获得一个rootshell。
检查网络连接和监听端口
输入netstat -an,列出本机所有的连接和监听的端口,查看有没有非法连接。
输入netstat –rn,查看本机的路由、网关设置是否正确。
输入 ifconfig –a,查看网卡设置。
检查Unix操作系统日志
命令last | more查看在正常情况下登录到本机的所有用户的历史记录。但last命令依赖于syslog进程,这已经成为入侵者攻击的重要目标。入侵者通常会停止Unix操作系统的syslog,查看Unix操作系统syslog进程的情况,判断syslog上次启动的时间是否正常,因为syslog是以root身份执行的,如果发现syslog被非法动过,那说明有重大的入侵事件。
在linux下输入ls –al /var/log
在solaris下输入 ls –al /var/adm
检查wtmp utmp,包括messgae等文件的完整性和修改时间是否正常,这也是手工擦除入侵痕迹的一种方法。
检查Unix操作系统中的core文件
通过发送畸形请求来攻击服务器的某一服务来入侵Unix操作系统是一种常规的入侵方法,典型的RPC攻击就是通过这种方式。这种方式有一定的成功率,也就是说它并不能100%保证成功入侵Unix操作系统,而且通常会在服务器相应目录下产生core文件,全局查找系统中的core文件。
输入find / -name core –exec ls –l {} \; 依据core所在的目录、查询core文件来判断是否有入侵行为。
如此,我们就对Unix操作系统入侵的问题解释了很多。希望大家对有所帮助。
【编辑推荐】