macos - 是否可以还原已编译的 shell 代码?

标签 macos bash shell

我有这个正确运行的 shell 脚本。但是,文件的内容是...

3b33 8963 9a9d b0b2 98f7 8f3a cd9d 6067
b09d ae7b a351 639e 18f1 5c69 58ec 9343
512c c449 ebc0 cb64 7712 3335 2db2 b6f6
e4f7 65e6 48b1 a145 f270 1475 f062 f548
8d0e 14ec 1ca1 cd4e 6221 55fe c25b b7f8
8814 759b 11c3 3def 6b29 1fee 34fe 13fb
ee2c 3618 87af a6fc 3f5e 43b0 f885 6b6f
7aa2 9328 4f0b a2a2 f2ea cd9b 6039 b465

有没有办法将其逆向工程为正常的 shell 代码,以便我可以调整逻辑?

最佳答案

从文件大小和十六进制转储判断,这不再是脚本。它已被工具编译为二进制形式 such as this one ,可能已加密,并且可能与它所依赖的所有二进制文件捆绑在一起。

如果这只是一个 obfuscated script , 逆转会容易得多。就目前而言,它仍然是可行的,但需要更多的合格努力。根据您的二进制文件的性质,重写它可能更明智(阅读:更便宜),让原作者根据您的需要修改它,或者编写位于该二进制文件和您的数据之间的中间件以进行额外处理。

关于macos - 是否可以还原已编译的 shell 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21746189/

相关文章:

php - 所有的 md5 哈希都一样吗?

linux - 更改 while 循环内的变量

linux - 运行脚本查找磁盘空间时出错

swift - 将包含多个文件路径的 Swift 字符串转换为 AppleScript 列表

c++ - 无法在 OS X 上编译 LibSerial

bash - 在旧版本的 Bash 上需要替代 readarray/mapfile 的脚本

bash - 根据客户端请求发送响应

macos - NSTableView - 选择行并立即响应鼠标事件

macos - 将 "Typical"Mac OS X 应用程序迁移到 64 位是否有意义?

linux - 如何列出受 tar 命令影响的所有文件?