网站建设、公众号开发、微网站、微商城、小程序就找牛创网络 !

7*24小时服务专线: 152-150-65-006 023-68263070 扫描二维码加我微信 在线QQ

开发工具团结互助,让我们共同进步!

当前位置:主页 > 技术资讯 > 工具 > 开发工具 >

我们的优势: 10年相关行业经验,专业设计师量身定制 设计师一对一服务模式,上百家客户案例! 企业保证,正规流程,正规合作 7*24小时在线服务,售后无忧

Nfstream:Python软件包,提供数据结构,支持网络数据分析,将数据分析功能直接集成在Python代码中以及常规的网络数据处理和分析框架。

文章来源:重庆软件开发 发布时间:2020-02-19 13:59:22 围观次数:
分享到:

摘要:Nfstream可以提供快速,灵活和有效的数据结构,支持在线或离线状态网络数据分析。将数据分析功能直接集成到Python代码中,是一款通用的网络数据处理和分析框架。

  Nfstream可以提供快速,灵活和有效的数据结构,支持在线或离线状态网络数据分析。将数据分析功能直接集成到Python代码中,是一款通用的网络数据处理和分析框架。


功能


  1.性能:Nfstream运行非常快(集成pypy3后,速度将提高10倍),并且对CPU和内存的需求不大;


  2.七层可见性:Nfstream深度数据包检查引擎基于nDPI实现,它使Nfstream能够执行可靠的加密应用程序标识和元数据提取(例如TLS,QUIC,TOR,HTTP,SSH,DNS);


  3.灵活性:引入NFPlugin插件概念,方便功能扩展;


  4.机器学习:支持以NFPlugin的形式添加训练模型;


工具依赖


  大多数研究人员可以运行以下命令来完成NFPlugin依赖组件的配置:


  apt-get install libpcap-dev


工具下载


  使用pip安装


  如果您习惯使用pip,则可以直接使用pip3命令安装该项目的最新版本:


  pip3 install nfstream

  从源码构建


  研究人员还可以使用以下命令在本地克隆项目源代码:


  git clone https://github.com/aouinizied/nfstream.git


工具使用


  当处理非常大的pcap文件时,如果只想将其聚合到网络流中,则只需实现以下代码行,其余代码可以留给Nfstream完成:

from nfstream import NFStreamer

   my_awesome_streamer = NFStreamer(source="facebook.pcap") # or network interface (source="eth0")

      for flow in my_awesome_streamer:

          print(flow)  # print it, append to pandas Dataframe or whatever you want :) !

   NFEntry(

           id=0,

           first_seen=1472393122365,

           last_seen=1472393123665,

           version=4,

           src_port=52066,

           dst_port=443,

           protocol=6,

           vlan_id=0,

           src_ip='192.168.43.18',

           dst_ip='66.220.156.68',

           total_packets=19,

           total_bytes=5745,

           duration=1300,

           src2dst_packets=9,

           src2dst_bytes=1345,

           dst2src_packets=10,

           dst2src_bytes=4400,

           expiration_id=0,

           master_protocol=91,

           app_protocol=119,

           application_name='TLS.Facebook',

           category_name='SocialNetwork',

           client_info='facebook.com',

           server_info='*.facebook.com',

           j3a_client='bfcc1a3891601edb4f137ab7ab25b840',

           j3a_server='2d1e***17ece335c24904f516ad5da12'

   )


将pcap转换为Pandas DataFrame:


import pandas as pd

streamer_awesome = NFStreamer(source='devil.pcap')

data = []

for flow in streamer_awesome:

   data.append(flow.to_namedtuple())

my_df = pd.DataFrame(data=data)

my_df.head(5) # Enjoy!


如果找不到特定的数据流功能,则可以通过几行代码将插件添加到Nfstream:


from nfstream import NFPlugin

class my_awesome_plugin(NFPlugin):

    def on_update(self, obs, entry):

        if obs.length >= 666:

            entry.my_awesome_plugin += 1

streamer_awesome = NFStreamer(source='devil.pcap', plugins=[my_awesome_plugin()])

for flow in streamer_awesome:

   print(flow.my_awesome_plugin) # see your dynamically created metric in generated flows


本文由 重庆软件开发 整理发布,转载请保留出处,内容部分来自于互联网,如有侵权请联系我们删除。

相关热词搜索:Nfstream Python 数据结构 网络数据分析 数据分析功能 网络数据处理和分析框架 重庆软件开发

上一篇:网络安全之医疗行业的潜在网络安全风险:勒索软件,挖矿木马
下一篇:Check-LocalAdminHash:基于PowerShell开发的工具,通过WMI或SMB对多台主机进行身份验证

热门资讯

鼠标向下滚动