Monthly Archives: January 2012

网站被hacked了

过年在家没注意,VPS销售的网站被一个阿拉伯hacker攻击了:

他用的是网站销售系统的一个漏洞,POST中添加了一段php脚本就在根目录下上传了几个php文件,不过我的php-cgi用的是www用户的权限,他用这个权限也没有什么用。放了一些提升权限的php工具tryagshell.php(这里有php提权工具的解释),但貌似没有成功。可能是因为网站的PHP添加了Suhosin,默认的Suhosin已经能够抵御一部分php提权脚本的攻击。不过这次漏洞来源于php的eval函数,在Suhosin的对eval的黑名单中添加几个危险函数,编辑php.ini

[Suhosin]
suhosin.executor.eval.blacklist=phpinfo,fputs,fopen,fwrite

根据实际情况自行设定

这次的教训:
1. 一定要注意cgi的用户权限,并且要控制好www用户的。
2. 最好把网站根目录下的文件设置比较高的权限,非cache目录最好设置为非可写。
3. 对于商用的网站,最好对POST提交的数据进行限制大小。
4. 最好在php.ini中限制一些危险的php函数,例如(eval、phpinfo等)
5. 最好能够安装Suhosin来保护PHP应用的安全性。