网络安全之入侵检测
目录
网络安全之入侵检测
入侵检测经典理论
经典检测模型
入侵检测作用与原理
意义
异常检测模型(Anomaly Detection)
误用检测模型(Misuse Detection)
经典特征案例
编辑自定义签名
编辑
签名检查过程
检测生命周期
信息收集的方法
信息分析
异常检测 --- 统计分析、完整性分析
异常检测之统计分析
异常检测之完整性分析
常见异常检测算法
误用检测 --- 模式匹配
误用检测值模式匹配
常用误用检测算法
融合使用异常检测和误用检测 --- 实际系统的普遍做法
编辑结果处理
IDS的部署
IDS的配置
签名过滤器
例外签名
编辑 配置总体顺序
编辑配置顺序
配置完成后
调整配置
网络安全之入侵检测
注意:
入侵检测为事后系统,类似于发生盗窃后,通过摄像头(入侵检测)查询。
入侵检测经典理论
系统访问控制需要面对三类用户
合法用户(Legitimate User)
伪装用户(Masquerade User) ---- 攻破 [流程控制]
身份仿冒(可能是最早提出不能依赖于身份认证,还要加强行为监控以防范身份
仿冒和滥用的学者)
秘密用户(Clandestine User)---攻破 [逻辑控制]
类似于 走了后门
伪装 --- 批了合法的外衣 ,秘密用户 --- 无法察觉
经典检测模型
通用的入侵检测系统抽象模型
主体(Subjects)--- 谁
对象(Objects)--- 对谁
审计记录(Audit records) --- 审查做了什么
活动档案(Profiles)
异常记录(Anomoly records)--- 异常行为
活动规则(Activity rules) --- 判断异常是什么
入侵检测作用与原理
识别入侵者
识别入侵行为
监测和监视已成功的入侵
为对抗入侵提供信息与依据
意义
入侵检测是防火墙的一个有力补充,形成防御闭环,可以及时、准确、全面的发现入侵,弥补防火墙对应层检查缺失
对系统的运行状态进行见识,发现各种攻击企图、过程、结果,来保证系统资源的安全(完整性、可用性、机密性)。是一个软件与硬件的组合系统
异常检测 --- 当某个时间与一个已知的攻击特征(信号)相匹配时,一个基于异常的IDS会记录一个正常主机的活动大致轮廓,当一个事件在这个轮廓以外发生,就认为是异常,IDS就会警告
特征检测 --- IDS核心是特征库(签名)。
签名用来描述网络入侵行为的特征,通过比较报文特征和签名来检测入侵行为
异常检测模型(Anomaly Detection)
首先总结正常操作应该具有的特征(用户轮廓),当用户活动与正常行为有重大偏离时即被认为是入侵。
误用检测模型(Misuse Detection)
收集非正常的行为特征,建立相关的特征库,当检测的用户或系统行为与库中的记录相匹配时,系统就认为这种行为是入侵,误用检测模型也称为特征检测(Signature-based detection)
经典特征案例
自定义签名
签名检查过程
检测生命周期
信息收集 --- 用数据来刻画系统和网络运行历史和现状
信息分析 --- 用收集的数据去研判现状和预测未来
结果处理 --- 记录、告警和视觉呈现
信息收集的方法
基于主机
基于网络
基于传感器 ---
基于主机运行的软件
基于网络的数据捕获传感器
物联网中的各种传感器
信息分析
异常检测 --- 统计分析、完整性分析
异常检测之统计分析
统计分析对象 --- 用户、文件、目录和设备
统计分析方法 --- 为统计分析对象创建一个统计描述,统计正常使用时的一些测量属性 ---- 访问时间(工作时间/休息时间)、访问次数、操作失败次数和延时等
统计分析匹配 --- 测量属性的平均值将被用来网络、系统的行为进行比较,任何观测/测量在正常值范围之外时,就有入侵检测
异常检测之完整性分析
完整性分析对象 --- 文件/目录/任意数字资源 ---- 文件和目录的内容及属性
完整性分析方法 --- 建立完整性分析对象在正常状态时的完整性签名
完整性分析匹配 --- 匹配签名值是否发生改变 ---- 发生改变,认定目标对象被入侵篡改
常见异常检测算法
基于特征选择异常检测
基于贝叶斯推理异常检测
基于贝叶斯网络异常检测
基于神经网络异常监测
基于贝叶斯聚类异常检测
误用检测 --- 模式匹配
误用检测值模式匹配
模式匹配 --- 将手机到的信息与已知网络入侵和系统误用模式规则集进行比较,从而发现违反安全策略的行为
入侵模式的表示方法 --- 一个过程(执行一条指令)、一个输出(获得权限)
入侵模式的匹配过程 --- 字符串匹配(精确模式、模糊模式),状态机迁移序列匹配
常用误用检测算法
基于条件概率误用检测
基于专家系统误用检测
基于状态迁移误用检测
融合使用异常检测和误用检测 --- 实际系统的普遍做法
结果处理
产生警告 --- 记录警告日志,请求其它安全设备的协作联动(防火墙联动)
视觉呈现 --- [态势感知]产品的原型
IDS的部署
旁挂 --- 需要在部署旁挂设备上使用端口镜像的功能,把需要采集的端口流量镜像到IDS旁挂口。 也可以使用集线器、分光器实现流量复制。
IDS的配置
IPS特征库中包含了针对各种攻击行为的海量签名信息,但是在实际网络环境中,业务类型可能比较简单,不需要使用所有的签名,大量无用的签名也容易影响对常用签名的调测。此时我们可以使用签名过滤器将常用的签名过滤出来。
签名过滤器
若干签名的集合,我们根据特定的条件如严重性、协议、威胁类型等,将IPS特征库中适用于当前业务的签名筛选到签名过滤器中,后续就可以重点关注这些签名的防御效果。通常情况下,对于筛选出来的这些签名,在签名过滤器中会沿用签名本身的缺省动作。特殊情况下,我们也可以在签名过滤器中为这些签名统一设置新的动作,操作非常便捷。
签名过滤器的动作分为:
阻断 --- 丢弃命中签名的报文,并记录日志。
告警 --- 对命中签名的报文放行,但记录日志。
采用签名的缺省动作,实际动作以签名的缺省动作为准。
注意:
签名过滤器的动作优先级高于签名缺省动作,当签名过滤器动作不采用缺省动作时以签名过滤器中的动作为准。
例外签名
由于签名过滤器会批量过滤出签名,且通常为了方便管理会设置为统一的动作。如果管理员需要将某些签名设置为与过滤器不同的动作时,可将这些签名引入到例外签名中,并单独配置动作。
例外签名的动作分为:
阻断 --- 丢弃命中签名的报文,并记录日志。
告警 --- 对命中签名的报文放行,但记录日志。
放行 --- 对命中签名的报文放行,且不记录日志。
添加黑名单 --- 是指丢弃命中签名的报文,阻断报文所在的数据流,记录日志,并可将报文的源地址或目的地址添加至黑名单。
配置总体顺序
配置顺序
配置完成后
IPS配置完成后,通过监控攻击行为、分析威胁日志等手段,发现防御策略不合理的地方,进而对IPS配置做出调整,如修改签名过滤器、升级IPS特征库,必要的时候还可以使用例外签名和自定义签名。
选择“监控 > 日志 > 威胁日志”
对该攻击进行排查,在查询条件中输入要观察的时间段和攻击源的IP地址,进行查询。通过搜索结果可以看出,攻击者在某时间段内持续发出多种入侵攻击。可以判定该攻击源在发起恶意攻击,可以在安全策略中阻断来自该IP的流量,从而阻断攻击。
注意:
有一些攻击发生持续时间短,发生次数少,攻击源少。这种情况难以通过日志间的关联来判断攻击行为,此时需要根据威胁事件的相关信息判断是否为攻击。
选择“对象 > 签名”,在搜索框中输入威胁日志中记录的威胁ID。在搜索结果中,点击该签名查看详情
调整配置
基于对攻击的判定,需要对当前的配置进行调整。
例子 ---
某攻击在一些场景下会构成威胁,但是在另一些场景中,可能并不会造成危害,甚至一些特殊的业 务也可能具备该威胁特征。这种情况下,需要识别被阻断的威胁在当前网络环境中是否构成攻击, 如果不会,则可以考虑将其配置例外签名,动作设置为告警。
在安全优先的场景中,如果发现有些告警是由非正常业务触发的,并且触发行为特征符合攻击行 为,则可以考虑将这其配置例外签名,动作设置为阻断。
确定为入侵行为的源IP地址,可以直接将其加入黑名单,或将该IP加入安全策略的规则并配置动作 为阻断
例:配置黑名单
相关文章:

网络安全之入侵检测
目录 网络安全之入侵检测 入侵检测经典理论 经典检测模型 入侵检测作用与原理 意义 异常检测模型(Anomaly Detection) 误用检测模型(Misuse Detection) 经典特征案例 编辑自定义签名 编辑 签名检查过程 检测生命周期…...
元数据管理
1、业务元数据 描述 ”数据”背后的业务含义主题定义:每段 ETL、表背后的归属业务主题。业务描述:每段代码实现的具体业务逻辑。标准指标:类似于 BI 中的语义层、数仓中的一致性事实;将分析中的指标进行规范化。标准维度…...

C# WebService的开发以及客户端调用
目录 1、WebService简介 1.1 什么是XML? 1.2 什么是Soap? 1.3 什么是WSDL? 2、WebService与WebApi的区别与优缺点 2.1 WebService与WebApi的区别: 2.2 WebService的优缺点: 2.3 WebApi的优缺点: 3…...
有符号数和无符号数左移和右移
主要是有符号数的左移。 有的说不管符号位,直接左移,所以可以一会正数一会复数 https://bbs.csdn.net/topics/391075092 有的说符号位不动,其他来左移 不明白了。。。。 https://blog.csdn.net/hnjzsyjyj/article/details/119721014 https://…...

Netty小白入门教程
一、概述 1.1 概念 Netty是一个异步的基于事件驱动(即多路复用技术)的网络应用框架,用于快速开发可维护、高性能的网络服务器和客户端。 1.2 地位 Netty在Java网络应用框架中的地位就好比,Spring框架在JavaEE开发中的地位。 以下的框架都使用了Nett…...

【逻辑位移和算数位移】
<< 运算符 && >> 运算符 正数位移 当 x>>n 中 x 为正数时,会将x的所有位右移x位,同时左边高位补0 显而易见,运算结束后,值为1 。 可知右移n位,结果就是 x / 2^n:7 / 2 ^2 1;…...

Blender3.5 边的操作
目录 1. 边操作1.1 边的细分 Subdivide1.2 边的滑移 Edge Slide1.3 边的删除1.4 边的溶解 Dissolve1.5 边线倒角 Bevel1.6 循环边 Loop Edges1.7 并排边 Ring Edges1.8 桥接循环边 1. 边操作 1.1 边的细分 Subdivide 在边选择模式,选中一条边,右键&…...
Java与Python、Node.js在人工智能和区块链应用程序开发中的比较
背景 Java、Python和Node.js都是常用的编程语言,它们在不同领域都有广泛的应用。在人工智能和区块链应用程序开发中,这三种语言都具有各自的优势和劣势。 Java的优势 Java在企业级应用中应用广泛,这得益于其跨平台性、安全性和稳定性等特点。在人工智能和区块链应用程序开…...

【计算机是怎么跑起来的】基础:计算机三大原则
【计算机是怎么跑起来的】基础:计算机三大原则 计算机的三个根本性基础1.计算机是执行输入,运算,输出的机器输入,运算,输出 2. 软件是指令和数据的集合指令数据 3. 计算机的处理方式有时与人们的思维习惯不同对计算机来…...

NXP公司LPC21XX+PID实现稳定温度控制
本例使用的是LPC21XX系列芯片提供的PWM功能实现稳定的温度控制。首先我们获得当前环境温度之后,再用设定的温度与当前温度相减,通过PID算法计算出当前输出脉宽,并将其输出到L298N模块中,使加热丝发热,形成闭环…...
【CE实战-生化危机4重置版】实现角色瞬移、飞翔
▒ 目录 ▒ 🛫 导读需求开发环境1️⃣ CE扫描内存,定位坐标地址(加密后的地址)2️⃣ 硬件写入断点,定位真实坐标地址内存写入断点,定位到访问地址分析代码...

强烈建议互联网人转战实体和农业,去了就是降维打击!实体太缺人才了,老板也不缺钱!...
大环境不好,互联网人该何去何从? 一位网友提出了一个新思路:强烈建议互联网同学转战实体、农业这些行业。实体真的太缺人才了,目前大部分实体都留下70后、80后在继续奋斗。其实实体老板很多都不缺钱,经过多年积累&…...

如何将 github pages 迁移到 vercel 上托管
如何将 github pages 迁移到 vercel 上托管 前言 早期网站使用 github pages,后来迁移到 coding,最近又放到腾讯云网站静态托管,无论是 coding 的 cos 存储桶,还是静态网站托管 他们都是收费的,那有没有免费的托管商呢,既不影响网站的访问速度还免费,于是,找了一下,还真有,ve…...

2023五一数学建模竞赛(五一赛)选题建议
提示:DS C君认为的难度:C<A<B,开放度:B<A<C 。 A题:无人机定点投放问题 这道题是传统的物理类题目,基本每次建模竞赛都会有。由于这道题目并未给明数据,所以数据获取和搜集资料是…...

Packet Tracer - 配置 RIPv2
Packet Tracer - 配置 RIPv2 目标 第 1 部分:配置 RIPv2 第 2 部分:验证配置 拓扑图 背景信息 尽管在现代网络中极少使用 RIP,但是作为了解基本网络路由的基础则十分有用。 在本活动中,您将使用适当的网络语句和被动接口配置…...

Android类似微信聊天页面教程(Kotlin)四——数据本地化
前提条件 安装并配置好Android Studio Android Studio Electric Eel | 2022.1.1 Patch 2 Build #AI-221.6008.13.2211.9619390, built on February 17, 2023 Runtime version: 11.0.150-b2043.56-9505619 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Windows 11 …...

C/C++基础知识
专栏:C/C 个人主页: C/C基础知识 前言C关键字(C98)命名空间命名空间的定义正常的命名空间的定义如何使用命名空间 命名空间可以嵌套同一个工程中允许存在多个相同名称的命名空间,编译器最后会合成同一个命名空间中(一个工程中的.h文件和test.…...

Java 入门 - 语法基础
hello world public class Hello {public static void main(String[] args) {System.out.println("hello world");} } 复制代码 public: 是关键字;表示公开的class: 是关键字;用来定义类Hello: 是类名;大小写敏感;命名…...

Java线程池及拒绝策略详解
前文提到线程的使用以及线程间通信方式,通常情况下我们通过new Thread或者new Runnable创建线程,这种情况下,需要开发者手动管理线程的创建和回收,线程对象没有复用,大量的线程对象创建与销毁会引起频繁GC,…...

GitLABJenkins
GitLAB & Jenkins 目录 实践:基于Jenkins提交流水线(测试成功)-2023.4.25 目的:掌握通过触发器将GitLab和Jenkins集成,实现提交流水线。 1、触发Jenkins构建 安装Generic Webhook Trigger插件 重启后,进入一个Pipeline项目设…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...
在鸿蒙HarmonyOS 5中实现抖音风格的点赞功能
下面我将详细介绍如何使用HarmonyOS SDK在HarmonyOS 5中实现类似抖音的点赞功能,包括动画效果、数据同步和交互优化。 1. 基础点赞功能实现 1.1 创建数据模型 // VideoModel.ets export class VideoModel {id: string "";title: string ""…...

UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...
工程地质软件市场:发展现状、趋势与策略建议
一、引言 在工程建设领域,准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具,正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...
MySQL用户和授权
开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务: test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...

基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...

20个超级好用的 CSS 动画库
分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码,而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库,可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画,可以包含在你的网页或应用项目中。 3.An…...

PydanticAI快速入门示例
参考链接:https://ai.pydantic.dev/#why-use-pydanticai 示例代码 from pydantic_ai import Agent from pydantic_ai.models.openai import OpenAIModel from pydantic_ai.providers.openai import OpenAIProvider# 配置使用阿里云通义千问模型 model OpenAIMode…...
虚幻基础:角色旋转
能帮到你的话,就给个赞吧 😘 文章目录 移动组件使用控制器所需旋转:组件 使用 控制器旋转将旋转朝向运动:组件 使用 移动方向旋转 控制器旋转和移动旋转 缺点移动旋转:必须移动才能旋转,不移动不旋转控制器…...

Java中HashMap底层原理深度解析:从数据结构到红黑树优化
一、HashMap概述与核心特性 HashMap作为Java集合框架中最常用的数据结构之一,是基于哈希表的Map接口非同步实现。它允许使用null键和null值(但只能有一个null键),并且不保证映射顺序的恒久不变。与Hashtable相比,Hash…...