近年来,网络安全实战演习受到各大关基单位的高度关注。对于网络安全实战演习的防守方,防火墙、Web应用防火墙、态势感知、EDR、蜜罐等都是较为常见的防守工具,而网页防篡改系统则鲜有露脸的机会——

很多人认为,网页防篡改系统只是用来保护门户网站的,特别是针对静态门户网站时,才有它的价值。

而在网络安全实战演习中,攻击队根本不会将火力指向网页防篡改系统的保护对象。因此,网页防篡改系统在这个场景下缺乏应用价值。

之所以产生这样的观念,和网页防篡改产品的现状有着很大的关系。目前,市场上大部分的网页防篡改产品都着眼于在网页篡改发生的前后,对篡改行为或篡改后果进行处置。这种“头痛医头,脚痛医脚”的思路让网页防篡改产品在不以篡改网页为攻击目标的场景中显得缺乏实用价值。

一个 Web 应用之所以会发生文件被篡改的事件,通常是管理、运维、对抗能力等多方面原因共同促就的。所以把文件“锁住”或是发现篡改即时恢复,是通过抑制篡改现象来实现狭义上的防篡改。而从安全治理的角度出发,就需要细究造成篡改的原因,立足于 Web 应用安全的整体视角,从管理、运维、对抗能力多个维度上入手治理 Web 应用系统的缺陷和隐患。

如果我们从攻击者的视角来分析网页篡改,就不难发现:实施一次篡改攻击,其实意味着攻击者已经击穿了防守方的防线,而不只是在外围隔靴搔痒。基于当下防守方在网络安全实战演习中的防护策略,任何外网应用系统上的网页防篡改系统如果侦测到了篡改攻击,那么必然意味着攻击者已经掌握了该应用系统的控制权。即便攻击者因为网页防篡改系统的阻拦,并未成功实施篡改攻击,但通过其所掌握的应用系统控制权会造成内网横移等更严重的安全问题。

因此在网络安全实战演习中,网页防篡改系统首先扮演了哨兵的角色。Web 应用系统作为防守的前沿阵地,所有的攻击火力都是由此展开和深入的。及时判断 Web 应用系统是否被攻陷,对于防守方来说是启动应急处置时非常重要的信号。

网页防篡改系统是网站安全的最后一道防线

防篡改既是终点 更是起点



对于一些财大气粗的防守方来说,安全产品上的很全,因此,网页防篡改系统的哨兵作用,就被态势感知、HIDS 等其他产品所取代。但由于 HVV 范围的扩大和常态化,很多防守方并没有靠“银弹”来打造防线的实力。而网页防篡改系统是大部分等保3级以上单位必备的安全产品,因此,打破“网页防篡改系统只能用来保护网页”的固有观念,将网页防篡改系统部署到 HVV 涉及的 Web 应用系统上,保护各类能通过互联网访问到的文件,进而通过监测这些文件的异常变化来让网页防篡改系统成为 HVV 哨兵,不失为一种具有创意的利旧方案。

当然,网页防篡改系统要能在 HVV 中扮演好哨兵的角色,还需要产品本身提供除了文件写保护或文件恢复之外,更丰富的功能。例如,在 iGuard6.0 中,防护对象不再局限于网页文件,中间件配置文件、上传文件、应用系统相关文件 (在 iGuard6.0 中称为动态文件) 等各种通过互联网能够接触到的文件都能被当做防护对象监测并防护起来。同时,iGuard6.0 的防护机制也分为常态防护和对抗防护两种类型。常态防护机制包括对 WebShell 的排查和清理、对文件完整性和合法驻留权进行定时检查、检查文件类型与内容是否一致等不依赖于攻击而触发的防护手段,因此只要通过 Lua 工具箱等辅助工具的灵活配置使用,就可以作为发现文件遭篡改后的应急处置手段。对抗防护机制不仅仅可以监测并阻止篡改,同时也对异常操作主体 (通常为进程) 详细信息、异常操作行为详情 (例如:被篡改文件快照) 等关键信息进行记录,可以为事后的研判溯源提供数据支撑。

将 iGuard 作为 HVV 哨兵,在 2021 年的 HVV 中也得到了一些实际验证。在 2021 年 HVV 期间,某大型企业在其近 500 台互联网可访问的服务器上部署了 iGuard,而在其中某一台服务器上产生了一次告警,引起该企业客户的高度重视,随即召集了与该服务器和应用系统相关的厂商以 iGuard 记录的攻击详情为线索进行研判,最后成功追溯出攻击者的攻击路径:攻击者拿到了应用的内部账号,绕过了交互验证,成功登录应用;应用系统内部有一个废弃组件具有上传功能,攻击者利用该上传功能上传文件,被 iGuard 拦截并记录了上传文件的详细信息。

网页防篡改系统虽然并不是为 HVV 量身打造的安全产品,但如果应用得当,它在 HVV 中也能发挥不小的作用。在 HVV 常态化的未来,巧妙使用每一个安全产品,使之既能在平时稳定可靠地履行它本该履行的安全职责,又能在战时发挥出奇兵的作用,才能让每一笔安全上的投入都能产生出尽可能大的价值。(天存信息)

HVV奇兵—网页防篡改系统在网络安全实战演习中的妙用(上)的更多相关文章

  1. 基于Volley,Gson封装支持JWT无状态安全验证和数据防篡改的GsonRequest网络请求类

    这段时间做新的Android项目的client和和REST API通讯框架架构设计.使用了非常多新技术,终于的方案也相当简洁优雅.client仅仅须要传Java对象,server端返回json字符串, ...

  2. Java工作流引擎关于数据加密流程(MD5数据加密防篡改)

    关键字: 驰骋工作流程快速开发平台 工作流程管理系统 工作流引擎 asp.net工作流引擎 java工作流引擎. 开发者表单  拖拽式表单 工作流系统 流程数据加密  md5  数据保密流程数据防篡改 ...

  3. JavaScript中的防篡改对象

    由于JavaScript共享的特性,任何对象都可以被放在同一环境下运行的代码修改. 例如: var person = {name:"caibin'} person.age = 21; 即使第 ...

  4. WebApi系列~安全校验中的防篡改和防复用

    回到目录 web api越来越火,因为它的跨平台,因为它的简单,因为它支持xml,json等流行的数据协议,我们在开发基于面向服务的API时,有个问题一直在困扰着我们,那就是数据的安全,请求的安全,一 ...

  5. 01WebApi防篡改机制---HMAC机制

    防篡改,顾名思义就是防止有人恶意篡改请求数据URL以达到恶意攻击的目的,那要怎么才能实现这样的目的呢? 很简单,将要请求的数据加上合作号.合作Key按规则组织成一个字符串,获取对应的MD5摘要,然后将 ...

  6. 网站如何防Session冒名顶替和cookie防篡改

    做网站难免要面对安全性的问题,诸如sql注入拉,cookie冒名拉,等等,sql注入算是老生常谈,翻翻旧账有不少优秀的帖子在说明这个问题,所以我们来说说Session冒名顶替的风险以及应对的办法. 首 ...

  7. cookie防篡改

    概述: 除了 session 外,一般不会在客户端的 cookies 里保存过于重要的凭据,但电商应用有时候不可避免地存储了一些敏感数据到客户端,当然不希望被篡改. 目的: 让服务器端能识别cooki ...

  8. 直接拨号、将电话号码传入拨号程序、调用拨号程序、调用系统浏览器浏览网页、调用系统程序查看联系人、显示系统设置界面和显示Wi-Fi设置界面代码

    直接拨号.将电话号码传入拨号程序.调用拨号程序.调用系统浏览器浏览网页.调用系统程序查看联系人.显示系统设置界面和显示Wi-Fi设置界面代码 拨打号码的代码如下: Intent callIntent= ...

  9. WebAPI 用户认证防篡改实现HMAC(二)签名验证 AbsBaseAuthenticationAttribute--转

    public class ActionFilter : ActionFilterAttribute      {          public override void OnActionExecu ...

随机推荐

  1. Viterbi 算法 Python实现 [NLP学习一]

    最近思考了一下未来,结合老师的意见,还是决定挑一个方向开始研究了,虽然个人更喜欢鼓捣.深思熟虑后,结合自己的兴趣点,选择了NLP方向,感觉比纯粹的人工智能.大数据之类的方向有趣多了,个人还是不适合纯粹 ...

  2. Decorator装饰器模式个人理解

    对于装饰器模式,其主要是为了:在不改变本体特征的情况下,对其进行包装.装饰,目的是为了补充.扩展.增强其功能. 有三个原则: 不能改变本体的特征 要对本体的功能进行扩展 装饰器脱离了本体则没有任何含义 ...

  3. JVM-直接内存(Direct Memory)

    1.直接内存概述 直接内存不是虚拟机运行时数据区的一部分,也不是<Java虚拟机规范>中定义的内存区域. 直接内存是在Java堆外的,直接向系统申请的内存区间. 来源于NIO,通过存在堆中 ...

  4. Android 开发进程 0.35 升级编译版本Android12

    Android12升级 工作需要升级到编译版本31 在这里记录一下遇到的问题. 错误:Manifest merger failedManifest merger failed 这个问题通常搜到的答案是 ...

  5. 憋了很久,终于弄懂什么是IOC(控制反转)

    导航 共享充电宝 IOC思想 复杂的依赖关系 IOC定义 Spring中的IOC IOC与工厂模式 IOC容器的技术剖析 结语 参考   本节是摘自<Spring Boot 实战纪实>的第 ...

  6. requirejs的加载原理 - 场景1. 定义一个require依赖a模块

    我们学习一个新的技术,熟练的使用之后,就应该去探索它的原理.这篇文章我们来探索下requirejs的原理. 从4个场景来探索requirejs的原理 场景1. 定义一个require依赖b模块 场景2 ...

  7. WCF服务调用超时错误:套接字连接已中止。这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的。本地套接字超时是“00:05:30”(已解决)

    问题: 线上正式环境调用WCF服务正常,但是每次使用本地测试环境调用WCF服务时长就是出现:套接字连接已中止.这可能是由于处理消息时出错或远程主机超过接收超时或者潜在的网络资源问题导致的.本地套接字超 ...

  8. Multidimension Tools(多维工具)

    多维工具 # Process: 创建 NetCDF 栅格图层 arcpy.MakeNetCDFRasterLayer_md("", "", "&quo ...

  9. 【错误分析】NX error status: 32

    在进行NX 制图里面的表格注释合并单元格时,总是报错NX error status: 32,找了很久都不知道问题所在. 报错提示如下: NXOpen.NXException: NX error sta ...

  10. 最详细的Android SDK下载安装及配置教程-------全文均为引用

    <https://www.cnblogs.com/gufengchen/p/11038029.html>