更 安全。 在只能提供虚拟主机服务的情况下, 建议对各虚拟主机目录和账号做严格的权限限制, 避免因为一个网站的
问题影响到服务器上所有的网站。 不要在 Web 服务器上做与服务无关的网络操作,如上网浏览、收发电子邮件等。 定期对自己的 Web 服务器进行安全扫描。您可以选择使用
免费的(如 nesses 等)或收 费的本地安全扫描
软件,也可以选择在线的安全扫描服务(如赛尔体检中心 nhcc.edu/) 。 条件允许的情况下尽量为 Web 服务器配置专用的防火墙设备。 2. 针对网页代码的管理 管理员应该明确自己网站的网页代码来源, 是自主开发的还是使用了开源或是商业的网 站构建系统。 如果是自主开发的则需要对所有的网页代码进行审计。 如果用的是开源或是商
业的构建系统,则需随时关注起版本的更新情况,及时将自己的网站后台版本更新到最新。 对于代码审计, 目前还没有特别好用的自动检测系统, 多数时候还是需要人为的介入检 测,一些安全公司会提供这方面的有偿服务。如果管理员自己对代码进行审计,应该重点关 注包含数据库操作、 文件读写以及用户输入等功能的网页代码, 利用有效的正则表达式对用 户的输入进行严格的限制。如果没有特别需要,使用静态的页面是不错的选择。 代码对数据库操作的账号应该遵循最小原则, 如果仅需要查询, 应该使用仅有
查询权限 的
账号。 使用安全扫描软件以及专用的 SQL 注入漏洞扫描软件(如:Pangolin 等)对网站进行 扫描能有效地定位出存在漏洞的页面。 一些应用层级的防火墙能够有效阻挡大多数的 SQL 注入攻击。在 Web 服务器上安装的 网页防篡改系统也能降低网站被挂马的风险。 小技巧解决挂马难题 当用户发现自己的网站被挂马后, 应该先分析网站被挂马的原因, 然后再清除挂马链接, 并对服务器进行加固。这个工作包括对服务器进行全面的安全扫描、系统加固(甚至是重装 系统) 以及对所有网页代码进行审计并加固等操作, 而不是简单的把发现的挂马链接清除掉, 简单的清除操作带来的后果可能是再次被挂马。 下面给出的一些分析技巧可以帮助我们更快 的找到问题的所在并有针对性的进行处理: 到服务器上查看挂马链接是被加在网页源码中还是数据库中,如果仅仅是加在数据库 中,则表示攻击者利用的很可能是 SQL 注入漏洞。 因为病毒无法自动判断网页代码的结构, 所以它们所添加的挂马链接往往是在页面源码 的顶部或者是底部。 并且病毒修改页面代码的时候是批量化的, 它会向所有的页面中都添加 挂马链接,而不是有选择性的添加。 如果查看数据库和网页源码中均没有发现挂马链接,可以试着在本地访问服务器的 80 端口,看看所显示的页面源码中是否有挂马链接存在,如果有则可能是服务器上存在 Web 服务劫持问题(如 IIS 的 iisstart.htm 劫持) ,如果没有则要去考虑局域网内是否存在 ARP 劫 持。 如果服务器上网页源码只有一部分或特定的几个被有选择性的插入了木马链接, 就说明 攻击者很可能已经取得了服务器的管理权限,这种情况下需要对服务器进行全面的检查。 如果一个网页源码中存多处被插入的挂马链接,很可能说明这台服务器上存在多处漏 洞。 网站被挂马的原因多种多样, 但是多数时候造成网站被挂马的不仅仅是技术上问题, 更 多是管理上的缺失。 如果大家都能够加强对自己网站的管理与维护, 相信挂马的数量将会大
大的减少。 (作者单位为 CER
NET 国家网络中心应急响应组)