SDN-Defense + Snort 初步介绍

SDN-Defense + Snort 初步介绍

tags: OpenSource

OVS vs P4Switch

由於 OpenFlow 的限制:无法辨认起初的K个封包
因此需要Controller的加入,造成Controller的bottleneck
所以在架构中多了P4Switch处理起初的K个封包

  • P4Switch 特性:
    • flexible parsing
    • hashing over parsed fields
    • support registers to maintain stateful flow records
      • 我觉得 ovs 也有 ...

PS: OVS vs P4Switch <--> SDN-Defense 架构

 想了解 OpenFlow 限制 以及 加入P4而补足的地方,所以
 由论文 switch 到 GitHub 看看实作细节 
 

SDN-Defense 架构


截自(Ref):https://github.com/cchliu/SDN-Defense

  • 架构说明:
    • Role:
      • HostA servers: traffic generator
      • P4Switch: identify first K packets of each flow
      • Snort : sniffs packets & sends alerts
      • Ryu : extracts 5-tuple info. about the malicious flow & installs a rule into OVS to drop flow
    • Operation:
      • Host A 产生流量 并 丢给 Host B
      • 经过(由) P4Switch 处理 前K个封包 经由eth0 复制给 controller
      • snort 因此可以基於某些Rule来判断 是否发出警报
      • 当发出警报,Ryu 撷取封包特徵(5-tuple info.) 安装 flow 到 OVS switch 进行 switch level 调整
      • 使得 Host B 不被攻陷

Snort

图文有符

wiki:

Snort是一套开放原始码的网路入侵预防软件与网路入侵检测软件。Snort使用了以侦测签章与通讯协定的侦测方法。截至目前为止,Snort的被下载次数已达到数百万次。 Snort被认为是全世界最广泛使用的入侵预防与侦测软件。

Snort Intergration

论文提及Snort + 使用的 Controller Application 为 Ryu , 所以
查到了这个 Ryu Docs:Snort Intergration 发现原来 其实论文写的架构需要计算能力强的电脑。

属於 Option 1 : Ryu and Snort on the same machine

TODO : Ryu + Snort --> this paper Reproduce

  • Installation Snort
  • Configure Snort
  • Usage

Reference


<<:  Day30 D3js 浪漫突进的回顾及展望

>>:  Laravel 实战经验分享 - Day30 回头看看,以及未来要干嘛

Day16:今天来聊一下如何使用njRAT RAT Trojan控制Windows电脑攻防

攻击者会使用Trojan horses(木马程序)来诱骗使用者在电脑上执行预先设计的操作, 一旦木马...

介绍Vertex(3) | ML#Day20

Mail 通知 训练好模型之後,Google会主动发mail通知。 训练失败 其实有可能训练一半就失...

Golang-gRPC & Protocol Buffers

之前都是使用RESTful API开发 换工作面试几轮之後发现有蛮多家公司都在使用gRPC 就多学一...

Day 26 |> Phoenix |> LiveView |> 简单的范例

这篇文章,要来做一个最简单的 LiveView 范例,简单了解一下他怎麽用,体会一下他的运作方式。 ...

Day8-安装Kind要在docker之後

从上一章了解各种K8s的特点,在这章将会教学如何安装Kind。 由於其利用docker的特性,会比使...