首页 / 知识
关于x86:解析MIPS二进制文件:是否存在用于解析二进制数据的Python库?
2023-04-14 08:04:00

Analizing MIPS binaries: is there a Python library for parsing binary data?我正在开发一个实用程序,该实用程序需要将十六进制地址解析为二进制内的符号函数名称和源代码行号。 该实用程序将在x86的Linux上运行,尽管它分析的二进制文件将用于基于MIPS的嵌入式系统。 MIPS二进制文件采用ELF格式,并使用DWARF作为符号调试信息。 我目前正计划分叉objdump,传入十六进制地址列表并解析输出以获取函数名称和源行号。 我已经编译了一个支持MIPS二进制文件的objdump,它正在工作。 我更希望有一个软件包,该软件包可以让我从Python代码中本机查找内容,而无需进行其他处理。 我在python.org上找不到libdwarf,libelf或libbfd,也没有在dwarfstd.org上提及python。 某个地方有合适的模块吗? 您可能对pydevtools的DWARF库感兴趣:
请检查pyelftools-旨在执行此操作的新纯Python库。 您应该尝试构建。将二进制数据解析为python对象非常有用。 甚至还有ELF32文件格式的示例。 我一直在使用Construct构建DWARF解析器。当前相当粗糙,并且解析很慢。但是我认为我至少应该让你知道。通过一些工作,它可能会满足您的需求。 我已经在Bitbucket上托管了Mercurial中的代码:
构造是一个非常有趣的库。 DWARF是一种复杂的格式(正如我所发现的那样),它将Construct推向了我认为的极限。 我什么都不知道,但是如果所有其他方法都失败了,则可以使用ctypes直接使用libdwarf,libelf或libbfd。 hachior是另一个用于解析二进制数据的库 |
最新内容
相关内容
linux存储数据命令?
linux存储数据命令?,系统,管理,数据,设备,情况,地址,工作,命令,服务,平台,Linux文件系统操作命令1、cat:可以显示文件的内容(经常和more搭配使linux数据库查找命令?
linux数据库查找命令?,位置,名称,状态,服务,软件,信息,系统,命令,名字,密码,在linux中如何用命令查找文件在哪使用查找命令 “find”命令允许linux数据库同步命令?
linux数据库同步命令?,信息,系统,汽车,车辆,服务,工作,通信,一致,分析,数据,DB2数据库在linux操作系统的指令有哪些?1、linux系统常用操作命令linux二进制执行命令?
linux二进制执行命令?,系统,工作,情况,代码,信息,位置,地址,命令,文件,目录,Linux系统常用操作命令有哪些1、linux常用命令: pwd命令 该命令linux建立数据库命令?
linux建立数据库命令?,软件,系统,工作,数据,密码,工具,数据库,一致,网络,服务,linux中在shell中怎么创建一个数据库1、以下的文章主要讲述的是linux命令进数据库?
linux命令进数据库?,地址,系统,名字,服务,密码,命令,读法,数据库,操作系统,主机,linux系统mysql数据库怎么进入数据库首先确保linux下mysql安linux清空表数据命令?
linux清空表数据命令?,系统,数据,软件,名称,不了,命令,文件,电脑,地址,位置,Linux删除文件的命令?1、linux 删除文件指令:输入rd盘符名:\文件夹linux拷贝数据命令?
linux拷贝数据命令?,系统,地址,文件,数据,命令,目录,服务,基本知识,项目,密码,linux复制命令?1、在Linux中,用于复制文件和目录的命令是cp。cplinux数据库检查命令?
linux数据库检查命令?,服务,状态,地址,位置,系统,信息,命令,工作,情况,密码,在linux中,怎样查看Mysql服务运行状态?1、psaux或netstat-tlunppslinux命令进去数据库?
linux命令进去数据库?,地址,服务,名字,系统,数据库,工具,基础,工作,管理,网络,linux系统mysql数据库怎么进入数据库(linux进入mysql数据库命令linux数据库基础命令?
linux数据库基础命令?,地址,工作,基础,系统,命令,信息,情况,工具,设备,目录,linux下基本命令使用讲解对Linux操作系统进行维护操作的实用命令linux数据共享命令?
linux数据共享命令?,情况,系统,工具,网络,数据,软件,发行,设备,命令,文件,Linux文件系统操作命令df命令:用于显示文件系统的磁盘空间使用情况,包