安全pipe理员的探索性问题(/ etc / passwd + PHP)

最近我在几台服务器上看到了一些问题,其中一个帐户被黑客通过过时的脚本攻击,黑客上传了一个cPanel / FTP Brute强制PHP帐户内的脚本。

PHP文件读取/ etc / passwd来获取用户名,并使用passwd.txt文件来试图暴力破解127.0.0.1:2082。

我试图想办法阻止这一点。 除了“GET /path/phpfile.php”之外,它不会发送任何东西,所以我不能使用mod_security来阻止它。

我一直在想也许更改/ etc / passwd的权限为600,但我不确定这将如何导致我的用户。

我也在考虑限制localhost连接到:2082,但是我担心mod_proxy受到影响。

有什么build议么?

运行某种forms的auth,不会查看/ etc / passwd用户名(如LDAP)。 另外,我build议激活SELinux,以便这样的黑客在第1步中断(httpd无法用默认规则读取/ etc / passwd),但是cPanel对任何高级尝试locking系统都是憎恶的。

首先启用cPHULK ,这将有助于保护cPanel免受暴力侵害。 永远不要改变/ etc / passwd和/ etc / shadow的权限,因为这个原因,他们是这样设置的。 SELinux将增加一层额外的安全措施,并停止利用代码执行,但它可能不会阻止这种攻击。 将端口号从2082更改为2083或类似的东西,他们正在使用的脚本可能不是那么聪明。

mod_security真棒,但它不会做任何事情来阻止这种攻击。

你也可以执行更好的密码规则。 尝试暴力强迫你与THC-Hydra的自我,如果有任何帐户被破坏,禁用他们,并强制用户select一个更好的密码。

所以第一件事就是修复/删除过时的脚本,这些脚本让黑客能够首先上传cPanel / PHP脚本。 之后的一切都是围绕着真正的问题跳舞(不好的解决方法),你会继续有各种各样的问题,直到纠正。

系统期望/etc/passwd是世界和组可读的(即644444但仍然可能会破坏事物),而存储密码哈希的/etc/shadow 限制为600所有者读/写,组和所有人没有访问 o+rw,g-,a- )。

没有cPanel的经验,我不知道是否可以通过PAMauthentication模块进行限制,以限制密码检查尝试,从而使密码强制尝试失败。 我想到的PAM模块叫做pam_faildelay ,可以减缓多次尝试。

我不知道使用Apache和mod_security的 tarpit样式解决scheme是否会限制访问cPanellogin。