我们使用通常的LAMP堆栈运行共享主机Web服务器.它是多年前启动并运行的(嗯,Apache-1.3和
PHP-3天?)并经历了多次迭代.我们努力拥有良好的系统管理员策略,例如保持所有堆栈最新,检查弱密码,最小化攻击面,使用suhosin,密切关注系统日志等等.当然,每个虚拟主机都被限制在其目录中(用于FTP访问和PHP open_basedir).
但是在一天结束的时候,它始终是一个运行不受信任的PHP垃圾的网络服务器,由客户上传(阅读:没有任何IT经验的未知和大多数愚蠢的用户),HTTP暴露给世界(Web表单和诸如此类的东西)…这些场景是不太罕见:
> user将密码提供给太多人,并且其网站遭到入侵
>用户的PC受到攻击,FTP /网络应用程序/从那里窃取的密码
>用户安装蹩脚的PHP东西,它会受到损害
>用户安装好PHP的东西(它甚至存在吗?)但是几年没有更新它会受到损害
>用户写自己的PHP东西(ARGH!他们正在走出———-墙!)
>依此类推.你有了主意.
在调查受损的PHP / JS / HTML /任何东西时,我们有时会发现javascript形式的恶意软件(在.js文件中或嵌入在html中),有时我们甚至会在内部找到包含恶意软件/病毒的.zip文件.
在如此狂野的环境中,不可能在网站上反复运行自动漏洞测试,也许它也没有多大用处.我也在想像mod_security这样的东西在这样一个共享的,通用的,失控的环境中是不可能的.
但我想知道是否有类似防病毒的东西我们可以在服务器端运行,至少是为了寻找被众所周知的javascript或可执行文件泄露的网站,或旧版本的PHP网络应用程序中的已知漏洞.每天晚上从cron运行的东西,并得到一个很好的电子邮件报告.
有这样的事吗? clamav可以检测一些讨厌的JS东西吗? (我假设我们已经可以使用它来检测Win32恶意软件上传的zip文件)
还有什么我没想过的东西可以在服务器端进行静态扫描吗?
那么存储在MysqL中的内容呢(例如,从表单上传并存储在sql中以便以后在网页上显示的javascript)?
解决方法
除ClamAV外,请考虑使用
Maldet进行其他恶意软件检测.根据文档,它有能力与ClamAV集成,虽然我没有亲自设置它.