内容安全(深度行为检测技术、IPS、AV、入侵检测方法)

1、深度行为检测技术

深度行为检测技术:是一种基于深度学习和机器学习的技术,它通过分析用户在网络中的行为模式,识别异常或潜在威胁行为,从而保护网络安全和内容安全

分类:

  1. 深度包检测技术(Deep Packet Inspection,DPI)
  2. 深度流检测技术(Deep Flow Inspection,DFI)

1.1 深度包检测技术

深度包检测技术:是一种基于网络层的安全技术,主要用于识别和控制网络流量。它可以检测每个数据包的内容,包括应用层协议、数据负载等,以确定数据包的来源、目的、类型等信息。

针对完整的数据包,进行内容的识别和检测

深度包检测技术可分为三类:

  1. 基于“特征字”的检测技术
  2. 基于应用网关的检测技术
  3. 基于行为模式的检测技术

1)基于“特征字”的检测技术

特征字:是指在特定的网络协议、应用程序或数据中具有独特标识意义的字符串或字节序列

基于特征字的包检测技术主要针对数据包中的特征字,例如Host字段、UA字段等等

可以通过User-Agent字段来识别PC端或手机端,从而进行控制等

2)基于应用网关的检测技术

基于应用网关的检测技术:有些应用控制和数据是分离的,比如一些视屏流。一开始会通过TCP协议链接之后,协商一些参数,这部分我们称为信令部分。只写正式传输数据流量通过UDP协议,而这部分流量是没有可以识别的特征的。因此,这些应用可以基于应用网关来进行检测,即基于前面的信令部分来进行识别和控制

3)基于行为模式的检测技术

基于行为模式的检测技术:是一种通过分析用户或系统的行为模式来识别异常或潜在威胁的方法。通过收集和分析用户或系统的行为数据,建立正常行为模式,并实时监测和比较当前行为与正常行为模式之间的差异,从而识别出异常或潜在威胁

例如,一个人每天都只发送两封邮件,那它的正常行为模式就是每天只发送二三封邮件,突然下周开始每天都发送五六封邮件,再下下周每天都发送二三十封邮件,那么此时可能会被识别为异常或威胁

工作原理:数据收集、模型建立、实时监控

1.2 深度流检测技术

深度流检测技术:基于数据流进行识别检测的技术,以流为基本研究对象,关注的是整个网络流数据的行为和特诊

DPI和DFI的对比:

  1. DFI仅对流量行为分析,只能对应用类型进行笼统的分类,无法做到精细的识别
  2. 如果流量进行加密的话,DPI在没有解密的情况下可能无法识别,但DFI不受影响

DPI和DF性能对比:

  1. 处理速度:DFI的处理速度相对快,因为它不需要对每个数据包进行深度分析。基于DFI的系统可以达到线速10Gbit/s,而基于DPI的带宽管理系统的处理能力仅达到1Gbit/s
  2. 维护成本:DFI的维护成本相对较低,因为同一类型的新应用与旧应用不会出现大的变化,因此不需要频繁升级流量行为模型。而基于DPI的带宽管理系统需要紧跟新协议和新型应用的产生而不断升级后台应用数据库
  3. 识别准确率:DPI能够提供精细的识别准确率,而DFI在应对复杂的网络攻击时表现出色

2、IDS入侵防御系统

IDS(Intrusion Detection System):入侵检测系统,是一种侧重于风险管理的网络安全设备,只能检测网络流量和系统活动,以识别潜在的安全威胁,不能直接处理。IDS通过收集和分析网络数据包、系统日志和其他相关信息,来检测可能的恶意行为、漏洞利用和攻击尝试。

优势:部署灵活,可以旁路部署,对原网络没有任何影响

劣势:具有一定的滞后性

早期的IDS误报率较高

3、IPS入侵防御系统

IPS(Intrusion Prevention System):入侵防御系统,一种侧重于风险控制的网络安全设备,用于检测和防止网络攻击。可以在检测风险的同时,处理问题,从而减少或消除潜在的损害

需要串联部署在网络中

优势:

  1. 实时阻断攻击
  2. 深层防护,可以深入到应用层,进行精准的威胁识别
  3. 全方位的防护
  4. 内外兼防
  5. 不断升级,精准防护

劣势:

  1. 误阻断:检测到攻击时会主动阻断,可能会误阻断一些合法的网络流量
  2. 配置复杂性:IPS的配置和管理相对于IDS较复杂
  3. 性能瓶颈:IPS在处理大量网络流量时,可能会成为性能瓶颈

4、入侵检测的方法

1)异常检测

异常检测:基于一个假定,我们认为用户的行为是遵循一致性原则的

2)误用检测

误用检测:创建一个异常行为特征库,将入侵行为的特征记录下来并记录成签名,之后根据到达的流量特征和签名进行对比,判断是否存在异常

签名:指用来描述网络入侵行为特征的一种方式,将异常行为的特征记录下来进行HSAH。通过比较报文特征和签名来检测入侵行为。

  • 预定义签名:系统预先定义的大量签名,已经预先设置了匹配该签名的签名动作为阻断或告警。设备出厂时一家在了预定义签名库,一般这个特征库需要购买liense(许可证)后才可获取。(如果购买了liense后,可以对接华为的安全中心多特征库进行更新)
  • 自定义签名:网络管理员可以根据自定义的需求来创建威胁签名

预定义签名,我们只能修改其默认的执行动作,以及启用与否,其他的都不能修改

可以执行的动作分为三类:

  1. 放行:数据允许通过,不会记录日志
  2. 告警:数据允许通过,但是会记录日志
  3. 阻断:数据不允许通过,并且会记录日志

5、防火墙中IPS使用

注意:所有的修改需要进行提交,不提交不生效,提交相当于重启了IPS模块,才能使新加的或者修改的东西生效

预定义签名库可以在此查看:

查看自己的License:

升级特征库:

在线升级:

  • 定时升级:选择时间进行定时升级
  • 立即升级:立即同步网上的特征库

本地升级:选择本地特征库文件进行升级,也可以先从网上下载特征库后,从本地文件进行本地升级

预定义签名信息:

ID:区分不同的签名

对象:针对设备的身份,为服务器/客户端。注意,一般将发起连接的设备角色认定为客户端,响应连接并提供服务的角色认定为服务器。

操作系统:该入侵行为针对的操作系统

严重性:该行为一旦爆发之后,对我们网络系统的影响程度的评级

协议/应用程序:这种攻击所承载的协议或者应用

自定义签名:

如果勾选了关联签名,则该签名的命中条件变为规定时间内命中关联签名的次数或者阻断时间

自定义签名的签名规则:

报文:逐包检测

消息:一次完整的请求和应答的过程被认定为一个消息

数据流:基于五元组来判断是否为一个数据流

按顺序检测:

  • 勾选,则下面检查项列表中的检查项执行自上而下逐一匹配,如果匹配上,则不再继续匹配
  • 不勾选,则下面检查项列表中的检查项为“且”的关系,需要都满足才算命中

选择协议中的字段

匹配:则会检测数据包中和后面值里面完全相同的数据

前缀匹配:匹配以后面值开头的内容

偏移是指从匹配到的值后面,偏移几位开始匹配内容

搜索字节数是指从匹配位置开始,搜索的长度

例如,当偏移为2,搜索字节为10时,根据上文代表从字段HTTP.HeadContent中从www的后两位匹配长度为10的内容

IPS入侵防御文件配置:

1)签名过滤器:

如果选择采用签名的缺省动作,一个流量同时匹配上多个签名,如果所有动作都是告警,则直接告警,如果有一个动作是阻断,则执行阻断操作。

如果配置多个签名过滤器,则将自上而下逐一匹配

2)例外签名

例外签名:可以将签名过滤器中的部分签名放在例外签名中,可以执行单独的动作

隔离源IP和目标IP:实质是阻断的同时,将地址放入黑名单中,进行访问限制,超时时间为黑名单中的老化时间

3)协议异常检测

针对协议的异常进行控制

调用入侵防御策略(安全策略中调用)

注意安全策略的顺序,防止匹配了前面的安全策略,导致自己的入侵防御配置无效

6、AV反病毒

AV反病毒:是一种用于保护计算机系统免受病毒、木马、蠕虫等恶意软件侵害的安全机制。侧重于文件以及邮件中病毒的查杀
代理扫描:需要缓存文件,倒是效率较低,并且文件过大可能无法缓存,导致直接放过造成安全风险,但是其检测力度较强可以应对压缩以及脱壳的情况
流扫描:基于文件片段进行扫描,效率较高,但检测率有限

病毒的分类:

病毒的杀链:

个别病毒的工作原理:

防病毒流程:

AV反病毒配置文件:

病毒例外:相当于是病毒的白名单,为了防止过渡防御的场景,将一些病毒放入例外之中,将检测到的该病毒视为误报,将文件直接放行
应用例外:将特定的应用设置为例外,可以单独执行动作
宣告和删除附件:只针对Pop3和SMTP协议

  • 宣告:不删除附件,但是会在邮件正文中添加提示信息
  • 删除附件:直接删除附件,并且会在邮件正文中添加提示信息

例:内网用户有通过外网web服务器下载文件的需求,并且,外网用户有通过内网FTP服务器上传文件的需求,针对这两种场景进行反病毒处理。

7、URL过滤

URL:统一资源定位符

URI:统一资源的标识符URL过滤的方式

URL包含URI,URL的作用是定位/访问到资源目录中的文件

静态网页
动态网页

URL过滤方式:

  1. 通过黑白名单进行过滤
  2. 预定义的URL分类:本地缓存查询和远程分类服务查询(使用该功能,则需要激活liense)
  3. 自定义的URL分类

注意:

1)自定义URL分类的优先级高于预定义的优先级

2)如果远程分类服务查询都无法确认该URL的分类,则该URL将按照“其他”类的动作进行执行

HTTP协议获取URL的方式:

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

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

相关文章

k8s核心操作_存储抽象_K8S中使用Secret功能来存储密码_使用免密拉取镜像_k8s核心实战总结---分布式云原生部署架构搭建033

注意在看的时候一定要把 dxxxx中的xxxx换成--o----c----k----e----r 然后我们再来看一个k8s中的secret的功能,这个功能 用来存储密码的,configMap是用来存配置的 比如我们有个pod,他的镜像,如果是需要密码的,那么 我们现在是从公共仓库拉取的,如果我们从私有仓库拉取,有密码…

无需业务改造,一套数据库满足 OLTP 和 OLAP,GaiaDB 发布并行查询能力

在企业中通常存在两类数据处理场景,一类是在线事务处理场景(OLTP),例如交易系统,另一类是在线分析处理场景(OLAP),例如业务报表。 OLTP 数据库擅长处理数据的增、删、改&#xff0c…

【Arduino IDE】安装及开发环境、ESP32库

一、Arduino IDE下载 二、Arduino IDE安装 三、ESP32库 四、Arduino-ESP32库配置 五、新建ESP32-S3N15R8工程文件 乐鑫官网 Arduino官方下载地址 Arduino官方社区 Arduino中文社区 一、Arduino IDE下载 ESP-IDF、MicroPython和Arduino是三种不同的开发框架,各自适…

防火墙之双机热备篇

为什么要在防火墙上配置双机热备技术呢? 相信大家都知道,为了提高可靠性,避免单点故障 肯定有聪明的小伙伴会想到那为什么不直接多配置两台防火墙,然后再将他们进行线路冗余,不就完成备份了吗? 答案是不…

使用Django框架实现音频上传功能

数据库设计(models.py) class Music(models.Model):""" 音乐 """name models.CharField(verbose_name"音乐名字", max_length32)singer models.CharField(verbose_name"歌手", max_length32)# 本质…

R语言实现神经网络ANN

# 常用激活函数 # 自定义Sigmoid函数 sigmod <- function(x){return(1/(1exp(-x))) } # 绘制Sigmoid曲线 x <- seq(-10,10,length.out 100) plot(x,sigmod(x),type l,col blue,lwd 2,xlab NA,ylab NA,main Sigmoid函数曲线)# 自定义Tanh函数 tanh <- function(…

QT-RTSP相机监控视频流

QT-RTSP相机监控视频流 一、演示效果二、关键程序三、下载链接 一、演示效果 二、关键程序 #include "mainwindow.h"#include <QDebug>MainWindow::MainWindow(QWidget *parent) : QMainWindow(parent), m_settings("outSmart", "LiveWatcher&…

Web开发:卡片翻转效果(HTML、CSS)

目录 一、实现效果 二、完整代码 三、实现过程 1、页面结构 2、初始样式 3、翻转效果 4、图片大小问题 一、实现效果 如下图所示&#xff0c;当鼠标移入某个盒子&#xff0c;就反转这个盒子&#xff0c;并显示其背面的内容——卡片翻转效果&#xff1b; 卡片翻转效果 二…

Java二十三种设计模式-工厂方法模式(2/23)

工厂方法模式&#xff1a;设计模式中的瑞士军刀 引言 在软件开发中&#xff0c;工厂方法模式是一种常用的创建型设计模式&#xff0c;它用于处理对象的创建&#xff0c;将对象的实例化推迟到子类中进行。这种模式不仅简化了对象的创建过程&#xff0c;还提高了代码的可维护性…

基于Vue CLI 3构建Vue3项目(Vue2也可参考)

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

Android Framework学习笔记(4)----Zygote进程

Zygote的启动流程 Init进程启动后&#xff0c;会加载并执行init.rc文件。该.rc文件中&#xff0c;就包含启动Zygote进程的Action。详见“RC文件解析”章节。 根据Zygote对应的RC文件&#xff0c;可知Zygote进程是由/system/bin/app_process程序来创建的。 app_process大致处…

【Java--数据结构】二叉树oj题(上)

前言 欢迎关注个人主页&#xff1a;逸狼 创造不易&#xff0c;可以点点赞吗~ 如有错误&#xff0c;欢迎指出~ 判断是否是相同的树 oj链接 要判断树是否一样&#xff0c;要满足3个条件 根的 结构 和 值 一样左子树的结构和值一样右子树的结构和值一样 所以就可以总结以下思路…

【Pytorch】RNN for Name Classification

参考学习来自&#xff1a; https://pytorch.org/tutorials/intermediate/char_rnn_classification_tutorial.htmlRNN完成姓名分类https://download.pytorch.org/tutorial/data.zip 导入库 import glob # 用于查找符合规则的文件名 import os import unicodedata import stri…

【Powershell】超越限制:获取Azure AD登录日志

你是否正在寻找一种方法来追踪 Azure Active Directory&#xff08;Azure AD&#xff09;中用户的登录活动&#xff1f; 如果是的话&#xff0c;查看Azure AD用户登录日志最简单的方法是使用Microsoft Entra管理中心。打开 https://entra.microsoft.com/&#xff0c;然后进入 监…

taro小程序terser-webpack-plugin插件不生效(vue2版本)

背景 最近在做公司内部的小程序脚手架&#xff0c;为了兼容老项目和旧项目&#xff0c;做了vue2taro,vue3taro两个模板&#xff0c;发现terser-webpack-plugin在vue2和vue3中的使用方式并不相同&#xff0c;同样的配置在vue3webpack5中生效&#xff0c;但是在vue2webpack4中就…

学习Python的IDE功能--(一)入门导览

项目视图是主要工具窗口之一。它包含项目目录、SDK 特定的外部库和临时文件。点击带条纹的按钮可以预览演示项目。您也可以按Alt1打开。点击以打开项目视图&#xff0c;展开项目目录以查看项目文件。双击以打开welcome.py。 切换到"学习"工具窗口继续学习本课次。…

ELK企业级日志分析

目 录 一、ELK简介 1.1 elasticsearch简介 1.2 logstash简介 1.3 kibana简介 1.4 ELK的好处 1.5 ELK的工作原理 二、部署ELK 2.1 部署elasticsearch(集群) 2.1.1 修改配置文件 2.1.2 修改系统参数 2.1.2.1 修改systemmd服务管理器 2.1.2.2 性能调优参数 2.1.2.3 …

文献阅读:tidyomics 生态系统:增强组学数据分析

文献介绍 文献题目&#xff1a; The tidyomics ecosystem: enhancing omic data analyses 研究团队&#xff1a; Stefano Mangiola&#xff08;澳大利亚沃尔特和伊丽莎霍尔医学研究所&#xff09;、Michael I. Love&#xff08;美国北卡罗来纳大学教堂山分校&#xff09;、Ant…

k8s集群新增节点

目前集群状态 如K8S 集群搭建中规划的集群一样 Masternode01node02IP192.168.100.100192.168.100.101192.168.100.102OSCent OS 7.9Cent OS 7.9Cent OS 7.9 目前打算新增节点node03 Masternode01node02node03IP192.168.100.100192.168.100.101192.168.100.102192.168.100.1…

Golang | Leetcode Golang题解之第240题搜索二维矩阵II

题目&#xff1a; 题解&#xff1a; func searchMatrix(matrix [][]int, target int) bool {m, n : len(matrix), len(matrix[0])x, y : 0, n-1for x < m && y > 0 {if matrix[x][y] target {return true}if matrix[x][y] > target {y--} else {x}}return f…