你最好的选择是安装一个 web 应用程序防火墙,比如mod_security并应用规则来解决这个问题。应用Duo Security,以禁止来自受感染帐户的未经验证的 sudo 命令。
fr00yl00p 说:
- 配置系统以在登录时提醒您(例如 sshrc 和 bashrc 中的每个邮件)
如果您有执行维护的系统,例如 SNMPv3、任何类型的 rsync 帐户等,这将变得过于繁琐和复杂。更好的机制是每当您登录时写入终端的最后一个命令的别名。Duo 将停止很多所以检查出来。
fr00yl00p 说:
让您的防火墙丢弃具有明显攻击模式的连接。(例如http://spamcleaner.org/en/misc/w00tw00t.html)
这不是一个可行的机制,您必须并行创建一个白名单。考虑一下我可以假装是任何人来欺骗连接的事实。想象一下,我生成了足够多的欺骗消息来模拟 CIDR /16、/8 甚至 /2。
fr00yl00p 说:
安装 PHPIDS ( https://phpids.org/ )
除非您愿意成为事件响应分析师,否则您将浪费大量时间来追踪误报,您最终会忽略来自 IDS 和 IPS 的警报,即使训练有素的 DFIR 人员一次花费数小时不断修改。更不用说不习惯使用 IDS,也不解释其输出的人。
至于其他建议,如果您正确配置 WAF,则无需阻止 Web 服务器的整个范围。在我的一个站点上,我有目的地保持 Joomla 1.5 运行并且不用担心妥协,因为我的 WAF 被写入只允许来自我的静态地址的POST 。它的简约是最好的。我的网站仅设计为允许 GET 而不是 POST,因此无需在规则上胡思乱想。
您还需要认识到,受感染的机器会产生大量流量,因此您本身并不是在阻止或阻止攻击者,而是在阻止一台受感染的机器。所以我不会去阻止整个IP块到一个网页。邮件服务器,ssh 服务器确定。事实上,你的网络服务器应该有一个默认的“ BLOCK ALL ”,只允许你的地址访问 SSH 等服务。但是,每个人的设计/需求不同