安全防御之入侵检测与防范技术
安全防御中的入侵检测与防范技术主要涉及到入侵检测系统(IDS)和入侵防御技术(IPS)。
入侵检测系统(IDS)是一种对入侵行为自动进行检测、监控和分析的软件与硬件的组合系统。IDS通过从计算机网络或系统中的若干关键点收集信息,并对其进行分析,从中发现网络或系统中是否有违反安全策略的行为和遭到攻击的迹象。
入侵防御技术(IPS)是一种主动的安全防御技术,旨在防止恶意软件入侵和数据泄露。它通过实时监测和拦截网络流量中的威胁,保护网络和系统免受攻击。
一、入侵检测技术(IDS)
1、入侵检测技术的定义
通过对计算机网络或计算机系统中的若干关键点收集信息并进行分析,从中发现网络或系统中是否有违反安全策略的行为和被攻击的迹象,进行入侵检测的软件与硬件的组合就是入侵检测系统(IDS)。入侵检测系统(IDS)是一种用于检测、记录和响应计算机系统或网络中未授权活动的软件或硬件工具。它通过实时监控和分析网络流量、系统日志等信息,发现潜在的入侵行为,并及时采取相应的措施来应对。
IDS执行一般分为三个步骤,依次为信息收集、数据分析、响应(被动响应和主动响应)。
- 信息收集:IDS信息收集的内容包括系统、网络、数据及用户活动的状态和行为,信息一般来自系统日志、目录以及文件中的异常改变、程序执行中的异常行为及物理形式的入侵信息四个方面。
- 数据分析:数据分析是IDS的核心。它首先构建分析器,把收集到的信息经过预处理,建立一个行为分析引擎或模型,然后向模型中植入时间数据,在知识库中保存植入数据的模型。数据分析一般通过模式匹配、统计分析和完整性分析3种手段进行,模式匹配和统计分析用于实时入侵检测,而完整性分析则用于事后分析。常用于数据分析的有五种统计模型: 操作模型、方差、多元模型、马尔柯夫过程模型、时间序列分析。
- 响应:IDS在发现入侵后会及时作出响应,包括切断网络连接、记录事件和报警等。响应一般分为主动响应和被动响应,主动响应主要来阻止攻击或影响进而改变攻击的进程,由用户驱动或系统本身自动执行,可对入侵者采取断开连接等行动、修正系统环境或收集有用信息;被动响应主要是报告和记录所检测出的问题,包括告警和通知、简单网络管理协议(SNMP)陷阱和插件等。IDS还可以与其他安全系统集成,如防火墙、反病毒软件等,以提供更全面的安全防护。
2、入侵检测技术的发展趋势和发展历史
IDS的发展已经历了四个主要阶段:
第一阶段是以基于协议解码和模式匹配为主的技术,其优点是对于已知的攻击行为非常有效,各种已知的攻击行为可以对号入座,误报率低;缺点是高超的黑客采用变形手法或者新技术可以轻易躲避检测,漏报率高。
第二阶段是以基于模式匹配、简单协议分析和异常统计为主的技术,其优点是能够分析处理一部分协议,可以进行重组;缺点是匹配效率较低,管理功能较弱。这种检测技术实际上是在第一阶段技术的基础上增加了部分对异常行为分析的功能。
第三阶段是以基于完全协议分析、模式匹配和异常统计为主的技术,其优点是误报率、漏报率和滥报率较低,效率高,可管理性强,并在此基础上实现了多级分布式的检测管理;缺点是可视化程度不高,防范及管理功能较弱。
第四阶段是以基于安全管理、协议分析、模式匹配和异常统计为主的技术,其优点是入侵管理和多项技术协同工作,建立全局的主动保障体系,具有良好的可视化、可控性和可管理性。以该技术为核心,可构造一个积极的动态防御体系,即IMS——入侵管理系统。
3、入侵检测技术存在的问题
入侵检测的原理主要包括误用检测和异常检测两种方式。误用检测主要根据已知的攻击模式进行检测,而异常检测则是首先总结正常操作应该具有的特征(用户轮廓),当用户活动与正常行为有重大偏离时即被认为是入侵。异常检测可以发现未知的攻击方法,但误报率较高。
IDS的特点包括监测速度快、隐蔽性好、视野更宽、较少的监测器、攻击者不易转移证据、操作系统无关性以及不占用被保护的系统资源等。这些特点使得IDS能够有效地发现并应对各种网络攻击。
但是,入侵检测技术在实际应用中依然存在很多问题:
1)误报
误报是指被入侵检测系统测出但其实是正常及合法使用受保护网络和计算机的警报。假警报不但令人讨厌,并且降低入侵检测系统的效率。攻击者可以而且往往是利用包结构伪造无威胁“正常”假警报,以诱使收受人把入侵检测系统关掉。
2)精巧及有组织的攻击
攻击可以来自四方八面,特别是一群人组织策划且攻击者技术高超的攻击,攻击者花费很长时间准备,并发动全球性攻击,要找出这样复杂的攻击是一件难事。
3)数据采集、数据分析方法不足
高速网络技术,尤其是交换技术以及加密信道技术的发展,使得通过共享网段侦听的网络数据采集方法显得不足,而巨大的通信量对数据分析也提出了新的要求。
4)检测模型始终落后于攻击者的新知识和技术手段
入侵检测系统构建模型始终落后于攻击者的新知识和技术手段。主要表现在以下几个方面:
a、攻击者利用加密技术欺骗IDS,躲避IDS的安全策略;
b、攻击者快速发动进攻,使IDS无法反应,大规模的攻击,使IDS判断出错;
c、直接破坏IDS;
d、智能攻击技术,边攻击边学习,变IDS为攻击者的工具。
在安全防御中,IDS与防火墙等其他安全设备协同工作,共同保护网络的安全。防火墙主要用于抵御外部网络的入侵,但对于内部攻击几乎束手无策。而IDS则作为防火墙的合理补充,帮助系统应对网络攻击,扩展了系统管理员在安全审计、监视、进攻识别和响应等方面的安全管理能力,提高了信息安全基础结构的完整性。
二、入侵防御技术(IPS)
1、入侵防御技术的定义
入侵防御系统(IPS: Intrusion Prevention System)是通过直接嵌入到网络流量中,预先对入侵活动和攻击性网络流量进行拦截,避免造成损失的主动防护系统。IPS通过一个网络接口接收来自外部系统的流量,经过检查确认其中不包含异常活动或可疑内容后,再通过另外一个端口将它传送到内部系统中,能够监视网络或网络设备的网络资料传输行为,并能即时中断、调整或隔离一些不正常或是具有伤害性的网络资料传输行为。
2、IPS的工作原理
入侵防御技术(IPS)是一种主动的安全防御技术,旨在防止恶意软件入侵和数据泄露。它通过实时监测和拦截网络流量中的威胁,保护网络和系统免受攻击。
IPS的工作原理包括以下几个步骤:
- 数据包捕获:IPS通过在网络接口上捕获数据包来实时监测网络流量。这些数据包可以是流入或流出的,以全面检测潜在的威胁。
- 威胁识别:IPS使用先进的检测算法和特征库来识别恶意软件、恶意行为和其他潜在威胁。它还可以识别各种攻击类型,如SQL注入、跨站脚本攻击、缓冲区溢出等。
- 威胁拦截:一旦IPS识别到威胁,它会立即采取措施拦截恶意流量,以防止攻击成功。这些措施可能包括丢弃数据包、断开连接、隔离受感染的主机等。
- 警报与日志:IPS会生成警报和日志记录,以通知管理员存在威胁并提供详细信息。这些信息对于后续分析和改进安全策略非常有用。
- 自我保护:为了防止IPS自身被攻破,它通常具有自我保护机制。这些机制可能包括防火墙规则、白名单功能、进程保护等,以确保IPS的正常运行和有效性。
入侵防御技术(IPS)通过实时监测和拦截网络流量中的威胁,提供了一种有效的安全防御手段。它可以保护网络和系统免受各种攻击的侵害,并具有自我保护机制以确保其有效性。
3、IPS的功能特点和性能扩展
1)IPS-功能特点
IPS是一种防御深层入侵行为的串接部署设备。自IPS概念出现以来,用户和厂商的最大困惑就是:如何确保IPS无误报和滥报,在实时发现攻击行为的同时,保证IPS不会成为新的网络故障点。未解决这个问题,IPS具有其独特的功能特点:
(1)精确阻断
IPS的重点就是要达到精确阻断,即精确判断各种深层的攻击行为,并实现实时的阻断。 确保中断、调整或隔离的是不正常或是具有伤害性的网络行为。
(2)深层防御
IPS的第二个重点就是防御各种深层入侵行为,这也是IPS系统区别于其他安全产品的本质特点。即在确保精确阻断的基础上,尽量多地发现攻击行为,如SQL注入攻击、缓冲区溢出攻击、恶意代码攻击、后门、木马、间谍软件等达到深层防御。
2)IPS-性能扩展
IPS常用的攻击检测方法有两种:一种方法是通过定义攻击行为的数据特征来实现对已知攻击的检测,其优势是技术上实现简单、易于扩充、可迅速实现对特定新攻击的检测和拦截,但仅能识别已知攻击、抗变种能力弱;另一种方法是通过分析攻击产生原理,定义攻击类型的统一特征,能准确识别基于相同原理的各种攻击、不受攻击变种的影响,但技术门槛高、扩充复杂、应对新攻击速度有限。
4、IPS的优势和弱点
实时检测与主动防御是IPS最为核心的设计理念,也是其区别于防火墙和IDS的立足之本。为实现这一理念,IPS在如下四个方面实现了技术突破,形成了不可低估的优势:
1)在线安装
IPS保留IDS实时检测的技术与功能,但是却采用了防火墙式的在线安装,即直接嵌入到网络流量中,通过一个网络端口接收来自外部系统的流量,经过检查确认其中不包含异常活动或可疑内容后,再通过另外一个端口将它传送到内部系统中;
2)实时阻断
IPS具有强有力的实时阻断功能,能够预先对入侵活动和攻击性网络流量进行拦截,避免其造成任何损失;
3)先进的检测技术
主要是并行处理检测和协议重组分析。所谓并行处理检测是指所有流经IPS的数据包,都采用并行处理方式进行过滤器匹配,实现在一个时钟周期内,遍历所有数据包过滤器;
4)特殊规则植入功能
IPS允许植入特殊规则以阻止恶意代码。IPS能够辅助实施可接收应用策略(AUP),如禁止使用对等的文件共享应用和占有大量带宽的免费互联网电话服务工具等。
尽管如此,IPS仍有其不可忽视的弱点:
1)总体拥有成本高
高可用性实时计算需求决定了IPS必须选用高端的专用计算设备,使其成本相对较高。
2)单点故障
IPS的阻断能力决定其必须采用网络嵌入模式,而这就可能造成单点故障。
3)性能瓶颈
即使IPS设备不出现故障,它仍然是一个潜在的网络瓶颈,不仅会增加滞后时间,而且会降低网络的效率,因此,绝大多数高端IPS产品供应商都通过使用自定义硬件(FPGA、网络处理器或者ASIC芯片)来提高IPS的运行效率,以减少其对于业务网络的负面影响。
4)误报与漏报
在网络流量几乎成几何级数增加的情况下,一旦生成警报,最基本的要求就是不让“误报”有可乘之机,导致合法流量也很有可能被意外拦截。
入侵检测系统(IDS)和入侵防御系统(IPS)都是重要的网络安全工具,但在工作方式和使用场景上有所不同。
IDS被视为审计类产品,主要关注于对网络或系统中的事件进行实时检测,并根据规则进行安全审计。它能够及时发现并警告系统管理员是否有入侵行为,并提供对内部攻击、外部攻击和误操作的实时保护。IDS可以分析计算机网络或系统中的关键信息,检查是否有违反安全策略的行为或被攻击的迹象。当有问题发生时,IDS会产生警报。IDS较多应用在防火墙之后,作为第二道安全闸门来提供额外的安全层。
相比之下,IPS被视为一种主动的、智能的入侵检测和防范系统。IPS不仅具备IDS的功能,而且能通过响应方式实时地终止入侵行为的发生和发展。它不仅能检测攻击,还能有效阻断攻击,提供实时的保护。IPS注重主动防御,可以设置过滤器来分析数据包,阻断恶意内容的数据包,并接受进一步检查的可疑数据包。IPS的关键技术包括主动防御技术、防火墙与IPS互动技术、集成多种检测技术和硬件加速系统等。
简而言之,IDS和IPS在网络安全中都发挥着重要作用。IDS主要侧重于检测入侵行为并提供警告,而IPS则更注重主动防御和实时阻断攻击。两者可以结合使用,共同为网络和系统提供更全面和有效的安全保护。
博客:http://xiejava.ishareread.com/
相关文章:
安全防御之入侵检测与防范技术
安全防御中的入侵检测与防范技术主要涉及到入侵检测系统(IDS)和入侵防御技术(IPS)。 入侵检测系统(IDS)是一种对入侵行为自动进行检测、监控和分析的软件与硬件的组合系统。IDS通过从计算机网络或系统中的若…...
Leetcode2807. 在链表中插入最大公约数
Problem: 2807. 在链表中插入最大公约数 文章目录 题目思路注意点Code 题目思路 模拟插入流程: 检测当前节点是否有后置结点;将当前结点与后置结点的值做最大公约数处理得到新结点的值,然后插入到当前结点之后;再将检测结点向后…...
MySQL-DML
DML是数据操纵语言,用来对表中数据进行增删改操纵。 添加数据:INSERT 1.给指定字段添加数据:INSERT INTO 表名(字段名1,字段名2,...)VALUES(值1,值2); 2.给全部字段添加数据:INSERT INTO 表名VALUES(值1,值2) 3.给指定字段批量添…...

开源项目 | 完整部署流程、一款开源人人可用的开源数据可视化分析工具
📚 项目介绍 在互联网数据大爆炸的这几年,各类数据处理、数据可视化的需求使得 GitHub 上诞生了一大批高质量的 BI 工具。 借助这些 BI 工具,我们能够大幅提升数据分析效率、生成更高质量的项目报告,让用户通过直观的数据看到结…...

我建立了一个资源分享群
我建立了一个资源分享群 在为寻找资源犯愁? 在为分享资源犯愁? 一起加入分享资源群(是wx群哦)吧!你可以分享自己的资源帮助他人。你可以在群组里需求资源获取别人的帮助。发广告请绕行,会被拉黑哦 微信…...
C++中几个常用的类型选择模板函数
std::enable_if<B, T>::type 如果编译期满足B,那么返回类型T,否则编译报错 std::conditional<B, T, F>::type 如果编译期满足B,那么返回类型T,否则返回类型F 下面是一个示例,展示如何使用 std::condit…...
【LeetCode】1321. 餐馆营业额变化增长
表: Customer ------------------------ | Column Name | Type | ------------------------ | customer_id | int | | name | varchar | | visited_on | date | | amount | int | ------------------------ 在 SQL 中,(custo…...

【网络技术】【Kali Linux】Wireshark嗅探(八)动态主机配置协议(DHCP)
一、实验目的 本次实验使用 Wireshark (“网鲨”)流量分析工具进行网络流量嗅探,旨在初步了解动态主机配置协议(DHCP协议)的工作原理。 二、DHCP协议概述 动态主机配置协议( D ynamic H ost C onfigurat…...

算法29:不同路径问题(力扣62和63题)--针对算法28进行扩展
题目:力扣(LeetCode)官网 - 全球极客挚爱的技术成长平台 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角࿰…...

openGauss学习笔记-188 openGauss 数据库运维-常见故障定位案例-core问题定位
文章目录 openGauss学习笔记-188 openGauss 数据库运维-常见故障定位案例-core问题定位188.1 磁盘满故障引起的core问题188.1.1 问题现象188.1.2 原因分析188.1.3 处理办法 188.2 GUC参数log_directory设置不正确引起的core问题188.2.1 问题现象188.2.2 原因分析188.2.3 处理办…...

kubernetes入门到进阶(5)
目录 镜像仓库:怎么用好docker hub这个宝藏 什么是镜像仓库(Registry) 什么是docker hub 如何在docker hub上挑选镜像 docker hub上进行概念股命名规则是什么 该怎么上传自己的镜像 离线环境该怎么办 小结 镜像仓库:怎么用好docke…...

【字典树Trie】LeetCode-139. 单词拆分
139. 单词拆分。 给你一个字符串 s 和一个字符串列表 wordDict 作为字典。请你判断是否可以利用字典中出现的单词拼接出 s 。 注意:不要求字典中出现的单词全部都使用,并且字典中的单词可以重复使用。 示例 1: 输入: s "leetcode&q…...
pytest常用的第三方插件介绍
本节介绍了如何安装和使用第三方插件。如果你想要编写自己的插件,请参阅“编写插件”。 通过pip可以轻松安装第三方插件: pip install pytest-NAME pip uninstall pytest-NAME如果已经安装了插件,pytest会自动找到并集成它,无需手…...

【经验】VSCode连接远程服务器(可以使用git管理、方便查看和编辑Linux源码)
1、查看OpenSSH Windows10通常自带OpenSSH不需要安装。 Windows10下检查是否已经安装OpenSSH的方法: 1)按下快捷键Win + X,选择Windows PoweShell(管理员) 2)输入以下指令: Get-WindowsCapability -Online | ? Name -like ‘OpenSSH*’ 3)如果电脑未安装OpenSSH,…...

机器学习-生存分析:如何基于随机生存森林训练乳腺癌风险评估模型?
一、 引言 乳腺癌是女性最常见的恶性肿瘤之一,也是全球范围内女性死亡率最高的癌症之一。据统计,每年全球有超过200万人被诊断为乳腺癌,其中约60万人死于该疾病。因此,乳腺癌的早期诊断和风险评估对于预防和治疗乳腺癌具有非常重要…...
MySQL学习笔记1: 数据库的简单介绍
目录 1. 数据库是什么2. 数据库这一类软件中的一些典型代表2.1. Oracle2.2. MySQL2.3. SQL Server2.4. SQLite (lite 轻量版) 3. 数据库的类型3.1. 关系型数据库3.2. 非关系型数据库 4. 总结 1. 数据库是什么 数据库是一类软件,这一类软件可以用来管理数据…...
【Docker】安装ELK(Docker Compose)
一、创建挂载目录 mkdir -p /docker/elk/elasticsearch/{plugins,data} mkdir -p /docker/elk/logstash 二、给目录授权 chmod 777 /docker/elk/elasticsearch/data 创建logstash配置文件 vim /docker/elk/logstash/logstash.conf input {tcp {mode => "server" h…...

【机器学习:欧氏距离 】机器学习中欧氏距离的理解和应用
【机器学习:欧氏距离 】机器学习中欧氏距离的理解和应用 距离公式二维更高的维度点以外的物体属性欧几里得距离的平方概括历史 在数学中,欧氏距离’是指欧氏空间中任意两点之间的直线距离。这种距离可以通过应用勾股定理来计算,利用两点的笛卡…...

系统安全及应用
1、基本安全措施 1.1、系统账号清理 在Linux系统中,除了用户手动创建的各种账号之外,还包括随系统或程序安装过程而生产的其他大量账号。除了超级用户root之外,其他大量账号只是用来维护系统运作、启动或保持服务进程,一般是不允…...

Danil Pristupov Fork(强大而易用的Git客户端) for Mac/Windows
在当今软件开发领域,团队协作和版本控制是非常重要的方面。在这个过程中,Git成为了最受欢迎的版本控制工具之一。然而,对于Git的使用,一个好的客户端是至关重要的。 今天,我们要为大家介绍一款强大而易用的Git客户端—…...
在软件开发中正确使用MySQL日期时间类型的深度解析
在日常软件开发场景中,时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志,到供应链系统的物流节点时间戳,时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库,其日期时间类型的…...

Linux相关概念和易错知识点(42)(TCP的连接管理、可靠性、面临复杂网络的处理)
目录 1.TCP的连接管理机制(1)三次握手①握手过程②对握手过程的理解 (2)四次挥手(3)握手和挥手的触发(4)状态切换①挥手过程中状态的切换②握手过程中状态的切换 2.TCP的可靠性&…...
Unit 1 深度强化学习简介
Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库,例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体,比如 SnowballFight、Huggy the Do…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...
Hive 存储格式深度解析:从 TextFile 到 ORC,如何选对数据存储方案?
在大数据处理领域,Hive 作为 Hadoop 生态中重要的数据仓库工具,其存储格式的选择直接影响数据存储成本、查询效率和计算资源消耗。面对 TextFile、SequenceFile、Parquet、RCFile、ORC 等多种存储格式,很多开发者常常陷入选择困境。本文将从底…...

基于 TAPD 进行项目管理
起因 自己写了个小工具,仓库用的Github。之前在用markdown进行需求管理,现在随着功能的增加,感觉有点难以管理了,所以用TAPD这个工具进行需求、Bug管理。 操作流程 注册 TAPD,需要提供一个企业名新建一个项目&#…...
08. C#入门系列【类的基本概念】:开启编程世界的奇妙冒险
C#入门系列【类的基本概念】:开启编程世界的奇妙冒险 嘿,各位编程小白探险家!欢迎来到 C# 的奇幻大陆!今天咱们要深入探索这片大陆上至关重要的 “建筑”—— 类!别害怕,跟着我,保准让你轻松搞…...
CSS | transition 和 transform的用处和区别
省流总结: transform用于变换/变形,transition是动画控制器 transform 用来对元素进行变形,常见的操作如下,它是立即生效的样式变形属性。 旋转 rotate(角度deg)、平移 translateX(像素px)、缩放 scale(倍数)、倾斜 skewX(角度…...
k8s从入门到放弃之HPA控制器
k8s从入门到放弃之HPA控制器 Kubernetes中的Horizontal Pod Autoscaler (HPA)控制器是一种用于自动扩展部署、副本集或复制控制器中Pod数量的机制。它可以根据观察到的CPU利用率(或其他自定义指标)来调整这些对象的规模,从而帮助应用程序在负…...

以太网PHY布局布线指南
1. 简介 对于以太网布局布线遵循以下准则很重要,因为这将有助于减少信号发射,最大程度地减少噪声,确保器件作用,最大程度地减少泄漏并提高信号质量。 2. PHY设计准则 2.1 DRC错误检查 首先检查DRC规则是否设置正确,然…...