数据安全学习笔记——入侵检测技术原理与应用

一、入侵检测概述

(一)入侵检测概念

判断是否为入侵的依据是:对目标的操作是否超出了目标的安全策略范围。简单的说就是操作是不是超出你的权限。

入侵检测通过收集操作系统、系统程序、应用程序、网络包等信息,发现系统中违背安全策略或危及系统安全的行为。

入侵检测系统,简称为IDS。只能检测,无法阻断。一般采用旁路部署。

入侵防御系统,简称为IPS。可以检测,并阻断。一般采用串行部署。

(二)入侵检测模型

早期入侵检测模型根据审计记录数据,生成系统的轮廓,并检测轮廓的变化,发现入侵行为。

图片

通用入侵检测模型CIDF,把入侵检测系统分成:事件产生器、事件分析器、响应单元和事件数据库。

**事件产生器:**从整个计算环境中获得事件,并向系统的其他部分提供事件。

**事件分析器:**分析所得到的数据,并产生分析结果。

**响应单元:**对分析结果做出反应。

**事件数据****库:**存在各种中间和最终数据。

图片

(三)入侵检测作用

入侵检测系统扮演“预警机”或“安全巡逻人员”的角色,不是阻止入侵事件的发生,而是通过检测技术来发现系统中企图或已经违背安全策略的行为。(只发现,不阻止)

防火墙是小区的门卫保安,只能看门,无法发现翻墙进入的可疑人员。入侵检测系统是小区的巡逻保安,能够发现翻墙进入的可疑人员。

具体如下

(1)发现受保护系统中的入侵行为或异常行为;

(2)检验安全保护措施的有效性;

(3)分析受保护系统所面临的威胁;

(4)有利于阻止安全事件扩大,及时报警触发网络安全应急响应;

(5)可以为网络安全策略的制定提供重要指导;

(6)报警信息可用作网络犯罪取证;

二、入侵检测技术原理

**误用检测:**又称基于特征的入侵检测方法,是指根据已知的入侵模式检测入侵行为。

分类:基于条件概率(贝叶斯定理)、基于状态迁移、基于键盘监控、基于规则。

缺点:高度依赖特征库,检测不出新的攻击。

图片

**异常检测:**通过统计分析,建立系统正常行为的“轨迹”,定义一组系统正常数值,然后将系统运行时的数值与定义的“正常”情况相比较,得出是否有被攻击。(异常登录)

分类:基于统计、基于模式预测、基于文本分类、基于贝叶斯推理

缺点:存在较多误报,可以检测出新的攻击

图片

**
**

三、入侵检测系统组成与分类

**入侵检测系统组成:**数据采集模块、入侵分析引擎模块、应急处理模块、管理配置模块(提供配置服务,是模块和用户的接口)和相关的辅助模块(为入侵分析引擎模块提供信息)

图片

**入侵检测系统分类。**根据IDS的检测数据来源和它的安全作用范围,可分为三类:

  1. 基于主机的入侵检测系统(简称HIDS,分析主机的信息)

HIDS基于主机的入侵检测系统通过收集主机系统的日志文件、系统调用以及应用程序的使用、系统资源、网络通信和用户使用等信息,分析这些信息是否包含攻击特征或异常情况,并依次来判断该主机是否受到入侵。CPU利用率、内存利用率、磁盘空间大小、网络端口使用情况、注册表、文件的完整性、进程信息、系统调用等常作为识别入侵事件的依据。

HIDS软件

SWATCH(实施监视日志的程序)

Tripwire(文件和目录完整性检测工具软件包)

网页防篡改系统(防止网页文件被入侵者非法修改)

图片

2.基于网络的入侵检测系统(简称NIDS,扫描网络通信数据包)

NIDS基于网络的入侵检测系统通过侦听网络系统,捕获数据包,并依据网络包是否包含攻击特征,或者网络通信流是否异常来识别入侵行为。

NIDS能够检测:同步风暴(SYNFlood)、分布式拒绝服务攻击(DDoS);网络扫描;缓冲区溢出攻击;协议攻击;流量异常;非法网络访问。

NIDS通常分为两部分:探测器和管理控制器。

探测器:分布在网络中的不同区域,通过侦听方式获取网络包,探测器将检测到攻击行为形成报警事件,向管理控制器发送报警信息,报告发生入侵行为。

**管理控制器:**可监控不同网络区域的探测器,接收来自探测器的报警信息。

**基于网络的入侵检测系统的优点:**可以监控大型网络的安全状况;对网络影响很小,通常属于被动型的设备,它们只监听网络而不干扰网络的正常运作;很好地避免攻击,对于攻击者甚至是不可见的。

**基于网络的入侵检测系统的缺点:**在高速网络中,NIDS很难处理所有的网络包,因此有可能出现漏检现象。交换机可以将网络分为许多小单元VLAN,而多数交换机不提供统一的监测端口,这就减少了基于网络的入侵检测系统的监测范围。如果网络流量被加密,NIDS中的探测器无法对数据包中的协议进行有效的分析。NIDS仅依靠网络流量无法推知命令的执行结果,从而无法判断攻击是否成功。

3.分布式入侵检测系统(简称DIDS,多台主机、多个网段采集数据综合析)

网络系统结构的复杂化和大型化,带来许多新的入侵检测问题

1.系统的漏洞分散在网络中的各个主机上,这些弱点有可能被攻击者一起用来攻击网络,仅依靠基于主机或网络的IDS不会发现入侵行为。

2.入侵行为不再是单一的行为,而是相互协作的入侵行为。

3.入侵检测所依靠的数据来源分散化,收集原始的检测数据变得困难。如交换型网络使监听网络数据包受到限制。

4.网络传输速度加快,网络的流量增大,集中处理原始数据的方式往往造成检测瓶颈,从而导致漏检面对这些新的入侵检测问题,分布式入侵检测系统应运而生,它可以跨越多个子网检测攻击行为,特别是大型网络。分布式入侵检测系统可以分成两种类型,即基于主机检测的分布式入侵检测系统和基于网络的分布式入侵检测系统。

基于主机检测的分布式入侵检测系统(HDIDS),分成两个部分:主机探测器和入侵管理控制器

图片

基于网络的分布式入侵检测系统(NDIDS),分成两个部分:网络探测器和管理制器

图片

四、入侵检测系统产品与应用

入侵检测相关指标:可靠性、可用性、可扩展性、时效性、准确性、安全性。

1.主机入侵检测系统。北信源主机监控审计系统、360安全卫士、

Mcafee MVISION Endpoint Detection and Response (EDR)

2.网络入侵检测系统。商业IDS产品,所有安全厂商都有。

3.统一威协管理。简称UTM,集成防火墙、入侵检测、防病毒等多种功能。

4.APT高级持续威协检测。复杂性攻击技术,通常将恶意代码嵌入wordexcel,ppt,pdf文档或电子邮件中,以实现更隐蔽的网络攻击,以逃避普通的网络安全检查。

如安全态势感知平台为APT高级持续威协检测产品

入侵检测技术还常用于安全态势感知,以获取网络信息系统的安全状况。网络安全态势感知平台通常汇聚入侵检测系统的报警数据,特别是分布在不同安全区域的报警,然后对其采取数据关联分析、时间序列分析等综合技术手段,给出网络安全状况判断及攻击发展演变趋势。

通俗地讲:在一个网络系统中,有3万台电脑,网络设备2000台,安全设备300台,设备很多,每台设备每天都会产生大量的日志,网络管理员是无法逐一查看日志,虽然入侵检测会分析事件,产生报警信息,但大型的网络中入侵检测设备也会有很多台,这时候态势感知系统就可以发挥作用,将网络系统中的安全设备产生的日志统一输入到系统中,进行分析,产生较为集中的报警信息。除日志分析(也称管理分析、安全大数据分析)外,还可以进行流量分析。

华为CIS安全态势感知系统——全网联动,高速协同

图片

图片

图片

图片

图片

APT攻击案例

肚脑虫(Donot)组织以“克什米尔问题”命名的诱饵漏洞文档,该文档利用了CVE-2017-8570漏洞,攻击流程如图

图片

解决思路:基于静态/动态分析检测可疑恶意电子文件及关联分析网络安全大数据以发现高级持续威活动。APT防护产品有安天追影威分析系统、360天眼新一代威感知系统、华为FireHunter6000系列沙箱及CIS网络安全智能系统(态势感知)。

五、入侵检测系统部署方法

IDS部署的基本过程包含以下几个步骤:

1.根据组织或公司的安全策略要求,确定IDS要监测的对象或保护网段;

2.在监测对象或保护网段,安装IDS探测器,采集网络入侵检测所需要的信息;

3.针对监测对象或保护网段的安全需求,制定相应的检测策略;

4.依据检测策略,选用合适的IDS结构类型;

5.在IDS上,配置入侵检测规则;

6.测试验证IDS的安全策略是否正常执行;

7.运行和维护IDS。

接下来我将给各位同学划分一张学习计划表!

学习计划

那么问题又来了,作为萌新小白,我应该先学什么,再学什么?
既然你都问的这么直白了,我就告诉你,零基础应该从什么开始学起:

阶段一:初级网络安全工程师

接下来我将给大家安排一个为期1个月的网络安全初级计划,当你学完后,你基本可以从事一份网络安全相关的工作,比如渗透测试、Web渗透、安全服务、安全分析等岗位;其中,如果你等保模块学的好,还可以从事等保工程师。

综合薪资区间6k~15k

1、网络安全理论知识(2天)
①了解行业相关背景,前景,确定发展方向。
②学习网络安全相关法律法规。
③网络安全运营的概念。
④等保简介、等保规定、流程和规范。(非常重要)

2、渗透测试基础(1周)
①渗透测试的流程、分类、标准
②信息收集技术:主动/被动信息搜集、Nmap工具、Google Hacking
③漏洞扫描、漏洞利用、原理,利用方法、工具(MSF)、绕过IDS和反病毒侦察
④主机攻防演练:MS17-010、MS08-067、MS10-046、MS12-20等

3、操作系统基础(1周)
①Windows系统常见功能和命令
②Kali Linux系统常见功能和命令
③操作系统安全(系统入侵排查/系统加固基础)

4、计算机网络基础(1周)
①计算机网络基础、协议和架构
②网络通信原理、OSI模型、数据转发流程
③常见协议解析(HTTP、TCP/IP、ARP等)
④网络攻击技术与网络安全防御技术
⑤Web漏洞原理与防御:主动/被动攻击、DDOS攻击、CVE漏洞复现

5、数据库基础操作(2天)
①数据库基础
②SQL语言基础
③数据库安全加固

6、Web渗透(1周)
①HTML、CSS和JavaScript简介
②OWASP Top10
③Web漏洞扫描工具
④Web渗透工具:Nmap、BurpSuite、SQLMap、其他(菜刀、漏扫等)

那么,到此为止,已经耗时1个月左右。你已经成功成为了一名“脚本小子”。那么你还想接着往下探索吗?

阶段二:中级or高级网络安全工程师(看自己能力)

综合薪资区间15k~30k

7、脚本编程学习(4周)
在网络安全领域。是否具备编程能力是“脚本小子”和真正网络安全工程师的本质区别。在实际的渗透测试过程中,面对复杂多变的网络环境,当常用工具不能满足实际需求的时候,往往需要对现有工具进行扩展,或者编写符合我们要求的工具、自动化脚本,这个时候就需要具备一定的编程能力。在分秒必争的CTF竞赛中,想要高效地使用自制的脚本工具来实现各种目的,更是需要拥有编程能力。

零基础入门的同学,我建议选择脚本语言Python/PHP/Go/Java中的一种,对常用库进行编程学习
搭建开发环境和选择IDE,PHP环境推荐Wamp和XAMPP,IDE强烈推荐Sublime;

Python编程学习,学习内容包含:语法、正则、文件、 网络、多线程等常用库,推荐《Python核心编程》,没必要看完

用Python编写漏洞的exp,然后写一个简单的网络爬虫

PHP基本语法学习并书写一个简单的博客系统

熟悉MVC架构,并试着学习一个PHP框架或者Python框架 (可选)

了解Bootstrap的布局或者CSS。

阶段三:顶级网络安全工程师

如果你对网络安全入门感兴趣,那么你需要的话可以点击这里👉网络安全重磅福利:入门&进阶全套282G学习资源包免费分享!

学习资料分享

当然,只给予计划不给予学习资料的行为无异于耍流氓,这里给大家整理了一份【282G】的网络安全工程师从入门到精通的学习资料包,可点击下方二维码链接领取哦。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐