如何使用flare-floss自动从恶意软件中提取混淆字符串

admin 2024年11月19日22:59:59评论20 views字数 1914阅读6分22秒阅读模式

如何使用flare-floss自动从恶意软件中提取混淆字符串

关于flare-floss

flare-floss是一款功能强大的恶意软件分析工具,该工具可以帮助广大研究人员自动从恶意软件中提取混淆字符串。

如何使用flare-floss自动从恶意软件中提取混淆字符串

许多恶意软件作者不会使用硬核打包程序严密保护后门,而是通过仅混淆可执行文件的关键部分来逃避启发式检测。通常,这些部分是用于配置域、文件和其他感染工件的字符串和资源。这些关键特征不会以纯文本形式显示,因此会在基本静态分析期间给我们的工作提升难度。

flare-floss使用高级静态分析技术自动从恶意软件二进制文件中提取和反混淆所有字符串,我们可以使用它来增强对未知二进制文件的基本静态分析。

功能介绍

当前版本的flare-floss支持提取以下所有字符串类型:

1、静态字符串:“常规” ASCII 和 UTF-16LE 字符串;

2、堆栈字符串:运行时在堆栈上构造的字符串;

3、紧密字符串:堆栈字符串的一种特殊形式,在堆栈上解码;

4、解码字符串:在函数中解码的字符串;

工具要求

Python 3

工具安装

由于该工具基于Python 3开发,因此我们首先需要在本地设备上安装并配置好最新版本的Python 3环境。

接下来,广大研究人员可以直接使用下列命令将该项目源码克隆至本地:

git clone https://github.com/mandiant/flare-floss.git

然后切换到项目目录中,使用pip命令和项目提供的requirements.txt安装该工具所需的其他依赖组件:

cd flare-flosspip install -r requirements.txt
工具使用

从恶意软件二进制文件中提取混淆的字符串:

$ floss malware.exe

仅提取堆栈和紧密字符串:

$ floss --only stack tight -- suspicious.exe

不提取静态字符串:

$ floss --no static -- backdoor.exe

显示帮助/使用屏幕:

$ floss -h  # show core arguments$ floss -H  # show all supported arguments
输出样例
$ floss malware.binFLOSS static ASCII strings!This program cannot be run in DOS mode._YYRichYYMdfQ.text`.rdata@.data.idata.didat.relocU  F?;}A@;E_^[HttHt-H'9UWS2_32.dllFreeLibraryGetProcAddressLoadLibraryAGetModuleHandleAGetVersionExAMultiByteToWideCharWideCharToMultiByteSleepGetLastErrorDeleteFileAWriteFile[..snip...]FLOSS static UTF-16 strings,%dFLOSS decoded 4 stringsWinSta0DefaultSoftware\Microsoft\Windows\CurrentVersion\Internet SettingsProxyEnableProxyServerFLOSS extracted 81 stack stringsWinSta0Default'%s' executed.ERR '%s' error[%d].Software\Microsoft\Windows\CurrentVersion\Internet SettingsProxyEnableProxyServerwininet.dllInternetOpenA0A4InternetSetOptionAInternetConnectAInternetQueryOptionAMozilla/4.0 (compatible; MSIE 7.0; Win32)-ERRFILE(%s) wrote(%d).Invalid ojbect.SetFilepoint error[%d].b64_ntop error[%d].GetFileSize error[%d].Creates file error[%d].KCeID5Y/96QTJc1pzi0ZhEBqVG83OnXaL+oxsRdymHS4bFgl7UrWfP2v=wtjNukM[..snip...]
工具运行演示

如何使用flare-floss自动从恶意软件中提取混淆字符串

许可证协议

本项目的开发与发布遵循Apache-2.0开源许可协议。

项目地址

flare-floss

https://github.com/mandiant/flare-floss

原文始发于微信公众号(FreeBuf):如何使用flare-floss自动从恶意软件中提取混淆字符串

 

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年11月19日22:59:59
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   如何使用flare-floss自动从恶意软件中提取混淆字符串https://cn-sec.com/archives/3412975.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息