入侵防范linux命令 centos 入侵( 四 )


UNIX系统中 , /bin/login是被入侵者经常替换作为后门的文件,接下来谈一下login后门 :
UNIX里,Login程序通常用来对telnet来的用户进行口令验证 。入侵者获取login的源代码并修改,使它在比较输入口令与存储口令时先检查后门口令 。如果用户敲入后门口令,它将忽视管理员设置的口令让你长驱直入:这将允许入侵者进入任何账号,甚至是root目录 。由于后门口令是在用户真实登录并被日志记录到utmp和wtmP前产生的一个访问,所以入侵者可以登录获取shell却不会暴露该账号 。管理员注意到这种后门后,使用”strings”命令搜索login程序以寻找文本信息 。许多情况下后门口令会原形毕露 。入侵者又会开始加密或者更改隐藏口令,使strings命令失效 。所以许多管理员利用MD5校验和检测这种后门 。UNIX系统中有md5sum命令 , 输入md5sum 文件名检查该文件的md5签名 。它的使用格式如下:md5sum –b 使用二进制方式阅读文件;md5sum –c 逆向检查MD5签名;md5sum –t 使用文本方式阅读文件 。
在前面提到过守护进程,对于守护进程配置文件inetd.conf中没有被注释掉的行要进行仔细比较,举个简单的例子,如果你开放了telnet服务,守护进程配置文件中就会有一句:telnet stream tcp nowait root /usr/sbin/in.telnetd in.telnetd
可以看到它所使用的文件是 /usr/sbin/in.telnetd,检查该文件的完整性,入侵者往往通过替换守护进程中允许的服务文件来为自己创建一个后门 。
LINUX系统中的/etc/crontab也是经常被入侵者利用的一个文件,检查该文件的完整性,可以直接cat /etc/crontab,仔细阅读该文件有没有被入侵者利用来做其他的事情 。
不替换login等文件而直接使用进程来启动后门的方法有一个缺陷,即系统一旦重新启动,这个进程就被杀死了,所以得让这个后门在系统启动的时候也启动起来 。通常通过检查/etc/rc.d下的文件来查看系统启动的时候是不是带有后门程序;这个方法怎么有点象查windows下的trojan?
说到这里 , 另外提一下,如果在某一目录下发现有属性为这样的文件:-rwsr-xr-x 1 root root xxx .sh , 这个表明任何用户进来以后运行这个文件都可以获得一个rootshell,这就是setuid文件 。运行 find –perm 4000 –print对此类文件进行全局查找 , 然后删除这样的文件 。
9、检查内核级后门
如果你的系统被人安装了这种后门,通常都是比较讨厌的,我常常就在想,遇到这种情况还是重新安装系统算了J,言归正传,首先,检查系统加载的模块,在LINUX系统下使用lsmod命令,在solaris系统下使用modinfo命令来查看 。这里需要说明的是,一般默认安装的LINUX加载的模块都比较少,通常就是网卡的驱动;而solaris下就很多 , 没别的办法,只有一条一条地去分析 。对内核进行加固后,应禁止插入或删除模块 , 从而保护系统的安全,否则入侵者将有可能再次对系统调用进行替换 。我们可以通过替换create_module()和delete_module()来达到上述目的 。另外,对这个内核进行加固模块时应尽早进行 , 以防系统调用已经被入侵者替换 。如果系统被加载了后门模块,但是在模块列表/proc/module里又看不到它们 , 有可能是使用了hack工具来移除加载的模块,大名鼎鼎的knark工具包就有移除加载模块的工具 。出现这种情况 , 需要仔细查找/proc目录,根据查找到的文件和经验来判断被隐藏和伪装的进程 。Knark后门模块就在/proc/knark目录 , 当然可能这个目录是隐藏的 。
怎么防止黑客入侵linux系统?禁止root登录入侵防范linux命令,尽量用sudo来执行root命令,不光是为入侵防范linux命令了防止入侵也可以很好入侵防范linux命令的防止误操作 。远程用ssh别用telnet 。用了小3年从来没中过什么招数 。

推荐阅读