IIS+ASP 组合容易被入侵,巧解挂马难题 组合容易被入侵, edu 2010-08-20 作者:郑先伟 随着高招工作的临近,教育网网页挂马数量呈明显上升趋势。从 今年一月开始,CCERT 联合北京大学网络与信息安全实验室及赛尔体检 中心对教育网内的 3.5 万多个网站开展了免费的网页挂马监测和通知处理
工作。 什么类型的网站容易被挂马?什么原因导致网站被挂马?该如何防 范? 通过对近期教育网内检测到的 623 个被挂马网站所使用的 Web 服务 程序类型以及编写网页所使用的脚本语言类型进行的统计分析:
图 脚本语言及服务程序类型分布统计 从图中可以看出,被挂马网站使用最为广泛的是 IIS 服务,其次是 Apche 服务。容易被挂马的多数是 ASP 编写的网页,而直接使用
HTML 的静态页面则相对安全。 是什么导致了 IIS+ASP 的服务组合容易被挂马? 这需要从造成网站被挂马的原因说起。 目前造成网站被挂马的原因可以分 为三种: 1. 网站服务器的系统或应用程序存在安全漏洞导致网页被挂马 所有的系统和应用软件都可能存在漏洞, 各厂商会针对自己的产品定 期发布安全公告和补丁程序,如果管理员疏于管理,不及时的安装补丁, 就可能导致漏洞被攻击者利用从而篡改网页进行挂马。Windows 系统和 Linux 系统一样都会存在漏洞, 但是由于 Windows 系统的普及率及版本的 通用性使得攻击者更热衷于去开发 Windows 底下的攻击
程序,这就导致 运行在 Windows 下的 IIS+ASP 的搭配更易受到攻击。当然这并不表示 Linux 系统就不会被攻击(数据显示 Apache+
PHP 一样也会被挂马) ,只是 相对于 Windows 来说它被攻击的几率会小一些。另外除了操作系统外, 所有向外提供网络服务的程序(如 IIS、Apache、SQLserver、MySQL 等) 都需要打补丁。 2. 网页代码编写有问题导致网页被挂马 网页代码编写的问题主要体现在两个方面, 一是有数据库操作的代码 对用户提交的参数没有严格进行限制, 导致用户可以利用特定的输入参数 对数据库进行读写操作,从而得以向数据中插入挂马链接,这也就是我们 常说的 SQL 注入攻击(这类攻击是目前造成网页挂马的首要原因) 。代码 编写存在的另一种问题是网站页面代码本身实现了上传附件的功能, 但是 在实现过程中对用户所上传附件的文件类型限制不严, 导致攻击者可以上 传木马文件控制服务器进而对网页进行挂马(常见于开源的论坛搭建代
码) 。 3. 服务器感染病毒导致网页被挂马 一些病毒感染系统后会在系统上所有的网页文件中加入挂马链接, 如 果感染病毒的是 Web 服务器或者是用于网页开发的
系统,那么网站的网 页中
就可能被插入挂马链接。还有一些病毒则会通过 ARP 欺骗来劫持整 个局域网内 80 端口的链接, 并修改
网络数据包, 插入挂马链接。 如果 Web 服务器所在的局域网内有其他机器感染这类病毒就可能导致外部用户访 问到的页面存在挂马链接。由于 Linux 系统的下的病毒数量远少于 Windows, 这也是造成 IIS+ASP 比其他搭配更容易遭受挂马攻击的原因之 一。 防范措施 在了解的网站的被挂马的主要原因后, 我们就可以针对这些问题制定相应的防范措施来 预防网站被挂马,总结出来有如下这些需要注意的地方: 1. 针对网站服务器的管理 及时安装补丁程序,需要打补丁不仅仅是系统本身,也包括所有对外提供服务的程序。 在条件允许的情况下做到专机专用,不要将其他诸如 FTP 服务、文件共享及打印服务 都放置在 Web 服务器上。 关闭 Web 服务器上所有不必要的服务程序及端口(如数据库的服务端口仅需对本地提 供服务,就可以关闭远程的连接权限)来减少被攻击的风险。 网页开发人员的机器上一定要安装防病毒软件、 服务器的上也可以选择安装合适的防病 毒软件。 使用硬件虚拟机技术在一台服务器上提供多个 Web 服务要比直接使用虚拟主机服务