Ghidra 逆向工程实战:看看 macOS 恶意软件动了什么手脚

💡 原文中文,约10700字,阅读约需26分钟。
📝

内容提要

本文介绍了逆向工程和Ghidra工具,逆向工程是通过分析已编译的软件程序来了解其内部逻辑,Ghidra是一款由美国国家安全局开发的逆向工程工具。文章还介绍了一种伪装成DMG文件的恶意软件,通过执行恶意行为来危害用户的计算机。最后,作者使用Ghidra工具对恶意软件进行了逆向分析,揭示了其内部逻辑和恶意行为。

🔎

延伸解读

恶意软件如何隐藏与执行

该恶意软件通过十六进制编码隐藏其核心恶意命令,运行时使用hex_decode函数解码,再通过_system执行。这种手法增加了静态分析的难度,但逆向工程中识别解码函数是关键。此外,恶意软件会关闭终端窗口以隐藏活动,体现了其反侦察意识。

数据窃取的具体目标

恶意软件收集的信息非常广泛,包括系统软硬件信息、多种加密货币钱包数据、Safari和Chromium系列浏览器的Cookies及登录数据、Firefox用户数据、Apple备忘录数据库、桌面和文档文件,甚至尝试提取系统密码和登录钥匙串。这些数据最终被压缩并发送到远程服务器。

Ghidra在逆向分析中的角色

Ghidra提供了反汇编、反编译、程序树、符号树等视图,帮助分析者理解二进制文件的结构和逻辑。通过识别入口点函数和重命名混淆的函数,可以逐步梳理恶意软件的行为流程。其开源免费的特性降低了逆向工程的门槛。

用户防护建议

文章通过实际案例提醒用户,不要随意点击不明链接或下载来源不明的文件,尤其是伪装成正常软件的DMG文件。一旦执行,恶意软件可能窃取敏感信息并发送给攻击者。保持警惕和及时更新系统是基本的防护措施。

❓

Q&A

什么是逆向工程?

逆向工程是通过分析已编译的软件程序来了解其内部逻辑的过程。

Ghidra是什么?

Ghidra是由美国国家安全局开发的开源逆向工程工具,支持多种处理器架构,且免费使用。

恶意软件是如何伪装的?

恶意软件伪装成DMG格式文件,用户点击后会被激活并执行恶意行为。

如何使用Ghidra分析恶意软件?

使用Ghidra时,首先创建新项目并导入恶意软件文件,然后利用其多种视图窗口分析软件的结构和功能。

恶意软件的核心行为是什么?

恶意软件的核心行为是通过十六进制编码隐藏其真实意图,收集用户的系统信息、密码和浏览器数据,并发送到攻击者的服务器。

用户如何防范恶意软件?

用户应保持警惕,避免点击不明链接或下载未知文件,以防恶意软件攻击。

🏷️

标签

➡️

继续阅读