一、Web Server(以Nginx为例)
1、为防止跨站感染,将虚拟主机目录隔离(可以直接利用fpm建立多个程序池达到隔离效果)
2、上传目录、include类的库文件目录要禁止代码执行(Nginx正则过滤)
3、path_info漏洞修正:
在nginx配置文件中增加:
if ($request_filename ~* (.*)\.php) {
set $php_url $1
}
if (!-e $php_url.php) {
return 404
}
4、重新编译Web Server,隐藏Server信息
5、打开相关级别的日志,追踪可疑请求,请求者IP等相关信息。
二.改变目录和文件属性,禁止写入
find -type f -name \*.php -exec chmod 444 {} \
find -type d -exec chmod 555 {} \
注:当然要排除上传目录、缓存目录等;
同时最好禁止chmod函数,攻击者可通过chmod来修改文件只读属性再修改文件!
三.PHP配置
修改php.ini配置文件,禁用危险函数:
disable_funcions = dl,eval,exec,passthru,system,popen,shell_exec,proc_open,proc_terminate,curl_exec,curl_multi_exec,show_source,touch,escapeshellcmd,escapeshellarg
四.MySQL数据库账号安全:
禁止mysql用户外部链接,程序不要使用root账号,最好单独建立一个有限权限的账号专门用于Web程序。
五.查杀木马、后门
grep -r –include=*.php ‘[^a-z]eval($_POST’ . >grep.txt
grep -r –include=*.php ‘file_put_contents(.*$_POST\[.*\])’ . >grep.txt
把搜索结果写入文件,下载下来慢慢分析,其他特征木马、后门类似。有必要的话可对全站所有文件来一次特征查找,上传图片肯定有也捆绑的,来次大清洗。
查找近2天被修改过的文件:
find -mtime -2 -type f -name \*.php
注意:攻击者可能会通过touch函数来修改文件时间属性来避过这种查找,所以touch必须禁止
六.及时给Linux系统和Web程序打补丁,堵上漏洞
都说Linux主机是非常安全的,但有时却不见得,第二次碰上Linux中木马了(我运气这么好?)。
废话不多说,直接进入主题。
一、状况描述:
1、2017.06.19早上过来发现ssh连接不上,以及各个官网都访问不了;
2、通过云主机厂商后台登录,发现nginx、tomcat、svn应用全部停止;
3、ping www.google.com (云主机在US) 不通;
二、问题定位:
应该是云主机被重启了,同时断开了外网(有些应用没有设置为自启动),于是重启公网的网卡后,ssh就可以登录了,手工启动了nginx、
omcat、svn等应用,因为上次也发生过几次这样的情况,据云厂商反馈,云主机对外发送大量的网络包,导致流量巨大,具体在Linux主机上的
体现就是cpu一直100%左右撑死,于是我怀疑是不是这次也是对外发送巨大的流量包,导致云主机厂商断了主机的外网呢?通过top命令查看
进程发现并没有cpu占用过高的进程,就ifconfig 查看了下网卡情况,显示网卡流量在2.4G左右(由于是事后了,没有截到先前的图),感觉很迅
速,于是我就又断开了一次,就没管了,到中午午休后,下午再次使用ifconfig,此时流量对外发送大量的流量包,累计流量竟然高达140G左右
(后面处理了,就累加了一点):
这情况显示,肯定是中木马,由于Linux主机上面没有安装一些关于流量分析的软件,只从常用的top命令开始,发现并没有cpu占用很高的进程,
但发现有两个从来没见过的进程:MuYuHang 、LTF,通过 /proc/进程id 进入对应进程文件,ls -lh,发现可执行文件竟然指向了Tomcat bin目录
跟上次又是多么的相似,只是进程和文件名不一样罢了,于是简单的 *** 作,kill -9 pid ,结果 *** 作无效,很快进程起来,而且文件删除不了,报
operation not permitted(我可是用root用户执行的,难道还有root干不了的事情?具体了解可查看资料 lsattr和),删除后,过一会儿又自动恢
复。
三、ClamAV工具
关于ClamAV工具的用途以及安装,请百度搜索相关介绍和安装资料,大概说一下,ClamAV是Linux平台的一个木马扫描工具,可以扫描哪些
文件被感染了(但不能自动清除这些病毒,没有windows上面的杀毒软件那么强大),我安装在/home/clamav目录下。
四、解决办法
通过命令 /home/clamav/bin/clamscan -r --bell -i /,扫描这个根目录发现有不少的文件被感染了:
发现tomcat bin目录下的2个文件果然是被感染的了,同时发现有几个命令也被感染了如ps、netstat以及lsof,于是我清除了bsd-port这个目
录,同时把pythno清理,对于命令可以通过,从同版本的linux 没有问题的linux主机上面copy过来,删除后进行覆盖即可(也可以删除重装),
再把tomcat的文件删除,以及异常的进程kill掉,再用clamav扫描发现没有了,最后还需要检查下/etc/init.d这个开机启动的文件,检查里面自动启
动的,我这个里面就发现先前指向 /user/bin/bsd-port/knerl 这个,文件已经删除了,我同时把对应的sh,注释掉。目前来看,一切正常了。。。
五、总结
一次比较完整的定位问题,平时一般很少接触到查收木马的事情,碰上了就当学习,提升技能,只是不足,没有搞清木马是如何进来的,这
个需要后续不断的学习。心好累,Linux主机第二次中木马了。。。。
1、ClamAV
是一款开源防病毒软件,可检测病毒、恶意软件、特洛伊木马和其他威胁,也是免费提供的,这使其成为Linux上最好的防病毒软件之一,ClamAV具有命令行扫描程序,这意味着它可以扫描主要文件类型中的蠕虫、病毒和特洛伊木马,为确保安全并保持最新状态,病毒库一天会更新多次。
2、Chkrootkit
Chkrootkit会检查rootkit,它是一个在命令行界面上运行的免费软件,可以在不安装软件的情况下扫描您的系统,还是一个轻量级程序,这意味着它不会影响系统性能,还可以检测各种其他恶意软件和木马,如后门、TinyNDS等。
3、Comodo
作为Linux上最好的免费防病毒软件之一,Comodo带有按需病毒扫描程序,还检查使用云数据库以检查未知文件,以确保每一天的安全,一旦安装,就不会用无用的警报来打扰你,只是保护计算机免受所有传入的威胁。
4、Sophos
作为另一款免费的防病毒软件,Sophos具有高级功能,并且在Linux系统上也能轻松运行,可以使你的Linux免受Android、Windows和Mac的病毒和恶意软件的侵害,且具有强大的基于启发式的检测和实时扫描功能。
5、Rootkit Hunter
另一个免费检测rootkit的好选择,Rootkit Hunter也被认为是Linux上最好的防病毒软件之一,与大多数UNIX系统兼容,使用命令行界面,重量轻。
6、F-PROT
是一款带有按需扫描仪的免费软件,这是一个不错的选择,可确保针对宏病毒、引导扇区病毒和木马的安全性,可以根据自己的喜好安排扫描,强大的工具是快速扫描和庞大数据库的组合,可确保您的系统安全。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)