首页 工作计划 工作总结 事迹材料 心得体会 述职报告 疫情防控 思想汇报 自查报告 党建材料 策划方案 教案设计 范文大全
  • 主题教育
  • 党课下载
  • 党史学习
  • 振兴乡镇
  • 工作汇报
  • 不忘初心
  • 规章制度
  • 谈话记录
  • 扫黑除恶
  • 共同富裕
  • 脱贫攻坚
  • 整改报告
  • 工作要点
  • 对照材料
  • 调查报告
  • 教育整顿
  • 观后感
  • 申请书
  • 讲话稿
  • 致辞稿
  • 评语
  • 口号
  • 发言稿
  • 读后感
  • 治国理政
  • 学习强国
  • 公文范文
  • WEB安全评估与防护方法和思路分析

    时间:2023-05-29 14:30:04 来源:正远范文网 本文已影响 正远范文网手机站

    摘 要:随着 WEB 应用的快速发展,WEB 应用中所存在的安全问题也暴露得越来越明显。 本文对 WEB 安全评估与传统评估服务的 区别以及评估流程、WEB 应用中常见的几种威胁分别做了介绍,并详细讲解了WEB安全评估方式与防护策略的应用。

    关键词:WEB 安全 评估 防护

    一、引言

    随着用户对客户端便利性的要求,加上服务提供方对减少客户端开发成本和维护成本的期望,越来越多的应用已经转为 B/S(浏览器 / 服务器)结构。由于用户对页面展现效果和易用性的 要求越来越高,WEB 2.0 技术的应用越来越广泛,这样不但促进了 WEB 应用的快速发展,同时也使 WEB 应用中所存在的安全问题越来越明显的暴露出来。

    在这种背景条件下,除了越来越多的站点因安全问题而被攻击 者攻陷,导致重要信息泄漏,甚至成为傀儡主机,大量傀儡主机被攻击者利用发动 DDOS(分布式拒绝服务攻击)。客户端也面临着很多安全问题,恶意页面的垃圾信息传播、网页挂马导致的恶意程序的传播等等。

    二、概述

    1.什么是 WEB 安全评估。WEB 安全评估主要在客户的WEB平台上,针对目前流行的 WEB 安全问题分别从外部和内部进行黑盒和白盒安全评估。

    根据 WEB 多层面组成的特性,通过对 WEB 的每一个层面进 行评估和综合的关联分析,从而查找 WEB 站点中可能存在的安全问 题和安全隐患。

    2.WEB安全评估与传统评估服务的区别。与传统的系统层面的评估不同,WEB 站点的安全评估更加注重 “关联性”。

    在传统的系统层评估中,评估方向以系统自身安全性和策略的完善程度作为主要的评估方向,目标仅在于揭露系统配置上的缺陷。

    而在 WEB 站点评估中,除了需要关注系统层面的安全问题外,还需要关注系统组件及第三方应用程序设计的安全性。而在WEB站点中,安全问题也不再像系统安全问题那样只具备单一的层面,而是多个层面叠加产生,因此 WEB 安全评估还需要更加注重各个层面安全问题的关联性,将这些问题进行必要的关联分析后来确认WEB站点整体的风险。

    从这方面来说,WEB安全评估从人力到技术等各个方面的投入 都要大于传统的系统安全评估,而其所能发掘的问题也是多层面的。

    三、面临的威胁

    1.跨站脚本。跨站脚本攻击全称为 Cross Site Script,一般缩写为 XSS。此漏洞是由于应用程序在服务器端获取用户提交的数据时,没有对内容进行验证,使得攻击者精心构造的恶意脚本在普通用户的浏览器中得到执行,除了可以窃取其他用户、管理员的Cookie外,还可以 进行挂马,使得更多的访问者感染恶意代码。在WEB 2.0技术流 行的今天,跨站脚本漏洞还有可能被蠕虫利用,进行大规模的攻击,危害很大。

    此类漏洞的根本原因是,开发人员在编写应用程序时,对用户提交的数据过滤不够严格,或者未过滤。由于考虑在实际开发中需要过滤的内容比较多,可能会有遗漏,因此我们建议开发人员在对用户输 入的变量进行检查时,使用白名单方式,即检查用户传入的变量是否 是系统允许的类型,如果不是,就提示错误,直到用户传入合法的数据。

    2.注入攻击。注入攻击中最常见的是 SQL 注入,此攻击类型是由于应用程序 在服务器端获取用户提交的数据时,没有对内容进行严格验证,就拼接到 SQL 语句中执行。攻击者可以精心构造特定的 SQL 语句使服务器执行,从而进行未授权的数据修改,甚至在数据库服务器上执行系统命令,对 WEB 站点的安全造成严重威胁。

    此类漏洞的根本原因是,开发人员在编写应用程序时,未使用安全的方式执行 SQL 查询,而使用了拼接的方式将变量输入到 SQL语句中。防范 SQL 注入的最好方法是,修改应用程序代码,使用安全的方式执行 SQL 查询,例如 : 使用 PreparedStatement 方式。

    3.越权操作。越权操作通常是由于应用程序在编写时,对身份验证部分考虑的不全面。越权操作可以分为水平和垂直两个方面:

    水平越权是指 : 部分页面未对访问者的角色进行严格检查,A 用 户可能利用应用程序的漏洞,可以访问到 B 用户的数据,进行越权 查看,修改,甚至删除。此类越权操作可能导致用户信息泄漏,或 者被恶意篡改,严重影响网站的形象。如果发生在存放有重要数据 的系统中,可能会导致直接或间接经济损失,甚至引发法律纠纷。

    垂直越权是指 : 部分页面未对访问者的角色进行严格区分,普通用户可能利用应用程序的漏洞,将自己提升到高一级用户的权限, 例如管理员权限。此类越权操作可能导致管理员权限泄漏,攻击者 用管理员权限进行一些非法操作,严重影响数据的安全性。如果管 理员后台合并有其他漏洞,例如 : 图片上传漏洞,攻击者可以向系统 中上传 webshell,进一步提升权限,最终获得网站服务器的管理员 权限,危害很大。

    4.文件上传。文件上传漏洞指 : 开发人员编写应用程序时,未对用户上传的文件扩展名进行严格检查,从而导致攻击者上传 webshell,获取到网 站的权限。文件上传大多数是由于开发人员的疏忽或者对安全的理 解不深引发的。例如 : 开发人员只过滤了asp 扩展名的文件,而未过滤 asa、cer 扩展名的文件,而 asa、cer 扩展名的文件也会被 asp. dll 解析,从而导致 webshell 被上传。

    建议开发人员在对用户上传的文件进行操作时,严格检查扩展名,与防范 XSS 的方法类似,也使用白名单方式,例如 : 只允许用 户上传 jpg、gif、bmp、zip、rar 扩展名的文件,其余扩展名的文件禁止上传。

    5.第三方应用程序安全性。由于互联网已经发展的很成熟,很多开发人员在开发某些模块 时可能会上网搜索一些现成的代码,将其加入到自己的程序中,但 由于网络上开发人员的水平层次不齊,很多代码的安全性很差,而开 发人员将这些程序嵌入到自己的程序中,会导致安全问题产生,如 fckeditor、ewebeditor 等应用程序在历史上就发现过很多漏洞,成 为很多攻击者的突破口。

    建议在系统上线前,要严格检测每一个模块的安全性,开发人 员尽量不随便使用网络上的不成熟的代码,如果使用,使用前需要 进行严格的安全检查。

    类似的需要引起注意的是,很多网站的首页都嵌入了一些应用, 而这些应用由第三方厂商提供,例如 :XXX 客服系统,我们的网站 在引用这些应用时,需要在我们的首页中嵌入一些代码,如果第三方厂商的网站出现了安全问题,那么就会直接影响到我们的网站的 安全性。

    建议在使用此类第三方应用程序时,一定要确认厂商的规模及资质,尽量少嵌入第三方厂商的程序,以降低风险。

    四、评估方式

    1.外部评估。外部评估是指测试人员由外部发起的、针对服务器和应用服务 的远程评估工作,主要模拟来自外部的恶意扫描等行为,以此发现 暴露于网络上的安全问题。

    1.1操作系统及应用服务安全性。操作系统及应用服务器的安全性主要通过使用远程安全评估系 统对操作系统和应用服务层面进行遠程的安全测试,例如 : 极光远 程安全评估系统等商业产品,测试中包含了常见的安全问题:

    远程缓冲区溢出漏洞

    远程拒绝服务漏洞

    远程身份验证漏洞

    ......

    1.2WEB 服务安全性。WEB 服务的外部安全性主要通过使用远程 WEB 评估系统对站 点进行远程的安全测试,测试中包含了常见的 WEB 安全问题:

    跨站脚本漏洞

    文件包含漏洞

    命令执行漏洞

    目录遍历漏洞

    暴力破解漏洞

    …………

    此部分工作也主要使用 WEB 安全评估系统进行,由于网站上 页面数量和连接数量较多,使用自动化工具可以明显提高工作效率,防止遗漏。而且 WEB 安全评估系统都内置了大量的插件,对已知的 WEB 安全漏洞可以快速发现。

    除了使用 WEB 安全评估系统外,还需要人工进行辅助分析, 一方面需要确认自动化工具扫描结果的准确性,是否误报 ; 另一方面 需要对一些工具无法检查的地方进行补充,最大化的发现网站存在 的问题。

    2.内部评估。内部评估是指从内部发起针对服务器配置、策略及代码本身的安全检查。相对外部安全的黑盒测试方式来讲,内部评估更近似于 白盒测试,注重功能性及安全性的检查,从根源上发现安全隐患。

    2.1系统安全策略检查。针对操作系统层面,使用安全策略检查工具进行检查,需要检查的内容如下:

    用户管理 : 是否有多余用户,例如 : 开发用户,测试用户

    口令策略 : 是否设置口令策略,强制用户使用强壮的密码

    不必要服务 : 是否存在不需要的网络服务,例如 :DHCP、DNS、FrontPage 扩展

    共享连接 : 是否存在不需要的共享连接 : 例如 :windows 默认共享,unix 的 NFS 共享

    文件系统 : 是否使用可靠的文件系统,例如 :NTFS 文件系统

    权限设置 : 是否对网络服务的配置文件进行了正确的设置,防止非 法用户篡改,提权

    访问控制 : 是否对访问者的 IP 地址进行了限制

    审计设置 : 是否对网络服务启用了审计,审计日志的权限是否进行 了正确的设置

    2.2WEB 服务配置检查。除了操作系统外,还需要对 WEB 服务的配置进行检测,需要检查的内容如下:

    WEB 服务的运行身份是否正确设置

    WEB 服务是否设置了必要的 ACL

    WEB 服务是否对隐秘页面使用 SSL 传输加密

    WEB 服务是否加强了日志记录内容

    WEB 服务是否进行了严格的权限设置

    …………

    2.3数据库安全检查。网站评估中对数据库权限进行检测,是为了查看数据库中权限 是否得到了正确的设置,一方面保护数据库中数据的安全,防止未 授权用户访问 ; 另一方面防止数据库出现安全问题后,进一步影响数 据库服务器操作系统的安全,需要检查的内容如下:

    数据库是否为应用程序建立了单独的账号,避免应用程序使用数据库管理员等高权限的用户访问数据库。

    数据库是否为各个用户划分了角色,使不同的用户访问数据库对象 时权限有所区分。

    对不用的用户和角色赋予权限时,是否只赋予了最低的权限。

    是否启用了访问控制列表 ACL,防止无关用户连接数据库端口。

    2.4代码安全性检查。

    2.4.1挂马检测。攻击者在发现网站存在漏洞,进行利用,获得一定权限后,向 动态网页文件或数据库中添加特定的字符串,正常用户在访问该网 页后,执行恶意代码,可能导致感染病毒。在网站评估中需要对网 站的所有页面进行检测,确认是否有特定的恶意字符串被插入。

    此类检查可以使用一些网络安全产品完成,如 : Web 应用防火墙或者 Web扫描。

    2.4.2WebShell检测。WebShell 是站长用于管理服务器的一种 asp/aspx/php/jsp 等 应用程序,可以进行在线编辑文件、上传下载文件、查看数据库、 执行任意程序命令等操作。如果被攻击者利用,可以控制服务器。 通常攻击者在发现应用程序有漏洞时,会尝试上传 WebShell,因此 在网站安全评估中需要对网站所在目录中可能存在的 WebShell 进行检测。

    此类检查可以使用一些网络安全产品完成。如 : Web 应用防火墙或者 Web扫描。

    2.4.3代码审计。代码审计在安全开发中是很重要的一个环节,远程漏洞扫描和 渗透测试只是黑盒测试,对很多漏洞可能无法检测。目前国内大多 数企业的测试部门由于对安全的理解不深,在传统软件质量测试中 无法发现代码中存在的安全问题。

    进行一次成功的代码审计不仅可以发现应用程序编写时产生的安 全漏洞及不规范的代码,督促开发人员及时修正。同时也能提高开发人 员的素质,从而提升应用程序的质量。

    五、防护策略

    作为信息系统的一个典型应用,网站的安全防护与信息系统一 样,涉及的层面比较多,可分为网络层面、系统层面、一般服务组件如数据库、通用软件、常用软件等、特定应用,对于前三类防护 手段是通用的,我们使用的是传统的防护技术。

    对网络、通信协议、操作系统、数据库等层面上的防护可以认为是通用的,传统的边界安全设备,如防火墙、安全网关、IDS /IPS、 审计产品、终端防护产品等,作为网站整体安全策略中不可缺少的 重要模块,其防护效果是比较有效的。

    但在对 WEB 站点采用传统技术手段进行安全防护的同时,也要充分考虑如何针对用户特定应用的应用层面脆弱性及威胁进行安 全保障。由于 WEB 应用程序本身具备个性化的特点,因此如果需 要减少 WEB 应用程序本身所面临的威胁,仅仅依靠通用产品就显 得多少有些力不从心了。

    因此,对 WEB 应用程序的防护并不能单单考虑被动的、通用的 防护方式,而需要以更为主动的方式进行,如在程序的设计过程中功能安全性的考虑,在开发过程中的安全测试及上线前的代码审计等工作。通过这样一系列工作将安全渗透到每一个环节中,增加安全的主动性,以此达到应用程序的安全、稳定。

    作者简介:高阳(1988—),男,国网新疆电力公司信息通信公司,助理工程师,毕业于东北电力大学,主要研究方向为信息安全及技术;靳扬(1991—),男,国网新疆电力公司信息通信公司,毕业于北京理工大学,主要研究方向为信息安全及技术;孔振(1988—),男,国网新疆电力公司信息通信公司,助理工程师,毕业于哈尔滨工业大学,主要研究方向为信息安全及技术;李浩升(1993—),男,国网新疆电力公司信息通信公司,毕业于中南大学,主要研究方向为信息安全及技术;姚伟(1984—),男,北京神州绿盟科技有限公司,安全顾问,毕业于北京建筑工程学院,主要研究方向为信息安全及技术。

    推荐访问:思路 防护 评估 方法 分析