什么是IDS/IPS?
目录
摘要
0x00 基于网络的IDS和IPS
0x01 设计考虑因素
0X02 IDS/IPS
总结
摘要
摘要
这篇文章主要介绍的是入侵检测系统(IDS)和入侵防御系统(IPS),而这两者均是保护我们网络安全的重要机制。在过去的几年里,网络攻击所带来的安全威胁严重程度已经上升了很多倍,几乎每个月都会发生数起严重的数据泄露事件。基于网络的IDS/IPS并不是一种新出现的技术,但是考虑到网络攻击技术的最新发展趋势,IDS和IPS的实现方式仍然是我们需要理解和考虑的内容。
因此,在这篇文章中,我们将从高层设计角度出发,跟大家讨论一下如何在不同的IT环境中更加有效地部署IDS和IPS。本文包含以下几个话题内容:
1. 什么是基于网络的IDS和IPS
2. 什么是基于主机的IDS和IPS
3. 企业环境下的IDS/IPS设计
4. 基于设备的IDS/IPS
5. 基于路由器的IDS/IPS
6. 基于防火墙的IDS/IPS
7. 基于云环境下的IDS/IPS实现
8. 针对智能物联网设备的IDS/IPS设计
9. 使用机器学习算法实现入侵检测
0x00 什么是基于网络的IDS和IPS?
入侵检测系统(IDS)是一种通过实时监控网络流量来定位和识别恶意流量的软件。在网络系统中,IDS所处的位置是一个非常关键的设计因素,IDS一般会部署在防火墙之后,但我们还应该在充分了解网络数据刘和整体网络架构之后再去考虑IDS的部署位置。除此之外,为了进一步提升网络的整体安全性,我们还建议可以部署多个IDS。常用的入侵检测方法如下:
a. 使用签名:厂商可以提供2000多种签名,IDS可以使用这些签名对网络流量进行模式匹配。当一个新的数据包进入我们的网络之后,它可以根据数据库中的签名数据来分析其相似度,如果检测到了匹配发生,则会发出警报。
b. 搜索异常:即为用户的使用操作设定一条基准线。比如说,如果三十个人同时打开了一个连接(考虑连接数x5),那么如果一个非正常的请求同时建立了30×5=150条连接,则会发出警报。
c. 协议异常:即检测基于协议的异常信息。例如系统所使用的协议为HTTP,但系统检测到了某些请求使用了其他协议或者未知命令时,系统则会认为其违反了常规协议,接下来便会发出警报。
当攻击发生时,入侵检测系统只能发出警报,它并不能防止攻击的发生。而入侵防御系统(IPS)却能有效地组织攻击行为的发生,因为所有的网络流量在达到目标服务器之前,都需要流经IPS。所以在没有得到允许的情况下,恶意软件是无法触及服务器的。
企业环境下的IDS设计架构如下图所示:
0x01 设计考虑因素
a. IDS一般部署在防火墙之后。
b. 在上面的设计图中,Location 1部署的IDS用于保护Web服务器。
c. Location 2部署的IDS用于保护余下的网络组件免受恶意软件的危害。
d. 这是一个基于网络的IDS,而并非基于主机的IDS,因此它无法检测到网络中两台主机之间所生成的恶意软件。
企业环境下的IPS设计架构如下图所示:
0X02 IDS/IPS
基于主机的IDS/IPS
基于主机的IDS只能够监控一个系统,它运行在你需要保护的主机之中,它能够读取主机的日志并寻找异常。但需要注意的是,当攻击发生之后,基于主机的IDS才能够检测到异常。基于网络的IPS能够检测到网段中的数据包,如果基于网络的IPS设计得当的话,它也许能够代替基于主机的IPS。基于主机的IDS其另一个缺点就是,网络中的每一台主机都需要部署一个基于主机的IDS系统。你可以设想一下,如果你的环境中有5000台主机,这样一来你的部署成本就会非常高了。
基于设备的IDS/IPS
你可以在一台物理服务器或虚拟服务器中安装IDS,但你需要开启两个接口来处理流入和流出的网络流量。除此之外,你还可以在Ubuntu服务器(虚拟机)上安装类似Snort的IDS软件。
基于路由器的IDS/IPS
在一个网络中,几乎所有的流量都要经过路由器。路由器作为一个网络系统的网关,它是系统内主机与外部网络交互的桥梁。因此在网络安全设计架构中,路由器也是IDS和IPS系统可以考虑部署的地方。目前有很多可以整合进路由器的第三方软件,而它们可以构成网络系统抵御外部威胁的最前线。
基于防火墙的IDS/IPS
防火墙与IDS之间的区别在于,防火墙看起来可以防止外部威胁进入我们的网络,但它并不能监控网络内部所发生的攻击行为。很多厂商会在防火墙中整合IPS和IDS,这样就可以给防火墙又添加了一层保护功能。
基于云环境下的IDS/IPS实现
对于那些将自己的文件和应用托管在云端的用户来说,云服务提供商是否部署了IDS也许会成为客户考虑的其中一个因素。除此之外,用户还可以部署Snort IDS(社区版)来监控和感知威胁。
云环境下的IDS架构如下图所示:
针对智能物联网设备的IDS/IPS设计
随着越来越多的用户开始使用物联网设备或智能家居设备,因此我们还要考虑如何防止IOT设备遭受外部恶意软件的攻击。由于考虑到设备功能和容量大小会不同,因此我们也许要根据设备的性能来设计自定义的IDS。
智能家居环境下的ISD/IPS部署架构如下图所示:
使用机器学习算法实现入侵检测
现在有很多机器学习算法能够检测异常并生成警告。机器学习算法可以对恶意行为的模式进行学习,即使恶意行为发生改变,它也能够迅速生成警报。
将机器学习方法应用到IDS/IPS:
总结
在设计网络安全架构的过程中,我们需要考虑的关键因素就是将IDS/IPS部署在何处。根据网络以及客户环境的不同,我们可以选择的设计方法有很多种。随着物联网设备和智能家居设备的兴起,IDS和IPS系统的重要性也不言而喻。值得一提的是,我们现在遇到的绝大多数的网络攻击之所以能够成功,正是因为这些系统并没有正确部署入侵检测系统。
什么是IDS/IPS?的更多相关文章
- IDS IPS WAF之安全剖析
现在市场上的主流网络安全产品可以分为以下几个大类: 1.基础防火墙类,主要是可实现基本包过滤策略的防火墙,这类是有硬件处理.软件处理等,其主要功能实现是限制对IP:port的访问.基本上的实现都是默认 ...
- FW/IDS/IPS/WAF等安全设备部署方式及优缺点
现在市场上的主流网络安全产品可以分为以下几个大类:1.基础防火墙FW/NGFW类 主要是可实现基本包过滤策略的防火墙,这类是有硬件处理.软件处理等,其主要功能实现是限制对IP:port的访问.基本上的 ...
- 从零开始学安全(二十七)●利用Nmap对防火墙,IDS,IPS 进行欺骗
先介绍什么是防火墙 ids 并联 ips 串联 来看我们nmap 命令
- IDS,IPS,IPD
什么是IDP - 百度文库https://wenku.baidu.com/view/c500cf35eefdc8d376ee3220.html
- IDS 日志分析
[http://blog.csdn.net/cnbird2008/article/details/5792626] General Approach通用方法1. Identify which log ...
- 构建基于Suricata+Splunk的IDS入侵检测系统
一.什么是IDS和IPS? IDS(Intrusion Detection Systems):入侵检测系统,是一种网络安全设备或应用软件,可以依照一定的安全策略,对网络.系统的运行状况进行监视,尽可能 ...
- pfSense QoS IDS
pfSense QoS IDS 来源 https://blanboom.org/2018/pfsense-setup/ 之前我使用的无线路由器是 RT1900ac,其内置了 QoS 和 IDS/IPS ...
- Snort Inline IPS Mode
Snort Inline IPS Mode https://forum.netgate.com/topic/143812/snort-package-4-0-inline-ips-mode-intro ...
- sqlmap用户手册 | WooYun知识库
sqlmap用户手册 说明:本文为转载,对原文中一些明显的拼写错误进行修正,并标注对自己有用的信息. 原文:http://drops.wooyun.org/tips/143 ============ ...
随机推荐
- graphics.drawRect()方法
drawRect方法的官方API文档描述 drawRect public void drawRect(int x, int y, int width, int height) Draws the ou ...
- 控制执行流程之break和continue
1.在任何迭代语句的主体部分,都可以用break和continue来控制程序执行流程. 2.注意: break:用于强行退出循环, 不执行循环中剩余的语句:continue:停止当前的循环,执行下一次 ...
- Apache Hadoop集群安装(NameNode HA + YARN HA + SPARK + 机架感知)
1.主机规划 序号 主机名 IP地址 角色 1 nn-1 192.168.9.21 NameNode.mr-jobhistory.zookeeper.JournalNode 2 nn-2 192.16 ...
- 复习0824js
编程思想: 面向过程:凡事亲力亲为,所有事情的过程都要清楚,注重的是过程. 面向对象:提出需求,找到对象,对象解决这个问题,我们要结果,注重的是结果. 面向对象的特性:封装,继承,多态: JS: 是一 ...
- BOM之定时器
JavaScript中的时间是通过定时器控制的,他们分别是window.setInterval和window.setTimeout,我们当然可以省略window,直接使用方法名称调用. 一 s ...
- kvm-web管理工具webvirtmgr
前言: 使用开源的虚拟化技术,对公司自有的少数服务器进行虚拟化,在满足业务需求的同时,并未增加投入,同时也避免了使用云主机的不便,技术层面,kvm是开源的虚拟化产品,虚拟化性能出众,更重要的是免费!! ...
- 简单python爬虫案例(爬取慕课网全部实战课程信息)
技术选型 下载器是Requests 解析使用的是正则表达式 效果图: 准备好各个包 # -*- coding: utf-8 -*- import requests #第三方下载器 import re ...
- Python 爬虫监控女神的QQ空间新的说说,实现秒赞,并发送说说内容到你的邮箱
这个文章主要是在前一篇文章上新增了说说秒赞的功能 前一篇文章可以了解一下 那么,这次主要功能就是 监控女神的 QQ空间,一旦女神发布新的说说,马上点赞,你的邮箱马上就会收到说说内容,是不是想了解一下 ...
- Robot Framework自定义测试库的作用域的理解
robot framework中,强大的测试库api支持,用户可根据实际需求定义测试库,导入后可使用自定义库中相应的关键字. 当自定义的测试库是类库,则需要考虑一个问题:类实例.用类实现的库可以有内部 ...
- OpenGl 导入读取多个3D模型 并且添加鼠标控制移动旋转
原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/11627508.html 前言: 因为接下来的项目需求是要读取多个3D模型,并且移动拼接,那么我 ...