在被黑应急过程中,如果始终找不到黑客是怎么进来,接下来这几篇是说如何来应对这种情况。
首先是文件变动的监控,如果能找到变动的文件,则可以顺着变动的文件找到点线索。linux系统的话一般是使用inotify 来监控改动的。linux kernel version >=2.6.13才支持inotify,不过现在应该很少有小于这个版本的服务器了吧,特别是网络安全法出来以后,开始注意网络安全了,版本尽量是最新的。这里主要使用inotifywait指令来做监控。
看脚本:
#!/bin/bash
inotifywait -dr -o /home/linshi/inotify.out.txt --timefmt '%d/%m/%y %H:%M' --format '%T %w%f %e' -e modify,move,delete,create /data --exclude /data/logs/
tail -f /home/linshi/inotify.out.txt|while read line
do
file=`echo $line|awk '{print $3}'`
cp $file /home/linshi/files/${file##*/}.`date +"%Y-%m-%d-%H-%M-%s-%N"`
netstat -anopt >>/home/linshi/files/${file##*/}.`date +"%Y-%m-%d-%H-%M-%s-%N"`.netstat
done
上面是bash shell 代码,请先安装inotify 相关工具,代码中/data 是要监控的路径,/data/logs是排除监控的路径,监控结果写在/home/linshi/inotify.out里,然后脚本读取这个文件,如果/data下有文件变动,则将变动的文件后面加个时间戳复制到/home/linshi/files/下,此外将当前的链接信息也输出到这个目录下,如果需要,可以把当前的进程信息,等信息输出到目录,记住后面加时间戳,避免多次输出覆盖掉之前的。
下面是监控到的信息,可见黑客可能是通过数据库写的后门,具体信息可以去查看备份的文件,这里就不贴出了。