0%

僵尸网络检测-图神经网络

概述:本篇文章主要来源于对论文《AUTOMATING BOTNET DETECTION WITH GRAPH NEURAL NETWORKS》阅读过程中对僵尸网络检测技术的一些总结与思考,后续还会更新其他僵尸网络检测方面的一些新进展。

僵尸网络检测现状

  • 采用流量的一些行为模式进行检测,例如区分僵尸网络和正常流量包大小与使用的端口、通信数据包的大小

  • 使用先验知识,例如域名黑名单列表、DNS黑名单

  • 蜜罐,使用蜜罐技术研究发现僵尸网络,但是蜜罐陷阱只能捕捉到想要连接到蜜罐的僵尸网络节点,而对其他的僵尸网络节点没有发现能力,

利用拓扑识别僵尸网络

本文基于的客观事实:

  • 无论是中心化的僵尸网络与非中心化的僵尸网络,都与背景流量在拓扑结构上展现出了一些不同点。
    • 中心化的僵尸网络表现出明显的分层星型结构
    • 非中心化的P2P僵尸网络也表现出与正常背景流量的拓扑上的不同节点间的关系更加紧密,因为P2P僵尸网络需要频繁的在不同节点间传输命令,随机游走的时达到僵尸网络固定分布的速率(mixing rate)远高于背景流量。

  在下面的途中红色为P2P僵尸网络的拓扑,我们明显可以看出,P2P僵尸网络中的节点能够通过更少的跳数到达其他节点。

image

  本文的研究主要集中在分散式僵尸网络。

论文存在的问题:论文默认P2P全部都为僵尸网络,而在真实情况中还是有些合法也采用P2P等分散的耦合方式进行通信,该文章直接将其判断为僵尸网络并不合适,在实际使用中还需要使用一定的策略判断是不是正常的P2P应用。

Graption: Automated Detection of P2P Applications using Traffic Dispersion Graphs (TDGs)

边:两个IP地址之间发生通信,则建立一条边

产出:dubbed Graption(P2P僵尸网络检测工具)

首先通过流级别的特征将数据进行划分,然后建立起关系图,然后使用关系图来识别P2P应用程序,最后提取正则表达式来决定该应用需要被禁止还是通过。

flow使用标准的五元组

1.Mermaid流程图

参考文档

1
2
3
4
5
graph LR
A(sql注入) --> B(普通注入)
A --> C(圆角长方形)
C-->D(布尔型盲注)
C-->E(延时盲注)

2.数学公式

参考文档

  单行数学公式:

  行内数学公式$\Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\ $

标题二

1.表格

  • [ ] 计划任务
  • [x] 完成任务

2. 列表

项目 Value
电脑 $1600
手机 $12
导管 $1
Column 1 Column 2
centered 文本居中 right-aligned 文本居左

3.note标记

Default

primary

success

info

warning

danger

参考文献
  • xxx
  • xxx