为华为 EchoLife EG8145V5 寻找(或构建)内核

逆向工程 手臂 奇木 核心
2021-06-25 04:27:52

我有一台华为 EchoLife EG8145V5,我正在尝试为其构建一些软件。它有某种内置的 Linux 发行版,但我想补充一下,因为有“大量”可用的存储空间。该系统是围绕 BusyBox 构建的。

但是,要构建软件,我需要设置一个与 CPU 架构相匹配的构建环境,这就是我的不足之处,因为我找不到可以与 QEMU 一起使用的内核。我确实找到了一个内核,但它没有生成兼容的二进制文件。

我唯一知道的是我从中得到了什么cat /proc/cpuinfo

processor   : 0
model name  : ARMv7 Processor rev 1 (v7l)
BogoMIPS    : 1594.16
Features    : swp half thumb fastmult edsp thumbee tls 
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x4
CPU part    : 0xc09
CPU revision    : 1
CPU physical    :0

processor   : 1
model name  : ARMv7 Processor rev 1 (v7l)
BogoMIPS    : 1594.16
Features    : swp half thumb fastmult edsp thumbee tls 
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x4
CPU part    : 0xc09
CPU revision    : 1
CPU physical    :1

Hardware    : Hisilicon A9
Revision    : 0000
Serial      : 0000000000000000

我无法找到存储在任何地方的内核映像本身,这会让这一切变得容易得多。那么,我的下一步应该是什么?我还能做些什么来找到设置良好 qemu 开发环境所需的详细信息?

我确实有一个基于cortex-a9vexpress-a9机器的设置,加上我在某处找到的一些内核(不记得在哪里)并且它在某种程度上工作。只是动态链接的二进制文件不起作用,即使在用patchelf --set-sonameand修补它之后patchelf --set-soname- 我要么得到段错误,要么权限被拒绝。

编辑 1:

我确实设法找到了内核配置。粘贴在这里有点太长了,但是我应该寻找什么可以引导我走上正确轨道的行吗?

编辑2:

我已经设法从路由器中提取了 busybox 二进制文件。file busybox产生这个:

ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /mnt/jffs2/app/output/ld-linux.so.3, for GNU/Linux 2.6.26, BuildID[sha1]=736041808c34871ed689d38e7cacfe18b1e65736, stripped
0个回答
没有发现任何回复~