Binsider:一款简化ELF二进制文件分析的命令行工具
本文将探讨Binsider的功能、用户友好的界面以及如何在Linux中有效地使用它来分析ELF二进制文件。
目录
- Binsider是什么?
- 为什么选择Binsider?
- 在Linux中安装Binsider
- 使用Binsider分析ELF二进制文件
- 一般分析
- 静态分析
- 动态分析
- 字符串
- 十六进制转储
- 结论
Binsider是什么?
Binsider是一款功能强大的命令行工具,它提供了一个用户友好的终端界面,用于对ELF二进制文件进行静态和动态分析。它提供的功能包括检查字符串、检查链接库和执行十六进制转储,类似于readelf和strace等流行工具。
Binsider提供了一个全面的仪表板和一个十六进制转储视图,以结构化的方式分析二进制内容。它还可以用于修改十六进制数据并输入新值,类似于编辑器,尽管建议在进行任何更改之前备份二进制文件。
Binsider旨在使逆向工程师和安全研究人员更容易探索和理解ELF二进制文件。
为什么选择Binsider?
Binsider简化了复杂的二进制分析过程。以下是一些安全研究人员、开发人员以及任何使用二进制文件的人员应该考虑使用它的原因:
-
用户友好的界面: Binsider采用了一个TUI(文本用户界面),以易于浏览的方式呈现复杂的信息。
-
静态和动态分析: Binsider允许对二进制组件进行静态检查,以及对二进制文件在执行期间的行为进行动态分析。
-
全面的功能集: 从检查字符串和链接库到执行十六进制转储和跟踪系统调用,Binsider提供了广泛的功能。
在Linux中安装Binsider
安装Binsider非常简单。由于它是用Rust编程语言编写的,您可以使用cargo包管理器安装它。确保您已安装Rust:
安装Rust后,运行以下命令使用Cargo安装binsider:
cargo install binsider
登录后复制
登录后复制
使用Binsider分析ELF二进制文件
安装完成后,只需运行以下命令即可分析ELF二进制文件:
binsider <binary></binary>
登录后复制
您甚至可以不带任何参数启动Binsider来分析binsider二进制文件本身!

按Tab键导航到其他部分。要退出,请按q。
一般分析
例如,让我们使用以下命令检查/bin/uname二进制文件:
cargo install binsider
登录后复制
登录后复制

- 启动Binsider后,您会看到有关二进制文件的一般信息,类似于stat(1)和ldd(1)的输出。这包括文件详细信息,例如大小、权限和链接的共享库。
- Binsider允许您在分析主二进制文件及其链接的共享库之间无缝切换。此功能提供了二进制生态系统的整体视图。
静态分析

- Binsider擅长静态分析,在不运行二进制文件的情况下提供对ELF结构的深入了解。
- 您可以探索各种ELF组件,包括节、段、头、符号、重定位和注释。
- Binsider对ELF结构的直观表示和方便的导航键(例如n/p用于下一个/上一个,h/j/k/l用于滚动)使浏览这些组件变得直观。
动态分析

- Binsider允许通过执行二进制文件并跟踪其系统调用来进行动态分析。
- 与strace(1)类似,Binsider提供了有关每个系统调用的详细信息,包括进程ID、系统调用名称、参数和返回值。
- Binsider提供了执行的摘要输出,包括花费的时间、错误和进行的系统调用次数,使您可以深入了解二进制文件的运行时行为。
字符串

- Binsider可以从二进制文件中提取字符串,类似于strings(1)命令。
- 这对于发现二进制文件中隐藏的信息(如URL、密码或其他敏感数据)特别有用。
- 您甚至可以使用 /-键或-n参数调整提取字符串的长度。
十六进制转储

- Binsider提供了一个十六进制转储视图以及一个丰富的仪表板,用于分析二进制文件的原始内容。
- 此功能允许对二进制数据进行细粒度检查,并有助于识别模式。
- Binsider通过允许您修改十六进制数据并将更改直接保存到二进制文件来进一步提升十六进制转储功能。
结论
Binsider是一个强大且通用的工具,它简化了ELF二进制文件的分析。它结合了用户友好的TUI、全面的功能和直观的导航,使其成为任何使用二进制文件的人员的绝佳选择。
无论您是进行安全研究、调试软件还是探索ELF文件的内部结构,Binsider都以易于访问且高效的方式提供您所需的工具。
资源:
以上是如何用Linux中的Binsider分析精灵二进制的详细内容。更多信息请关注PHP中文网其他相关文章!