下一代动态网络分析工具FakeNet-NG的Linux平台初体验

简介: 本文讲的是下一代动态网络分析工具FakeNet-NG的Linux平台初体验,在2016年,FLARE推出了一款用Python编写的开源网络分析工具FakeNet-NG。 FakeNet-NG允许安全分析人员在单个Windows主机上使用标准或自定义协议来观察网络应用程序并与其进行交互,这对恶意软件分析和逆向工程特别有用。
本文讲的是 下一代动态网络分析工具FakeNet-NG的Linux平台初体验

下一代动态网络分析工具FakeNet-NG的Linux平台初体验

在2016年,FLARE推出了一款用Python编写的开源网络分析工具FakeNet-NG。 FakeNet-NG允许安全分析人员在单个Windows主机上使用标准或自定义协议来观察网络应用程序并与其进行交互,这对恶意软件分析和逆向工程特别有用。自从FakeNet-NG的推出以来,FLARE又对其进行了一些升级,比如增加了对附加协议的支持。 FakeNet-NG现在具有DNS,HTTP(包括BITS),FTP,TFTP,IRC,SMTP,POP,TCP和UDP以及SSL的即用支持。

不过更令分析人员高兴的是,FLARE现在已将FakeNet-NG引入Linux。这允许分析人员在单个Linux主机上执行基本动态分析,或者在独立的专用设备上使用INetSim搭建虚拟网络环境。虽然INetSim目前仍然是许多分析师的首选工具,但随着FakeNet-NG的兴起,分析师又多了一个用于恶意软件分析的跨平台工具,FakeNet-NG可以直接与所有在安全领域不断出现的基于Python的信息工具进行集成。

在Linux上下载和安装FakeNet-NG

如果你正在运行REMnux,那么就可以直接安装FakeNet-NG了,现有用户可以通过运行update-remnux命令来获取它。

而对于其他Linux版本来说,设置和使用FakeNet-NG将需要Python pip包管理器,net-tools包以及OpenSSL,libffi和libnetfilterqueue的开发文件。至于如何快速获得几个常见的Linux发行版的相应先决条件,我们提供了以下两大方法:

1. 在Debian和Ubuntu上,运行sudo apt-get install python-pip python-dev libssl-dev libffi-dev libnetfilter-queue-dev net-tools命令

2. 在Fedora 25和CentOS 7上:

yum -y update;
yum -y install epel-release; # <-- If CentOS
yum -y install redhat-rpm-config; # <-- If Fedora
yum -y groupinstall 'Development Tools'; yum -y install python-pip python-devel openssl-devel libffi-devel                 libnetfilter_queue-devel net-tools

一旦你的设备满足了这些条件,就可以下载最新版本的FakeNet-NG,并使用setup.py install进行安装。

Windows和Linux下的FakeNet-NG支持

在Linux上,FakeNet-NG可以在专用于网络仿真的单独主机上以MultiHost模式部署,也可以在实验中使用SingleHost模式进行本地分析软件。 Windows仅支持SingleHost模式,默认情况下,FakeNet-NG配置运行在NetworkMode:Auto中,它将在Windows上自动选择Windows或MultiHost模式下的SingleHost模式。下表列出了操作系统当前支持的NetworkMode设置。

下一代动态网络分析工具FakeNet-NG的Linux平台初体验

FakeNet-NG对Linux上SingleHost模式的支持目前存在局限性。

首先,FakeNet-NG还不支持在Linux上对特定进程,主机或端口进行条件重定向,这意味着像ProcessWhiteList这样的设置将无法正常运行,所以开发人员计划在以后的版本中添加对这些设置的支持。同时,SingleHost模式支持将所有互联网绑定的流量重定向到本地监控器,这也是恶意软件分析人员的主要用例。

其次,python-netfilterqueue库被硬编码,以处理长度不超过4012个八位字节的数据报。环回接口通常配置有最大传输单元(MTU)设置,以允许某些应用程序超过此硬编码限制,从而导致意外的网络行为。可能由此引起异常的网络应用程序的示例将通过FTP的大型文件传输,因而对这个问题的解决方法就是重新编译具有较大缓冲区大小的python-netfilterqueue或将环回接口即lo的MTU降低到4012或更小。

在Linux上配置FakeNet-NG

除了新的NetworkMode设置外,对FakeNet-NG的Linux支持还引入了以下Linux特定的配置项:

1.LinuxRedirectNonlocal,对于MultiHost模式来说,此设置指定以逗号分隔的网络接口列表,将所有流量重定向到本地主机,以便FakeNet-NG能够对其进行回复。 FakeNet-NG的默认配置设置为*,它将FakeNet-NG配置为在所有接口上重定向。

2.LinuxFlushIptables,在为FakeNet-NG添加规则之前,LinuxFlushIptables配置项会删除所有的iptables规则。原始规则作为FakeNet-NG关闭序列的一部分进行恢复,当你按Ctrl + C时,它就会被触发。这样可以减少出现意外终止的冲突,错误或重复规则的可能性,并在FakeNet-NG的默认配置中启用。

3.LinuxFlushDnsCommand,该配置项会指定刷新DNS解析器缓存的命令。当在Linux上以SingleHost模式使用FakeNet-NG时,可以确保将名称解析请求转发到DNS服务,如FakeNet-NG DNS监控器,而不是使用缓存的回复。不过LinuxFlushDnsCommand配置项不适用于所有Linux版本,但在默认情况下可以使用Ubuntu Linux的正确命令填充。

在Linux上启动FakeNet-NG

在使用FakeNet-NG之前,请确保禁用那些可能绑定到你计划使用的FakeNet-NG监控器对应端口的任何服务,比如Ubuntu使用本地dnsmasq服务。你可以使用netstat来查找这些服务,并且应该参考你当下使用的Linux版所发行的文档来确定如何禁用它们。

你可以通过使用root权限调用fakeet启动FakeNet-NG,如下图所示。

下一代动态网络分析工具FakeNet-NG的Linux平台初体验

你可以通过直接编辑FakeNet-NG输出第一行显示的文件,或者使用-c命令行选项创建副本并指定其位置来更改FakeNet-NG的配置。

总结

FakeNet-NG现在为Linux提供了一种基于Python的恶意软件动态网络分析工具,同时也支持FakeNet-NG 在 Windows上使用监控器。 REMnux的用户可以直接使用FakeNet-NG,而其他Linu的用户可以使用标准的软件包管理工具进行下载和安装。




原文发布时间为:2017年7月17日
本文作者:xiaohui 
本文来自云栖社区合作伙伴嘶吼,了解相关信息可以关注嘶吼网站。
目录
相关文章
|
7天前
|
安全 Linux 虚拟化
网络名称空间在Linux虚拟化技术中的位置
网络名称空间(Network Namespaces)是Linux内核特性之一,提供了隔离网络环境的能力,使得每个网络名称空间都拥有独立的网络设备、IP地址、路由表、端口号范围以及iptables规则等。这一特性在Linux虚拟化技术中占据了核心位置🌟,它不仅为构建轻量级虚拟化解决方案(如容器📦)提供了基础支持,也在传统的虚拟机技术中发挥作用,实现资源隔离和网络虚拟化。
网络名称空间在Linux虚拟化技术中的位置
|
7天前
|
网络协议 安全 Linux
Linux网络名称空间之独立网络资源管理
Linux网络名称空间是一种强大的虚拟化技术🛠️,它允许用户创建隔离的网络环境🌐,每个环境拥有独立的网络资源和配置。这项技术对于云计算☁️、容器化应用📦和网络安全🔒等领域至关重要。本文将详细介绍在Linux网络名称空间中可以拥有的独立网络资源,并指出应用开发人员在使用时应注意的重点。
|
7天前
|
安全 网络协议 Linux
Linux网络名称空间概述
Linux网络名称空间是操作系统级别的一种虚拟化技术🔄,它允许创建隔离的网络环境🌐,使得每个环境拥有自己独立的网络资源,如IP地址📍、路由表🗺️、防火墙规则🔥等。这种技术是Linux内核功能的一部分,为不同的用户空间进程提供了一种创建和使用独立网络协议栈的方式。本文旨在全方面、多维度解释Linux网络名称空间的概念、必要性和作用。
Linux网络名称空间概述
|
7天前
|
监控 Unix Linux
Linux操作系统调优相关工具(四)查看Network运行状态 和系统整体运行状态
Linux操作系统调优相关工具(四)查看Network运行状态 和系统整体运行状态
22 0
|
14天前
|
存储 前端开发 Linux
Linux系统之部署ToDoList任务管理工具
【4月更文挑战第1天】Linux系统之部署ToDoList任务管理工具
60 1
|
15天前
|
Linux
Linux中centos桌面消失网络图标
Linux中centos桌面消失网络图标
13 0
|
15天前
|
存储 传感器 运维
linux系统资源统计工具
【4月更文挑战第1天】Linux系统监控工具如dstat、htop、glances、vmstat、top、iostat、mpstat、sar和atop,用于跟踪CPU、内存、磁盘I/O、网络和进程性能。这些工具提供实时、交互式和历史数据分析,助力管理员优化系统性能和故障排查。例如,dstat是vmstat等工具的增强版,htop提供彩色界面的进程管理,而atop则结合了多种功能并记录历史数据。
26 5
linux系统资源统计工具
|
25天前
|
存储 Shell Linux
【Shell 命令集合 系统设置 】Linux 软件包管理工具 rpm命令 使用指南
【Shell 命令集合 系统设置 】Linux 软件包管理工具 rpm命令 使用指南
46 0
|
25天前
|
存储 算法 Shell
【Shell 命令集合 备份压缩 】⭐⭐Linux 压缩和归档工具 zip命令 使用指南
【Shell 命令集合 备份压缩 】⭐⭐Linux 压缩和归档工具 zip命令 使用指南
29 0
|
25天前
|
Shell Linux C语言
【Shell 命令集合 网络通讯 】Linux 向指定用户或终端发送消息 write命令 使用指南
【Shell 命令集合 网络通讯 】Linux 向指定用户或终端发送消息 write命令 使用指南
31 0