网络安全之URL过滤

知识改变命运,技术就是要分享,有问题随时联系,免费答疑,欢迎联系!    

URL过滤是一种针对用户的URL请求进行上网控制的技术,通过允许或禁止用户访问某些网页资源,达到规范上网行为和降低安全风险的目的。
URL过滤可以基于URL分类、特定URL等多种方式限制URL访问。URL过滤的主要作用如下:
1、限制访问业务无关网站,提升企业工作效率、减少带宽滥用。
2、限制访问非法或包含不健康内容的网站,使上网行为合法合规。
3、限制访问包含恶意软件以及钓鱼类不安全网站,避免网络遭受攻击。

为什么URL过滤非常重要?

通过浏览网页快速获取信息已经深入你我的工作和生活。但是互联网本身是不安全的,网络资源在带给我们便利的同时,也带给我们前所未有的威胁。威胁包括网络安全层面的,也包括随意使用网络对业务造成的影响:

  • 企业员工在工作时间随意访问社交、视频等与工作无关的网站,严重影响工作效率并且占用网络带宽;甚至存在访问非法网站违反法律的风险。
  • 学校、图书馆等公共机构随意访问不健康网站,触犯法规。
  • 员工无意间访问恶意网站、钓鱼网站,泄露企业或个人机密信息,甚至会带来病毒、木马等威胁攻击。

因此必须对上网行为进行管控,URL过滤就是解决以上问题的方法之一,可通过限制用户访问的URL达到限制网页访问的目的。管理员可以按网站分类禁止访问钓鱼、社交、视频类网站;还可以指定禁止或允许访问的具体URL。

URL过滤如何工作?

URL过滤的基本工作过程就是将URL请求中的URL信息与URL数据库或列表进行比对,如果匹配某条URL则执行对应的响应动作(允许/禁止)。 如果用户通过手动输入或单击搜索引擎链接来访问的URL被禁止,浏览器将被重定向到类似下图的阻止页面。


禁止访问未授权网站

URL数据库或列表可以在设备本地,也可以在云端。一般情况下本地缓存频繁访问的URL,云端覆盖更多URL,当在本地未匹配到URL时再到云端查找,这样可以获得最小的延迟。另外URL数据库或列表的组织方式有多种,包括URL分类、单条URL黑名单、单条URL白名单,具体URL过滤处理流程如下图。


URL过滤工作过程

URL黑白名单

URL黑白名单用于允许或禁止某些特定的URL,处理简单直接,白名单允许访问、黑名单禁止访问。此种方式通常用于对一些已知网站的控制,例如将企业正常使用的IT网站加入白名单、将禁止员工上班时间浏览的论坛加入黑名单。

URL分类

URL分类是URL过滤的核心管控方式。管理员按URL分类指定响应动作,例如禁止访问购物类网站、社交类网站。当用户访问的URL隶属于对应URL分类时,则按该分类的响应动作进行处理。

URL分类分为预定义URL分类、自定义URL分类两种:

预定义URL分类

预定义URL分类是URL过滤功能提供商整理好的URL分类信息,并且定期更新。海量的URL预先划分好归类,例如博彩类、钓鱼类、购物类等等。

预定义URL分类中包含的URL条目数量巨大,逐条查找会影响效率,一般采取“两步走”的方式。第一步,将常用URL及对应的URL分类信息存储到设备本地,先在这些URL中进行查询;如果没有查询到,再进行第二步,远程查询云端的URL分类服务器中的分类信息,URL分类服务器中的信息更全面。

另外本地存储的URL信息是不断学习更新的,不经常访问的URL被老化,并且从URL分类服务器中获取的查询结果也将添加到本地。这种机制减少远程查询,加快URL过滤处理速度。

自定义URL分类

URL新增频繁,预定义分类的更新速度可能无法满足企业的需求;另外企业可能有自己的URL分类策略,希望基于定制的URL分类进行管控。此时管理员就可以创建自定义URL分类,然后在分类中加入URL。

定制URL过滤策略

基于前文所述的工作机制,管理员根据实际需求定制本企业URL过滤策略,常见思路如下:

  • 确定允许的网站:通过白名单或自定义URL分类的方式,维护企业固定允许访问的一些网站,例如企业门户网站、软件升级网站等。确保URL过滤不会意外禁止业务正常所需的网站。
  • 明令禁止的网站:通过黑名单或自定义URL分类的方式,维护企业明确禁止访问的一些网站。确保这些网站不会因为在URL分类中不存在或划分错误等原因,未被禁止。
  • 分类控制:通过预定义URL分类,控制允许、禁止访问的网站分类。尤其恶意软件、钓鱼网站必须禁止,降低安全风险。其他就是根据企业需求控制员工的上网行为,禁止一些不健康网站、影响工作效率的网站等。
  • 细化控制:基于时间段、用户身份等细粒度控制网站访问,例如控制上班时间不允许访问的网站、只允许某个部门员工访问的网站。

URL过滤 vs DNS过滤

URL过滤和DNS过滤都属于Web过滤​,但是控制粒度和实现方式不同。URL过滤是通过提取用户URL请求中URL信息进行过滤,可以控制到网页级别;而DNS过滤是通过提取用户DNS请求中域名信息进行过滤,只能控制到整个域名级别。两者各有应用场景。

例如企业需要禁止员工访问域名为example.news.com的整个网站,就可以选择DNS过滤。但是如果只是想禁止此域名的娱乐版块example.news.com/entertainment,那么就需要使用URL过滤。

再例如,企业识别到一个经常引诱员工访问的恶意网址example.malicious.com/index,此时建议使用DNS过滤禁止example.malicious.com域名,因为所有网页可能都是不安全的。

可能有人会问,URL过滤也可以按域名禁止,但是DNS过滤在早于URL请求阶段的DNS查询阶段进行控制,对设备的性能影响小。另外DNS过滤与业务协议无关,而URL过滤局限在HTTP/HTTPS协议。

URL过滤 vs 应用控制

应用功能功能通过应用识别技术识别流量中的各类应用,从而对流量进行精细化的管控。这里的应用也包含一些Web类应用,例如Facebook应用就承载在www.facebook.com网站。那么应用控制和URL过滤两者的区别是什么呢?

对于Web应用,应用控制是从访问网页的流量中识别应用然后进行控制,URL过滤是从网页所属的URL来控制。也就是应用控制针对的是应用程序,可能多个网页对应同一个应用程序;URL过滤针对的是页面级访问行为。

应用控制更适合细粒度控制应用程序。针对Facebook这类网站,大家往往更熟悉Facebook浏览、Facebook视频、Facebook游戏等应用的名称,如果收集应用对应的URL可能比较困难,往往可能一个应用对应多个URL。此时使用应用控制更方便些,只需要基于Facebook视频、Facebook游戏等应用名字进行配置。

URL过滤更擅长控制用户访问某类网站,或者同一域名下的一批网址。例如,控制用户只能访问Facebook社交网站,不能访问其他社交网站,通过URL过滤更方便。如果使用应用控制,需要配置网站对应的全部应用。

因此应用控制和URL过滤两者各有应用场景,相辅相成。

URL过滤不足以防御所有Web攻击

URL过滤主要通过阻止对已知恶意软件和钓鱼网站的访问,来减少Web攻击事件。但是URL过滤不足以防御所有Web攻击,企业或组织需要考虑完整的Web安全解决方案防御已知和未知威胁。多种安全功能协同工作才能有效防御Web攻击,常用的部署方案如下:

部署集成多种安全功能的下一代防火墙,启用内容过滤功能检测网页内容;启用文件过滤功能控制文件上传下载;启用IPS功能检测木马、恶意软件等攻击;启用反病毒功能检测文件病毒。
与云端协同,实时掌握最新威胁信息,防御未知威胁。华为防火墙可以与云沙箱联动检测高级APT(Advanced Persistent Threat)攻击,检测结果反向刷新防火墙本地的恶意URL或恶意文件列表,提升后续检测效率。
配合SSL加密流量检测功能,对加密HTTPS流量进行检测。
内网终端安装防病毒等安全软件。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/747369.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

bash: sqlplus: command not found 问题解决方法

一、问题描述 在Linux中Oracle安装成功后,首次启动使用时,出现 sqlplus 命令不识别的问题,现象如下: $ sqlplus / as sysdba bash: sqlplus: command not found...二、问题分析 查看环境变量是否正确配置: $ vim .ba…

elasticsearch篇:DSL查询语法

1.DSL查询文档 众所周知,elasticsearch的查询依然是基于JSON风格的DSL来实现的。 1.1. DSL查询分类 Elasticsearch提供了基于JSON的DSL(Domain Specific Language)来定义查询。常见的查询类型包括: 查询所有:查询出…

人工智能入门学习笔记2:人工智能学习资料

一、跟IT大佬学人工智能学习书籍 1、《5000天后的世界》AI扩展,人类无限的可能性 作者:凯文凯利 2、《智能革命》迎接人工智能时代的社会、经济与文化变革 作者:李彦宏 3、《人工智能》AI如何重塑个人、商业与社会的未来图谱 作者&#xf…

Sublime Text简介、下载、安装、汉化、常用插件和激活——《跟老吕学Python编程》附录资料

Sublime Text简介、下载、安装、汉化、常用插件和激活——《跟老吕学Python编程》附录资料 Sublime Text 简介Sublime Text 下载、安装、汉化、常用插件和激活Sublime Text 官网Sublime Text 下载Sublime Text 安装1.安装2.右键菜单3.启动安装4.耐心等待5.安装完成 Sublime Tex…

计算机网络 谢希仁(001-2)

计算机网络-方老师 总时长 24:45:00 共50个视频,6个模块 此文章包含1.5到1.7的内容 1.5计算机网络类别 连通 共享 分类方法 广域网是边缘部分和核心部分的核心部分 以前是拨号连接 现在是光纤 总线型 星型 环形网 1.6计算机网络的性能 带上单位之后就不是…

蓝桥杯历年真题省赛java b组2016年第七届

一、题目 取球博弈 两个人玩取球的游戏。 一共有N个球,每人轮流取球,每次可取集合{n1,n2,n3}中的任何一个数目。 如果无法继续取球,则游戏结束。 此时,持有奇数个球的一方获胜。 如果两人都是奇数,则为平局。 假设双…

专业款希亦、小米、必胜、云鲸洗地机怎么样?深度测评利弊

洗地机可以说是一种非常实用的清洁工具,尤其是对于那些需要经常给家里地板清洁的人来说。它能够高效、彻底清洁地板,去除顽固污渍、灰尘和细菌,让家居环境更加洁净卫生。可是面对型号繁多的洗地机,我们应该怎么挑选呢?…

PTA题解 --- N个数求和(C语言)

今天是PTA题库解法讲解的第二天,今天我们要讲解N个数求和,题目如下: 要解决这个问题,我们可以用C语言编写一个程序来处理和简化分数。程序的基本思路如下: 1. 定义一个函数来计算两个数的最大公约数(GCD&a…

sqllab第二十三关通关笔记

知识点: mysqli_query() 返回值为资源型或布尔型如果内容为查询语句则返回资源型数据;如果内容为插入、更新、删除等语句则返回布尔类型结果mysql_fetch_array() 从结果集中取出一行作为关联数组或数字数组输入内容为指定查询的结果集单引号闭合绕过联…

分享5款占用系统资源少的软件

​ 在日常使用电脑时,我们需要各种软件来完成任务。以下是几款小巧但功能齐全的软件推荐。 1. 虚拟机软件——VirtualBox ​ VirtualBox是一款开源的虚拟机软件,允许用户在单一物理计算机上创建和运行多个虚拟操作系统。它支持多种操作系统&#xff0c…

【DFS算法】排列数字——acwing 842

问题描述 给定一个整数 n,将数字 1∼n 排成一排,将会有很多种排列方法。 现在,请你按照字典序将所有的排列方法输出。 输入格式 共一行,包含一个整数 n。 输出格式 按字典序输出所有排列方案,每个方案占一行。 数…

189: 素数判定(python)

收藏 难度&#xff1a;简单 标签&#xff1a;暂无标签 题目描述 给你两个数a、b,现在的问题是要判断这两个数组成的区间内共有多少个素数 输入 多组测试数据。 每个测试数据输入两个数a、b。(2<a,b<1000) 输出 输出该区间内素数的个数。 样例输入复制 2 4 4 6样例…

Starknet 训练营 Demo Day 顺利举办!获奖选手勇攀 Starknet 开发新高峰!

当全链游戏成为 2024 年 Web3 行业的热门关键词时&#xff0c;你是否注意到了一个冉冉升起的潜力生态——Starknet&#xff1f; Starknet 是基于 ZK-Rollup 技术的去中心化 L2 协议。由于其基于一种高度可扩展的密码学证明系统&#xff0c;便称为 STARK&#xff0c;使 DApp 能…

搭建一个自己的AI学术语音助手(一)

背景&#xff1a; 大模型出来后语音助手借着LLM的语义理解、知识组织能力的提升&#xff0c;升级了一波buffer。然后在使用这些语音助手的时候总觉得缺了点什么&#xff0c;但也讲不出来具体缺了什么。这几天的思考突然有了灵感&#xff0c;其实缺的就是自己的知识内容如何变成…

F-logic DataCube3 任意文件上传漏洞复现(CVE-2024-25832)

0x01 产品简介 F-logic DataCube3是一款用于光伏发电系统的紧凑型终端测量系统。 0x02 漏洞概述 F-logic DataCube3 /admin/setting_photo.php接口处存在任意文件上传漏洞 ,未经身份验证的攻击者可通过该漏洞在服务器端写入后门,获取服务器权限,进而控制整个web服务器。 …

细品spring设计,可扩展性编程Aware接口,Adapter类

Spring中的扩展点介绍 Aware接口 在Spring中&#xff0c;Aware接口是一组特定的接口&#xff0c;用于向Bean提供特定的资源或信息。通过实现Aware接口&#xff0c;Bean可以感知到容器的特定状态或资源。 常见的Aware接口包括&#xff1a; BeanNameAware&#xff1a;获取当前…

C语言深度理解之——结构体内存对齐

前言&#xff1a; 在C语言中&#xff0c;结构体&#xff08;struct&#xff09;是一种用户自定义的数据类型&#xff0c;可以包含不同类型的数据成员。在定义结构体时&#xff0c;编译器会根据平台的要求对结构体的内存进行对齐&#xff0c;以提高内存访问的效率。结构体内存对…

SpringBoot拦截器获取token用户对象优雅地传递到Controller层

项目场景&#xff1a; SpringBoot拦截器获取token用户对象优雅地传递到Controller层 问题描述 后端有许多接口都需要请求中携带有正确的Token&#xff0c;这时采用拦截器来验证token&#xff0c;但是每个接口都还是需要解析一遍token&#xff0c;浪费资源&#xff0c;不免显得…

陪诊系统平台的功能优势

便捷性&#xff1a;小程序基于移动互联网&#xff0c;用户可以随时随地通过手机或其他智能设备使用&#xff0c;无需亲自前往医院&#xff0c;从而节省了时间和精力。这种便捷性使得用户能够迅速获取相关信息&#xff0c;并进行预约等操作。 全面的信息服务&#xff1a;小程序提…

CMake官方教程4--使用表达式生成器

1. 使用表达式生成器产生警告 CMakeList.txt cmake_minimum_required(VERSION 3.15)project(Tutorial VERSION 1.0)add_library(tutorial_compiler_flags INTERFACE) target_compile_features(tutorial_compiler_flags INTERFACE cxx_std_11)set(gcc_like_cxx "$<COM…