​随着互联网新技术的涌现,网站的架构技术和涉及的资源也日益多样且复杂化。这对网站各类资源的防护工作也提出了更高的挑战和更细粒度的需求。

我们经常碰到的用户真实需求包括:

  • 我的 CMS 制作系统,会不会发布内容有问题的网页文件?
  • 我的网站允许上传图片和附件文件,这些功能会不会被利用,导致坏人偷偷上传了木马文件?
  • 万一有恶意脚本文件假冒成图片文件传上来怎么办?
  • 除了网页文件,其他一些关键文件 (比如配置文件) 也很重要,会不会被改了?

    ……

这些问题本质上是由不同资源的特点决定的,不同的资源需要有不同的检查要素。试列举常见的资源文件检查要素如下:

  • 常规资源文件 (html/css/js等)

    网页内容是否有敏感字眼?来源是否正常?
  • 脚本文件 (php/jsp/asxp等)

    文件是否会被放在网站目录之外无法监管的位置?现存脚本是否被非法篡改?
  • 用户产生的文件 (UGC文件)

    文件类型是否为 Web 应用所允许?如果类型没问题,该内容是否有害?
  • 配置文件 (config类的文件)

    修改方式是否合理?最好有详尽的修改记录。

总结几类常见资源文件的防护关注点——

iGuard6.0 网页防篡改系统能为以上各种用户场景提供丰富的、模块化的检查方式,可以通过灵活自由的配置实现网站资源的全方位防护。

以下截图仅为举例示范之用,实际场景肯定更为复杂多样。我们来看看 iGuard6.0 是如何解决以上 Web 防护需求的。

常规文件

来源是否正常的问题,可以使用 iGuard6.0 的 可信更新指定更新 模块,设置网站的目录只能由特定用户加特定进程具有合法写入的权限,拒绝其他所有更新途径。

内容文本是否正常问题,则可通过 iGuard6.0 的 发布扫描驱动扫描 模块,设置需要过滤警告的关键字文本。除了 iGuard6.0 内置过滤文字外,用户更可以自行设置自己的过滤监控文本。

脚本文件

由于脚本文件具有代码执行能力,所以关键性的脚本文件是否会被放到网站目录之外的问题,也常常会被网站管理员特别关注。可以使用 iGuard6.0 的 驱动过滤 模块,在全局范围内设置禁止产生某 (高) 些 (危) 类型的脚本文件。只有被认可的进程才能在网站目录下更新脚本文件,除此之外的操作均视作越权,可被直接禁止。

对现存脚本文件的完整性,可以使用 iGuard6.0 的 内嵌比对 模块,通过和原始文件的内容摘要作对比,确保现存文件未被非法篡改。

用户文件

在互动性越来越高的当下,网站往往不可避免地都具有因用户交互而产生的文件,这类文件的过滤和防护,一直是网站安全的重要环节。对这类资源的忧虑主要聚焦在:用户上传的文件类型是否超出设定的范围;文件类型即使没有超出限定范围,是否伪装文件或者隐藏了高危内容。

iGuard6.0 在这两方面都做了细致的考虑。如通过 驱动过滤 模块,严格限制中间件进程允许生成的文件类型,中间件进程只能在指定的上传目录下,产生无法作为脚本执行的低危类型文件,如下图中的 .gif.jpg.doc

如果希望更严密地审核上传文件的内容,可以启用 驱动扫描 模块,在上传目录有文件产生时,对文件的实际类型和内容,做进一步检查,并可以设定不同的后续处理。

配置文件

配置文件并不直接属于网页文件,但是它们也是网站资源的有机组成部分。在实际的 Web 安全渗透案例中,不乏通过修改网站配置文件,进而达成篡改网站的效果。所以,这个比较容易被人忽略的网站资源,也应被纳入防护和监控中。

对配置文件的管控,取决于实际情况,可宽松可严格。宽松的场景可以只监控配置文件的更改,但每次修改可以有快照备份;严格的则可以限制只有特定进程特定用户可以修改配置文件,此外任何组合操作都会被直接拒绝。


以上举例都是最基础的用例,实际场景中,iGuard6.0 网页防篡改系统根据具体需求,可以有更复杂的相互搭配使用组合,为网站资源防护提供更整体的防护。(朱筱丹 | 天存信息)

iGuard6.0 — 各适其用的网站防护体系的更多相关文章

  1. 从 0 到 1,Java Web 网站架构搭建的技术演进

    初始搭建 最开始,就是各种框架一搭,然后扔到 Tomcat 容器中跑,这时候我们的文件.数据库.应用都在一个服务器上. 服务分离 随着系统的上线,用户量也会逐步上升,很快一台服务器已经满足不了系统的负 ...

  2. 用asp.net core 2.0 + EFCore.Sqlite做个小网站

    许久没用C#写程序.听说进来发生大事,.NetCore2.0发布了,于是便学习了下,本站也应运而生. 大多数的地方按照官方的文档起步走就可以了,这里谈谈遇到的几个坑. 首先,本站是基于ASP.NetC ...

  3. Oauth2.0协议曝漏洞 大量社交网站隐私或遭泄露

    2014年是IT业界不平常的一年,XP停服.IE长老漏洞(秘狐)等等层出不穷,现在,社交网络也爆出惊天漏洞:Oauth2.0协议漏洞 继OpenSSL漏洞后,开源安全软件再曝安全漏洞.新加坡南洋理工大 ...

  4. 从0到1,Java Web网站架构搭建的技术演进

    俗话说得好,冰冻三尺非一日之寒,滴水穿石非一日之功,罗马也不是一天就建成的,对于开发人员来说,一个好的架构并不是一蹴而就的. 初始搭建 最开始,就是各种框架一搭,然后扔到 Tomcat 容器中跑,这时 ...

  5. phpStudy8.1.0.1配置子域名多网站

    版本 这里phpStudy版本为8.1.0.1: 步骤 假设域名为:domain.com:公网IP地址为:42.33.33.33 首先云解析中配置,添加子域名A记录直接指向你的公网IP: ep.dom ...

  6. IIS7.0配置HTTPS安全类型的网站

    HTTPS,它是一个安全通信通道,是基于HTTP开发,用于在客户计算机和服务器之间交换信息.它使用安全套接字 层(SSL)进行信息交换,简单来说它是HTTP的安全版.主要在一些对安全性要求比较高的网站 ...

  7. nginx + lua 构建网站防护waf(一)

    最近在帮朋友维护一个站点.这个站点是一个Php网站.坑爹的是用IIS做代理.出了无数问题之后忍无可忍,于是要我帮他切换到nginx上面,前期被不断的扫描和CC.最后找到了waf这样一个解决方案缓解一下 ...

  8. 精通Web Analytics 2.0 (3) 第一章:网站分析的新奇世界

    精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第一章:Web Analytics 2.0的新奇世界 多年以来,我们很清楚的知道,网站分析能够真正的改革网络上业务的完成方式.那 ...

  9. NET平台4.0 发布网站流程及出错总结

    1.进入IIS设置,在控制面板中选择“管理工具”,进入后选择 “Internet 信息服务(IIS)管理器” 2.点击[添加]应用程序池,根据版本选择framework 3.添加网站 ,右击网站,添加 ...

随机推荐

  1. 使用Postman测试 参数为实体类

    Body-->raw-->json

  2. WPF设计自定义控件

    在实际工作中,WPF提供的控件并不能完全满足不同的设计需求.这时,需要我们设计自定义控件. 这里LZ总结一些自己的思路,特性如下: Coupling UITemplate Behaviour Func ...

  3. tomcat中修改Web站点的默认根目录

    转自:http://blog.csdn.net/wzqcongcong/article/details/6387907 想把Tomcat的默认网站根目录修改成自己指定的目录,比如:F:/MyWeb.这 ...

  4. 高德地图——2D转换3D

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script ty ...

  5. 修改python import模块中的变量

    可以直接通过 模块名.变量名=xx 的方式修改模块中的全局变量,测试代码如下 模块:test_model.py x = 111 def inc_x(): global x x = x + 1 测试脚本 ...

  6. linux shell 删除满足正则表达式的文件

    用find配合xargs rm find . -type f -name "to_delete_file_[a-z]_*_[0-9].jpg" | xargs rm

  7. Learning ROS: Using a C++ class in Python

    http://wiki.ros.org/ROS/Tutorials/Using%20a%20C%2B%2B%20class%20in%20Python This tutorial illustrate ...

  8. uniapp H5 打包并部署到 nginx

    个人也是了百度了挺久的了,花费的时间( 俩个半小时 ) uniapp 的打包首先要先配置,配置好了才能去进行打包,如图所示. 这只是第一步. 注意: 1.运行基础路径最好用 ./ ,如果配置了其他请自 ...

  9. vue2+vite初体验

    前言 自从 vite 发布之后,社区赞誉无数,而我也一直心水 vite 的轻量快速的热重载的特性,特别是公司的项目巨大,已经严重拖慢了热重载的速度了,每次热重载都要等上一小会,所以急需寻找一个解决方案 ...

  10. Python之requests模块-cookie

    cookie并不陌生,与session一样,能够让http请求前后保持状态.与session不同之处,在于cookie数据仅保存于客户端.requests也提供了相应到方法去处理cookie. 在py ...