【发布时间】:2021-09-24 02:37:42
【问题描述】:
我正在尝试对 Linux 机器进行逆向工程以刷新我自己的固件,但为此我需要修补一个二进制文件。补丁实际上很简单,我只需要在已知偏移量处更改一个字节。但是,Linux 机器没有 dd、sed、awk 等任何程序。甚至没有 telnet(我通过串行与它通信)。但是,它确实有 sh。有没有办法仅使用 shell 命令替换已知偏移量的字节?
谢谢。
【问题讨论】:
-
如果它有
sh,你为什么要标记为bash?请问哪个? -
它有任何脚本语言(Perl、Python、Ruby)吗?它有一个 C 编译器,或者你知道如何交叉编译它吗?
-
一个 posix 系统应该安装了
sed。如果这里不是这种情况,那么您甚至无法确定是否有像echo这样的基本内容可用(如果我们谈论的是普通的sh而不是bash,它有一个内置的echo)。要回答这个问题,您必须向我们提供更多关于究竟有什么可用的信息。 -
抱歉,这是
sh,而不是bash。它没有任何脚本语言,即使我可以交叉编译它,我也无法将文件传输过来。但是,我确实有echo。 -
是否有任何编辑器可用,例如
ed?