网络安全之入侵检测
目录
网络安全之入侵检测
入侵检测经典理论
经典检测模型
入侵检测作用与原理
意义
异常检测模型(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项目设…...
前端倒计时误差!
提示:记录工作中遇到的需求及解决办法 文章目录 前言一、误差从何而来?二、五大解决方案1. 动态校准法(基础版)2. Web Worker 计时3. 服务器时间同步4. Performance API 高精度计时5. 页面可见性API优化三、生产环境最佳实践四、终极解决方案架构前言 前几天听说公司某个项…...
YSYX学习记录(八)
C语言,练习0: 先创建一个文件夹,我用的是物理机: 安装build-essential 练习1: 我注释掉了 #include <stdio.h> 出现下面错误 在你的文本编辑器中打开ex1文件,随机修改或删除一部分,之后…...
【解密LSTM、GRU如何解决传统RNN梯度消失问题】
解密LSTM与GRU:如何让RNN变得更聪明? 在深度学习的世界里,循环神经网络(RNN)以其卓越的序列数据处理能力广泛应用于自然语言处理、时间序列预测等领域。然而,传统RNN存在的一个严重问题——梯度消失&#…...
【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
BCS 2025|百度副总裁陈洋:智能体在安全领域的应用实践
6月5日,2025全球数字经济大会数字安全主论坛暨北京网络安全大会在国家会议中心隆重开幕。百度副总裁陈洋受邀出席,并作《智能体在安全领域的应用实践》主题演讲,分享了在智能体在安全领域的突破性实践。他指出,百度通过将安全能力…...
html-<abbr> 缩写或首字母缩略词
定义与作用 <abbr> 标签用于表示缩写或首字母缩略词,它可以帮助用户更好地理解缩写的含义,尤其是对于那些不熟悉该缩写的用户。 title 属性的内容提供了缩写的详细说明。当用户将鼠标悬停在缩写上时,会显示一个提示框。 示例&#x…...
【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)
LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...
Leetcode33( 搜索旋转排序数组)
题目表述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 < k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k1], …, nums[n-1], nums[0], nu…...
在鸿蒙HarmonyOS 5中使用DevEco Studio实现指南针功能
指南针功能是许多位置服务应用的基础功能之一。下面我将详细介绍如何在HarmonyOS 5中使用DevEco Studio实现指南针功能。 1. 开发环境准备 确保已安装DevEco Studio 3.1或更高版本确保项目使用的是HarmonyOS 5.0 SDK在项目的module.json5中配置必要的权限 2. 权限配置 在mo…...
电脑桌面太单调,用Python写一个桌面小宠物应用。
下面是一个使用Python创建的简单桌面小宠物应用。这个小宠物会在桌面上游荡,可以响应鼠标点击,并且有简单的动画效果。 import tkinter as tk import random import time from PIL import Image, ImageTk import os import sysclass DesktopPet:def __i…...



