随着用户对客户端便利性的要求,加之服务提供方对减少客户端开辟成本和维护成 望,越来越多的应用已经转为 B/S (浏览器/服务器)结构。由于用户对页面展现效果 和易用性的要求越来越高, Web 2.0 技术的应用越来越广泛,这样非但促进了Web 应用的快 速发展,同时也使 Web用中所存在的安全问题越来越明显的暴露出来。
根据 X-Force 的 2022 年年度报告, Web 安全事件数量增长迅猛:
2022 年 Web 安全事件增长
在这种背景条件下,除了越来越多的站点因安全问题而被攻击者攻陷,导致重要信息 , 甚至成为傀儡主机, 大量傀儡主机被攻击者利用发动 DDOS (分布式拒绝服务攻击) 。 客户端也面着不少安全问题, 恶意页面的垃圾信息传播、 网页挂马导致的恶意程序的传播 等。
一.概述
1.1 什么是 Web 安全评估
Web 安全评估主要在客户的 Web 平台上,针对目前流行的 Web 安全问题分别从外部和内 部进行黑盒和白盒安全评估
根据 Web 多层面组成的特性,通过对Web 的每一个层面进行评估和综合的关联分析, 从而查 Web 站点中可能存在的安全问题和安全隐患。
1.2 Web 安全评估与传统评估服务的区别
与传统的系统层面的评估不同, Web 站点的安全评估更加注重“关联性”。


在传统的系统层评估中,评估方向以系统自身安全性和策略的完善程度作为主要的评 估方向,目标仅在于揭露系统配置上的缺陷。
而在 Web 站点评估中,除了需要关注系统层面的安全问题外,还需要关注系统组件及 第三应用程序设计的安全性。 而在 Web 站点中, 安全问题也再也不像系统安全问题那样只具 备单一层面, 而是多个层面叠加产生, 因此 Web 安全评估还需要更加注重各个层面安全问 的关联性,将这些问题进行必要的关联分析后来确认Web 站点整体的风险。
从这方面来说,Web 安全评估从人力到技术等各个方面的投入都要大于传统的系统安全 评估,而所能发掘的问题也是多层面的。
1.3 评估流程
二. 面临的威胁
2.1 跨站脚本
跨站脚本攻击全称为 Cross Site Script,普通缩写为 XSS。此漏洞是由于应用程序在 服务器端获取用户提交的数据时, 没有对内容进行验证。 使得攻击者精心构造的恶意脚本在 普通
web应用防护系统的浏览器中得到执行,除了可以窃取其他用户、管理员的Cookie 外,还可以进行 挂马,使得更多的访问者感染恶意代码。在Web 2.0 技术流行的今天,跨站脚本漏洞还有可 能被蠕虫利用,进行大规模的攻击,危害很大
此类洞的根本原因是,开辟人员在编写应用程序时,对用户提交的数据过滤的不够 严格, 或者未过滤。 由于考虑在实际开辟中需要过滤的内容比较多,可能会有遗漏,因此我

们建议开辟人在对用户输入的变量进行检查时, 使用白名单方式, 即,检查用户传入的变 是否是系统允许的类型,如果不是,就提示错误,直到用户传入合法的数据。
2.2 注入攻击
注入攻击中最常见的是 SQL 注入,此攻击类型是由于应用程序在服务器端获取用户提 交的数据时, 没有对内容进行严格验证, 就拼接到 SQL 语句中执行。 攻击者可以精心构造特 定的 SQL 语句使服务器执行, 从而进行未授权的数据修改, 甚至在数据库服务器上执行系统 命令,对 Web 站点的安全造成严重威胁。
类漏洞的根本原因是,开辟人员在编写应用程序时,未使用安全的方式执行SQL 而使用了拼接的方式将变量输入到 SQL 语句中。 防范 SQL 注入的最好方法是, 修改应用 程序代码,使用安全的方式执行 SQL 查询,例如:使用PreparedStatement 方式。
2.3 越权操作
越权操作通常是由于应用程序在编写时,对身份验证部份考虑的不全面。越权操作可 以分为水平和垂直两个方面:
水平越权是指: 部份页面未对访问者的角进行严格检查, A 用户可能利用应用程序的 漏洞,以访问到B 用户的数据,进行越权查看,修改,甚至删除。此类越权操作可能导致 用户信息泄漏, 或者被恶意篡改, 严重影响网站的形象。 如果发生在存放有重要数据的系 中,可能会导致直接或者间接经济损失,甚至引起法律纠纷。
垂直权是指:部份页面未对访问者的角进行严格区分,普通用户可能利用应用程 的漏洞, 将自己提升到高一级用户的权限, 例如管理员权限。 此类越权操作可能导致管理 限泄漏, 攻击者用管理员权限进行一些非法操作, 严重影响数据的安全性。 如果管理员
并有其他漏洞,例如:图片上传漏洞,攻击者可以向系统中上传webshell,进一步 提升权,最终获得网站服务器的管理员权限,危害很大。
2.4 文件上传
文件传漏洞指:开辟人员编写应用程序时,未对用户上传的文件的扩展名进行严格 检查,从而导致攻击者上传 webshell,获取到网站的权限。文件上传大多数是由于开辟 员的疏忽或者对安全的理解不深引起的。 例如: 开辟人员只过滤了 asp 扩展名的文件, 而 未过滤 asacer 扩展名的文件, 而 asa、cer 扩展名的文件也会被asp.dll 解析,从而导致 webshell 被上传。
建议开辟人员在对用户上传的文件进行操作时,严格检查扩展名,与防范XSS 的方法 类似 也使用白名单方式, 例如: 只允许用户上传 jpg、gif、bmp、zip、rar 扩展名的文件, 余扩展名的文件禁止上传。

信息漏大致分为两类:一类是由于应用程序编写时对错误处理方便考虑不全面,使 得用户
提交非法数据时应用程序报错,在错误信息中可能包含大量操作系统版本、Web 服务 器版、 网站在服务器上的绝对路径等敏感信息。 此类型漏洞攻击者可能无法直接利用, 但 和其漏洞结合起来,就会对成功入侵起到很大的匡助。
还有一类是由于网站维护人员的疏忽,或者管理不规范,使得一些测试页面或者备份 未及时删除,或者网页源代码中的注释过于详细,都可以不同程度的泄漏网站的信息。 为攻击者获取网站权限创造便利条件。
2.6 第三方应用程序安全性
由于互联网已经发展的很成熟,不少开辟人员在开辟某些模块时可能会上网搜索一些 现成的代码, 将其加入到自己的程序中, 但由于网络上开辟人员的水平层次不齐, 不少代码 的安性很差,而开辟人员将这些程序嵌入到自己的程序中,会导致安全问题产生,如  fckeditorewebeditor 等应程序在历史上就发现过不少漏洞, 成为不少攻击者的突破口。
建议系统上线前,要严格检测每一个模块的安全性,开辟人员尽量不随便使用网络 上的不成的代码,如果使用,使用前需要进行严格的安全检查。
类似需要引起注意的是,不少网站的首页都嵌入了一些应用,而这些应用由第三方 厂商提供,例如: XXX 客服系统,我们的网站在引用这些应用时,需要在我们的首页中嵌入 一些代码, 如果第三方厂商的网站浮现了安全问题, 那末就会直接影响到我们的网站的安全
建议使用此类第三方应用程序时,一定要确认厂商的规模及资质,尽量少嵌入第三 方厂商的程序,以降低风险。
三. 评估方式
3.1 外部评估
评估是指测试人员由外部发起的、针对服务器和应用服务的远程评估工作,主要 摹拟来自外部的恶意扫描等行为,以此发现暴露于网络上的安全问题
3.1.1 操作系统及应用服务安全性
操作系统及应用服务器的安全性主要通过使用远程安全评估系统对操作系统和应用服
进行远程的安全测试, 例如: 极光远程安全评估系统等商业产品, 测试中包含了常见 的安全问题:

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。