当前位置: 首页 > news >正文

入侵检测——IDS概述、签名技术

1. 什么是IDS?

IDS(intrusion detection system)入侵检测系统,是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它会对系统的运行状态进行监视,发现各种攻击企图、过程、结果,来保证系统资源的安全。

入侵检测系统模型:

  • 检测器: 分析和检测入侵的任务并向控制器发出警报信号
  • 数据收集器: 主要负责收集数据
  • 知识库: 为检测器和控制器提供必需的数据信息支持
  • 控制器: 根据警报信号人工或自动地对入侵行为做出响应

2. IDS和防火墙有什么不同?

(1)防火墙主要防御的范围是1-4层;入侵检测真主要防御的是应用层

(2)防火墙属于被动防御;入侵检测属于主动防御

总:入侵检测是防火墙的一个有力的补充。形成防御闭环、可以及时、准确、全面的发现入侵

3. IDS工作原理?

(1) 信息收集

收集的内容:用户在网络、系统、数据库及应用系统中活动的状态和行为

  • 系统和网络的日志文件

  • 目录和文件中的异常改变

  • 程序执行中的异常行为

  • 物理形式的入侵信息

(2)信息分析

操作模型、方差、多元模型、马尔科夫过程模型、时间序列分析

  • 模式匹配

  • 统计分析

  • 完整性分析

(3) 安全响应

流行的响应方式:记录日志、实时显示、E-mail报警、声音报警、SNMP报警、实时TCP阻断(使用RST阻断)、防火墙联动、WinPop显示、收集短信报警

  • 主动响应

  • 被动响应

(4)异常检测

当某个事件与一个已知的攻击特征(信号)相匹配时,一个基于异常的IDS会记录一个正常大致轮廓,当一个事件在这个轮廓之外发生,就认为是异常,IDS就会告警;

4. IDS的主要检测方法有哪些详细说明?

(1) 攻击检测 

入侵检测类似于治安巡逻队,专门注重发现行迹可疑者

  • 被动、离线地发现计算机网络系统中的攻击者

  • 实时、在线地发现计算机网络系统中的工作者

(2)异常检测

IDS通常使用的两种基本分析方法之一,又称为基于行动的入侵检测技术

原理:收集操作活动的历史记录,建立代表主机、用户或者网络连接的正常行为描述,判断是否发生入侵。

异常检测模型:

首先总结正常操作应该具有的特征(用户轮廓),当用户活动与正常行为有重大偏离时即被认为是入侵

(3)误用检测

又称为特征检测

IDS通常使用的两种基本分析方法之一,又称为基于知识的技术检测

原理:对一致的入侵行为和手段进行分析,提取检测特征,构建攻击模式或者攻击签名,判断入侵行为

特征检测:IDS核心是特征库(签名)

优点:准确地检测已知的入侵行为

缺点:不能检测出未知的入侵行为

(4) 异常检测与误用检测的对比:

5. IDS的部署方式有哪些?

(1) 网络IDS(NIDS):

在网络中的关键位置部署IDS传感器,监测网络流量和数据包,通过分析网络流量中的异常行为和攻击特征来检测入侵。典型的NIDS部署方式包括集中式和分布式部署。

- 集中式部署:将IDS传感器集中部署在网络入口点或关键网络节点上,监测整个网络流量。这种方式可以提供全局的网络安全监测和集中的日志管理,但可能会造成单点故障和性能瓶颈。
- 分布式部署:在网络中多个位置部署IDS传感器,每个传感器负责监测特定的网络区域或子网。这种方式可以提供更好的性能和容错能力,但需要更多的资源和管理工作。

(2)主机IDS(HIDS):

在主机上安装IDS软件,监测主机系统的活动和行为,通过分析主机日志和系统调用来检测入侵。主机IDS可以提供更详细和精确的入侵检测,但需要在每台主机上安装和管理IDS软件。

(3)混合IDS(Hybrid IDS):

结合网络IDS和主机IDS的优势,同时在网络和主机上部署IDS传感器,以提供全面的入侵检测和监测能力。

(4)云IDS(Cloud IDS):

在云环境中部署IDS传感器,监测云平台和虚拟机的活动和流量,以检测云环境中的入侵行为。云IDS可以提供弹性和可扩展的入侵检测能力,但需要与云服务提供商合作进行部署和管理。

6. IDS的签名是什么意思?签名过滤器有什么作用?例外签名配置作用是什么?

(1)签名:

在IDS中,签名是一种用于检测特定入侵行为或攻击模式的规则或模式。IDS使用签名来比对网络流量、数据包或主机日志中的特定模式或特征,以判断是否存在已知的入侵或攻击行为。当检测到与签名匹配的流量或行为时,IDS会发出警报或采取其他预定的响应措施。

签名可以基于已知的攻击模式、恶意软件特征、异常行为或其他入侵指标来构建。

签名可以由安全厂商、社区或网络管理员自行创建或更新,也可以从公共的签名库或安全更新中获取。对于IDS来说,及时更新签名非常重要,以保持对新型攻击和恶意行为的检测能力。

自定义签名:

 (2)签名过滤器的作用:

签名过滤器是若干签名的集合,我们根据特定的条件如严重性、协议、威胁类型等,将IPS特征库中适用于当前业务的签名筛选到签名过滤器中,后续就可以重点关注这些签名的防御效果。通常情况下,对于筛选出来的这些签名,在签名过滤器中会沿用签名本身的缺省动作。特殊情况下,我们也可以在签名过滤器中为这些签名统一设置新的动作,操作非常便捷。

签名过滤器的动作分为:

阻断:丢弃命中签名的报文,并记录日志

告警:对命中签名的报文放行,但是会记录日志

采用签名的缺省动作:实际动作以签名的缺省动作为准

(3)例外签名的作用:

如果管理员需要将某些签名设置为与过滤器不同的动作时,可将这些签名引入到例外签名中,并单独配置动作。

例外签名的动作分为:

阻断:丢弃该签名中的报文,并记录日志

告警:对命中签名的报文放行,会记录日志

放行:对命中签名的报文放行,不会记录日志

添加黑名单:是指丢弃该命中签名的报文,阻断报文所在的数据流,记录日志,并将报文的源地址或者目的地址添加到黑名单

相关文章:

入侵检测——IDS概述、签名技术

1. 什么是IDS? IDS(intrusion detection system)入侵检测系统,是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。它会对系统的运行状态进行监视,发现各种攻击企…...

golang 标准库json Marshal 序列化与反序列化

标准库代码 func Marshal(v any) ([]byte, error) {e : newEncodeState()defer encodeStatePool.Put(e)err : e.marshal(v, encOpts{escapeHTML: true})if err ! nil {return nil, err}buf : append([]byte(nil), e.Bytes()...)return buf, nil }func Unmarshal(data []byte, …...

【【51单片机AD/DA的分析】】

51单片机AD/DA的分析 看似单片机实验,其实是要学好数电 模数转换 与 数模转换 运算放大器 DA的转换就是利用运算放大器实现的 输出电压v0-(D7~D0)/256 x (VrefxRfb)/R D7~D0 就是我们控制的按键看输入多少 然后再划分256份 Vref是我们设置的一个基准电压 PWM 这种…...

在docker中安装使用达梦数据库

关于在docker中安装达梦数据库,达梦官方网站其实是有提供安装使用方法的,但可能还是有朋友不会,这里将在原文基础上简单扩充下。 注意:docker容器中,数据库安装后没有创建服务的脚本,只有bin、bin2、conf、…...

Leetcode-每日一题【剑指 Offer II 010. 和为 k 的子数组】

题目 给定一个整数数组和一个整数 k &#xff0c;请找到该数组中和为 k 的连续子数组的个数。 示例 1&#xff1a; 输入:nums [1,1,1], k 2输出: 2解释: 此题 [1,1] 与 [1,1] 为两种不同的情况 示例 2&#xff1a; 输入:nums [1,2,3], k 3输出: 2 提示: 1 < nums.leng…...

【JavaScript】使用Promise来处理异步调用,方法传入参数为接口,并回调接口的方法

例如我们在下面这个方法传入一个接口&#xff0c;并将方法的执行过程用传入的接口进行回调 connect() {wx.connectSocket({url: this.url,success: () > {console.log(WebSocket 连接创建成功);},fail: (err) > {console.error(WebSocket 连接创建失败, err);}});wx.onS…...

grid map学习笔记1之Ubuntu18.04+ROS-melodic编译安装grid_map栅格地图及示例运行

文章目录 0 引言1 安装依赖和编译1.1 安装依赖1.2 下载编译 2 运行示例2.1 simple_demo2.2 tutorial_demo2.3 iterators_demo2.4 image_to_gridmap_demo2.5 grid_map_to_image_demo2.6 opencv_demo2.7 resolution_change_demo2.8 filters_demo2.9 interpolation_demo 0 引言 苏…...

postgres wal2json插件jsonb字段数据丢失问题解决

使用pgwal2jsondebezium进行数据同步时&#xff0c;发现偶尔会有jsonb字段数据丢失的问题 进行测试时发现&#xff1a; 1、发生数据丢失的jsonb字段长度都比较大(超过toast阈值&#xff0c;使用toast表存储) 2、针对发生jsonb字段丢失的数据&#xff0c;jsonb字段本身未发生修…...

华为eNSP:路由引入

一、拓扑图 二、路由器的配置 1、配置路由器的IP AR1&#xff1a; [Huawei]int g0/0/0 [Huawei-GigabitEthernet0/0/0]ip add 1.1.1.1 24 [Huawei-GigabitEthernet0/0/0]qu AR2&#xff1a; [Huawei]int g0/0/0 [Huawei-GigabitEthernet0/0/0]ip add 1.1.1.2 24 [Huaw…...

Retrospectives on the Embodied AI Workshop(嵌入式人工智能研讨会回顾) 论文阅读

论文信息 题目&#xff1a;Retrospectives on the Embodied AI Workshop 作者&#xff1a;Matt Deitke, Dhruv Batra, Yonatan Bisk 来源&#xff1a;arXiv 论文地址&#xff1a;https://arxiv.org/pdf/2210.06849 Abstract 我们的分析重点关注 CVPR Embodied AI Workshop 上…...

「JVM」Full GC和Minor GC、Major GC

Full GC和Minor GC、Major GC 一、Full GC1、什么是Full GC?2、什么情况下会触发full gc&#xff1f; 二、Minor GC1、什么是Minor GC&#xff1f;2、什么情况下会触发Minor GC&#xff1f; 三、Major GC1、什么是Major GC&#xff1f;2、什么情况下会触发Major GC&#xff1f…...

Asp.Net MVC 使用Log4Net

Asp.Net MVC 使用Log4Net 在 ASP.NET MVC 中使用 Log4net 需要进行一些配置和代码集成。下面是在 ASP.NET MVC 中使用 Log4net 的步骤&#xff1a; 1. 安装 Log4net NuGet 包 打开 NuGet 包管理器控制台&#xff0c;并运行以下命令来安装 Log4net&#xff1a; Install-Pack…...

[元带你学: eMMC协议 29] eMMC 断电通知(PON) | 手机平板电脑断电通知

依JEDEC eMMC及经验辛苦整理,原创保护,禁止转载。 专栏 《元带你学:eMMC协议》 内容摘要 全文 2000 字, 主要内容 前言 断电通知是什么? 断电通知过程...

vue使用recorder-core.js实现录音功能

下载组件 npm install recorder-core封装方法 record.ts //必须引入的核心 import Recorder from recorder-core;//引入mp3格式支持文件&#xff1b;如果需要多个格式支持&#xff0c;把这些格式的编码引擎js文件放到后面统统引入进来即可 import recorder-core/src/engine/…...

ThinkPHP8知识详解:给PHP8和MySQL8添加到环境变量

在PHPenv安装的时候&#xff0c;环境变量默认的PHP版本是7.4的&#xff0c;MySQL的版本是5.7的&#xff0c;要想使用ThinkPHP8来开发&#xff0c;就必须修改环境变量&#xff0c;本文就详细讲解了如果修改PHP和MySQL的环境变量。 1、添加网站 启动phpenv&#xff0c;网站&…...

UE使用UnLua(二)

1.前言 最近也是比较忙&#xff0c;忘了来更新了&#xff0c;好多都是开了头断更的&#xff08;狗头&#xff09;&#xff0c;今天抽空再更一篇&#xff01;&#xff01; 这篇讲一下在UnLua中覆盖蓝图事件&#xff08;函数&#xff09;&#xff0c;及按钮、文本控件的一些使用…...

Appium+python自动化(二十五)-获取控件ID(超详解)

简介 在前边的第二十二篇文章里&#xff0c;已经分享了通过获取控件的坐标点来获取点击事件的所需要的点击位置&#xff0c;那么还有没有其他方法来获取控件点击事件所需要的点击位置呢&#xff1f;答案是&#xff1a;Yes&#xff01;因为在不同的大小屏幕的手机上获取控件的坐…...

SDWAN组网的九大应用场景

SD-WAN&#xff08;软件定义广域网&#xff09;是一种新兴的网络技术&#xff0c;它可以优化和管理企业广域网&#xff08;WAN&#xff09;的数据传输&#xff0c;提供更加高效、灵活和安全的网络连接。SD-WAN的出现极大地改变了传统WAN的组网方式&#xff0c;为企业提供了更多…...

el-date-picker时间范围只能选五分钟之内

el-date-picker时间范围只能选五分钟之内 一、主要代码 一、主要代码 <el-date-pickertype"datetime"size"small"value-format"yyyy-MM-dd HH:mm:ss"v-model"searchData.submitTimeCode":editable"false"placeholder&qu…...

大数据分析案例-基于LightGBM算法构建乳腺癌分类预测模型

&#x1f935;‍♂️ 个人主页&#xff1a;艾派森的个人主页 ✍&#x1f3fb;作者简介&#xff1a;Python学习者 &#x1f40b; 希望大家多多支持&#xff0c;我们一起进步&#xff01;&#x1f604; 如果文章对你有帮助的话&#xff0c; 欢迎评论 &#x1f4ac;点赞&#x1f4…...

Java中的io流

File文件类 1.访问文件名相关的方法 String getName():返回此File对象所表示的文件名或路径名&#xff08;如果是路径&#xff0c;则返回最后一级子路径名)。 String getPath():返回此File对象所对应的路径名。File getAbsoluteFile():返回此 File对象的绝对路径。 String getA…...

23 自定义控件

案例&#xff1a;组合Spin Box和Horizontal Slider实现联动 新建Qt设计师界面&#xff1a; 选择Widget&#xff1a; 选择类名&#xff08;生成.h、.cpp、.ui文件&#xff09; 在smallWidget.ui中使用Spin Box和Horizontal Slider控件 可以自定义数字区间&#xff1a; 在主窗口w…...

从原理到实践,分析 Redisson 分布式锁的实现方案(二)

上篇讲解了如何用 Redis 实现分布式锁的方案&#xff0c;它提供了简单的原语来实现基于Redis的分布式锁。然而&#xff0c;Redis作为分布式锁的实现方式也存在一些缺点。本文将引入Redisson来实现分布式锁。 一、Redisson是什么 Redisson是一个基于Redis的分布式Java框架。它提…...

QT【day3】

思维导图&#xff1a; 闹钟&#xff1a; //widget.h #ifndef WIDGET_H #define WIDGET_H#include <QWidget> #include<QTimerEvent> #include<QTimer> #include<QTime> //时间类 #include<QPushButton> //按钮类头文件 #include<QDebug&…...

模版模式和策略模式的区别

前言 模版模式和策略模式在日常开发中经常遇到&#xff0c;这两个设计模式有啥区别&#xff0c;这里简单总结下。 模版模式简单demo // 抽象模板类 abstract class AbstractClass {// 模板方法定义了算法的骨架public void templateMethod() {// 执行固定的步骤step1();step…...

Github搭建个人博客全攻略

Github搭建个人博客全攻略 一、Github二、配置博客仓库三、配置Git用户SSH密钥四、Deploy Key or Token方法一&#xff1a; Deploy Key方法二&#xff1a; Token 五、Hexo六、 主题七、 发布博文八、参考链接 一、Github Github是开发者的代码仓库&#xff0c;一个开源和分享社…...

gensim conherence model C_V 值与其他指标负相关BUG

在我用gensim3.8.3 conherence model分析京东评论主题模型时&#xff0c; C_V 与npmi、u_mass出现了强烈的皮尔逊负相关&#xff1a; 这些地方也反映了类似问题&#xff1a; https://github.com/dice-group/Palmetto/issues/12 https://github.com/dice-group/Palmetto/issue…...

QT DAY3

1.思维导图 2.完成闹钟的实现 头文件 #include <QTextToSpeech> #include <QTextEdit> QT_BEGIN_NAMESPACE namespace Ui { class Widget; } QT_END_NAMESPACEclass Widget : public QWidget {Q_OBJECTQLineEdit *edit1new QLineEdit;// QTextEdit *edit2new QTe…...

TortoiseGit(小乌龟)使用问题总结

1.git clone fatal authentication failed for ‘请求路径‘&#xff0c; git clone 用户没有权限 待定 参考&#xff1a; 1.git clone fatal authentication failed for ‘请求路径‘&#xff0c; git clone 用户没有权限_git clone fatal: authentication failed for_椰子…...

106、Redis和Mysql如何保证数据一致

Redis和Mysql如何保证数据一致 先更新Mysql,再更新Redis,如果更新Redis失败,可能仍然不一致先删除Redis缓存数据,再更新Mysql,再次查询的时候在将数据添加到缓存中,这种方案能解决1方案的问题,但是在高并发下性能较低,而且仍然会出现数据不一致的问题,比如线程1删除了…...