1.Snort简介

Snort是一个用C语言编写的开放源代码软件,符合GPL(GNU General Public License)的要求。

Snort的官方网站称Snort是一个跨平台、轻量级的网络入侵检测软件。

Snort是一个基于Libpcap的轻量级网络入侵检测系统。
它运行在一个“传感器(Sensor)”主机上,监听网络数据。

Snort对主机的要求不高,这台机器可以使一台捡漏的运行FreeBSD系统的PC,但是至少有一个网卡。Snort讷讷狗狗吧网络数据和规则集进行模式匹配,从而检测可能的入侵企图。或者使用SPADE插件,使用统计学方法对网络数据进行异常检测。

Snort使用一种易于扩展的模块化体系结构,可以加入自己编写的模块来扩展Snort的功能。这些模块包括:HTTP解码插件、TCP数据流重组插件、端口扫描检测插件、FLEXRESP插件以及各种日志输入插件等

Snort的典型运行环境如下图

2.Snort的特点

Snort是一个强大的轻量级的入侵检测系统,它具有实时数据流量分析和捕获IP网络数据包的能力,能够进行协议分析,对内容进行搜索匹配;它能够检测各种不同的攻击方式,对攻击对象进行实时报警;此外,Snort具有很好的扩展性和可移植性。Snort遵循通用公共许可证GPL,所以只要遵守GPL的任何组织和个人都可以使用。

1.Snort的跨平台性能很好

与大多数商用入侵检测软件只能支持其中的1~2中操作系统,甚至需要特定的操作系统不同的是,Snort具有跨平台的特点,他支持的操作系统比较广泛。

2.Snort的功能非常强大

  • Snort具有实时流量分析的能力。能够快速地检测网络攻击,及时地发出报警。Snort的报警机制很丰富,例如:syslog、用户指定的文件、一个UNIX套接字,还有使用SAMBA协议想Windows客户程序发出WinPopup消息
  • Snort呢能够进行协议分析。包括TCP、UDP和ICMP等
  • Snort的日志格式既可以是Tepdump式的二进制格式,也可以解码成ASCII字符形式,更加便于用户检查
  • 使用TCP流插件,Snort可以对TCP包进行重组。Snort能够对IP包的内容进行匹配,但是对于TCP攻击,如果攻击者使用一个程序,每次发送只有字节的TCP包,完全可以避开Snort的模式匹配。而被攻击的主机的TCP协议栈会重组这些数据,将其送给在目标端口上监听的进程,从而使攻击包逃过Snort的监视
  • 使用SPADE(Statistical Packet Anomaly Detection Engine)插件,Snort能够报告非正常的可疑包,从而对端口扫描进行有效的检测。
  • Snort还有很强的系统防护能力。

3.扩展性较好

  • 作为一个轻量级的网络入侵检测系统,Snort有足够的扩展能力。它使用一种简单的规则描述语言。最基本的规则只是包含4个域:处理动作、协议、方向和注意的端口。
  • Snort支持插件,可以使用具有特定功能的报告、检测子系统插件对其功能进行扩展
  • Snort的规则语言非常简单,能够对信的网络攻击做出很快的反应。
  • 遵循公共通用许可证GPL

3.Snort的组成

Snort由3个重要的子系统构成:数据包解码器、检测引擎、日志与报警系统。

(1)数据包解码器

数据包解码器主要是对各种协议栈上的数据包进行解析、预处理,以便提交给检测引擎进行规则匹配。解码器运行在各种协议栈之上,从数据链路层到传输层,最后到应用层。

(2)检测引擎

Snort用一个而为链表存储它的检测规则,其中一维称为规则头,另一维称为规则选项。规则头中防止的是一些公共的属性特征,而规则选项中防止的是一些入侵特征。

为了提高检测速度,通常把最常用的目的IP地址和端口信息放在规则头链表中,而把一些独特的检测标志放在规则选项链表中。

规则匹配查找采用递归的方法进行,检测机制指针对对当前已经建立的链表选项进行检测。当数据包满足一个规则时,就会差法相应的操作。

(3)日志和报警子系统

日志和报警子系统可以在运行Snort的时候以命令行交互的方式进行选择,可供选择的日志形式有3种,报警形式有5种。

Snort可以把数据包以解码后的文本形式或者Tepdump的二进制形式进行记录。解码后的格式便于系统对数据进行分析,而Tcpdump格式可以保证很快的完成磁盘记录功能,而第三种日志机制就是关闭日志服务,什么都不做

报警信息可以发往系统日志。也可以用两种格式记录到报警文件中去,或者通过Samba发送WinPopup信息。发送到报警文件的警告格式分为完全和快递两种格式,完全警告是将保温的爆头信息和警告信息全部记录下来、而快速方式将只把报头中的部分信息记录下来,以便提高记录效率。
系统日志的警告信息可以用Swatch之类的工具很方便的进行监视。WinPopup警告信息则可以很方便的在Windows系统的桌面进行显示。同样,第五种方法就是关闭报警,什么也不做

浅谈入侵检测技术4(snort简介)相关推荐

  1. 异常检测之浅谈入侵检测

    打开微信扫一扫,关注微信公众号[数据与算法联盟] 转载请注明出处:http://blog.csdn.net/gamer_gyt 博主微博:http://weibo.com/234654758 Gith ...

  2. 浅谈区块链技术应用场景

    浅谈区块链技术应用场景 摘要 一,区块链技术简介 二,区块链技术基础 1. 点对点之间传输信息的网络 2. 非对称加密技术 3. 共识机制 三,基于软件层面区块链技术应用场景 应用层 区块链技术与身份 ...

  3. 综述类_网络入侵检测技术综述

    文章目录 网络入侵检测技术综述 大纲 一.入侵检测系统分类 1.基于数据来源划分 2.基于检测技术划分 二.基于传统机器学习的入侵检测 1.入侵数据处理 2.监督机器学习技术 3.无监督机器学习技术 ...

  4. 信息安全-入侵检测技术原理与应用

    一.入侵检测概述 1.1 入侵检测概念 入侵应与受害目标相关联,该受害目标可以是一个大的系统或单个对象 判断与目标相关的操作是否为入侵的依据:对目标的操作是否超出了目标的安全策略范围 入侵:指违背访问 ...

  5. 浅谈GPU虚拟化技术(三)GPU SRIOV及vGPU调度

    本系列文章推送门: 阿里云郑晓:浅谈GPU虚拟化技术(第一章) GPU虚拟化发展史  阿里云郑晓:浅谈GPU虚拟化技术(第二章)GPU虚拟化方案之--GPU直通模式 今天一个小伙伴@我说:" ...

  6. 信息安全软考 第十章 入侵检测技术原理应用

    入侵检测概述 入侵检测技术 ※ 入侵检测系统组成与分类 ※ 入侵检测系统主要产品与技术指标 入侵检测应用 ※ ※    命题规则:上午选择题2分左右,下午案例题结合其他知识考5-8分    入侵检测是 ...

  7. 第10章 入侵检测技术原理与应用

    第10章 入侵检测技术原理与应用 10.1 入侵检测概述 10.1.1 入侵检测概念 入侵检测通过收集操作系统.应用程序.系统程序.网络包等信息发现系统中违背安全策略活危机系统安全的行为.IDS 10 ...

  8. 文献笔记02 网络入侵检测技术综述(信息安全学报)

    文章目录 网络入侵检测技术综述 大纲 一.入侵检测系统分类 1.基于数据来源划分 2.基于检测技术划分 二.基于传统机器学习的入侵检测 1.入侵数据处理 2.监督机器学习技术 3.无监督机器学习技术 ...

  9. 浅谈Android保护技术__代码混淆

    浅谈Android保护技术__代码混淆 浅谈Android保护技术__代码混淆 代码混淆 代码混淆(Obfuscated code)亦称花指令,是将计算机程序的代码,转换成一种功能上等价,但是难于阅读 ...

最新文章

  1. reactor和thread线程_Reactor模型详解:单Reactor多线程与主从Reactor多线程
  2. ANSYS2020R2与Solidworks2019进行关联,但2019安装完后打开出现无法获得下列许可SOLIDWORKS Standard.使用许可文件不支持此版本(-21,126,0)
  3. 随机生成元素升序向量_实验二MATLAB运算基础 -
  4. Kafka设计解析(一)- Kafka背景及架构介绍
  5. [Android Samples视频系列之ApiDemos] App-Activity-Recreate
  6. 一文速览EMNLP 2020中的Transformer量化论文
  7. 程序员需要学些什么?程序员好考吗?
  8. svn删除文件或目录后提交失败及解决
  9. python抖音涨粉代码_抖音最火表白代码
  10. 【深度学习】线性分类器 - 上
  11. 安装了360安全卫士和瑞星杀毒,看迅雷电影很卡,谁有知道的
  12. 视频文件服务器加速,百度云加速视频加速缓存设置教学
  13. 芯片数据分析步骤7 合并重复探针
  14. python选题背景_选题背景及课题研究的目的与意义范例
  15. java arraylist 添加_java ArrayList添加元素全部一样
  16. 前端展示m3u8视频
  17. macOS硬盘如何格式转换?用Tuxera NTFS就够了!
  18. 介绍四种绘制词云图的方法
  19. 干货|什么是字节码?字节码扩展名是什么?
  20. Win10小娜关闭或删除进程

热门文章

  1. Canvas ——画函数线
  2. unity3D游戏开发十五之NGUI二
  3. JavaScript 3D动画库three.js示例篇
  4. 请上司吃饭是技术活,牢记五个步骤三句话术,走好人情受重用
  5. 保养和维护台式计算机的方法,台式电脑的日常保养常识
  6. Everything That Doesn’t Work Yet—— 一切还没有运行完好的事物
  7. 2019年店铺淘客前景分析,怎样避免违规,具体该如何操作?
  8. 三菱服务器有电源不显示,三菱plc模块网络连接状态的功能说明
  9. linux 编译缓存,Linux磁盘缓存(disk cache)详解
  10. 一个springboot+layui开发模板