美文网首页
基于机器学习的恶意软件加密流量检测研究分享

基于机器学习的恶意软件加密流量检测研究分享

作者: VChao | 来源:发表于2020-03-24 20:31 被阅读0次

    2020/03/24 -
    本篇文章[1]来自FreeBuf,阅读后增加自己的理解。


    引言

    本篇文章主要利用机器学习方法来实现恶意软件的加密流量检测。
    文中介绍,一些企业为了防止这类威胁,会使用硬件HTTPS中间人的方式,也就是我之前自己弄的那个HTTPS中间人攻击的平台。文中指出缺点在与** 使用拦截器的问题在于它昂贵,计算要求高,同时造成网络性能下降,而且它不尊重HTTPS的原始想法,即拥有私密和安全的通信。**

    恶意软件加密流量介绍

    恶意软件逐渐采用加密的流量,这肯定是必然的趋势,不然怎么做到隐蔽,毕竟现在HTTP的检测已经非常普遍了。当然,我感觉HTTP的对抗还是有困难的,毕竟这么多的变种。
    这里他说提出的恶意软件,包括了木马、病毒、蠕虫等等。

    对于流量的处理

    他对流量的处理,好像是分为了三个日志,但是我感觉,如果是为了检测的话,直接使用一条日志是不是更好。很有可能是,他多个日志是不同软件生成的。
    也可能是为了将日志分类吧,可能是存储什么的。
    日志部分包括:连接日志、SSL日志、证书日志

    特征工程

    我看了一下,他这里的流量并不是单独的。而是说,他的这一个样本里面包含了多个连接,所以他的这种样本的处理方式是说,我把一个恶意软件的流量样本全都收集了,这样作为一条样本来处理,因为看到了,他的特征里面有一个SSL连接的占比。

    特征工程

    可以看看他的证书部分使用的特征,这个之前没有接触过。

    数据采集

    负例样本(恶意软件),一方面是从[2]中下载,另一方面是他自己捕获的10W个,利用沙箱来捕获恶意软件的流量。
    我看了[2]的数据集,这个网站上好像还有别的数据集。不过我看了列出来的数据,进去以后,没看明白,因为有很多文件,我本来以为就是一个traffic呢。
    这个就不管了。

    模型检测

    最后的检测的话,他使用随机森林和XGBOOST,不过他的指标是准确率,其他的都没说,这个有点说不过去。
    然后开发了一个Flask的在线检测框架。
    最后他也是弄了一个大数据的检测平台,但是他没有具体说明。
    意思是利用spark从hive中读取数据,数据是流量采集器采集后经过深度包解析之后传回来的日志。

    问题

    1. 因为他的这种方式是以恶意软件生成的全部流量作为样本,那么这种对单条样本(就是单条流量)的检测率准确吗?
    2. 后续我可以自己开发一个flask的这种应用,我记得我之前在github上看到过。

    这篇文章算是给通过加密流量做恶意软件检测提供了思路。

    参考文献

    [1]基于机器学习的恶意软件加密流量检测研究分享
    [2]/datasets-malware

    相关文章

      网友评论

          本文标题:基于机器学习的恶意软件加密流量检测研究分享

          本文链接:https://www.haomeiwen.com/subject/teuayhtx.html