如何反转 php 混淆代码?

how to reverse php obfuscated code?

我解码了我的一些 ionCube 编码的 PHP 页面,但它包含带有混淆的 PHP 函数名称的代码:

示例:

_obfuscate_DRYWMSUQDzIXCSohIQMqCz0NJiIUBSIÿ("Location: error.php");

这是 header 函数的代码。

header("Location: error.php");

谁能解释一下如何对这段代码进行去混淆处理吗?

混淆是设计不可逆的 - 如果有一种方法可以轻松逆转混淆,那么使用混淆将毫无意义。将其视为对函数名称进行哈希处理——尽管可能会暴力破解原始名称,但您必须付出一些认真的努力,包括:

  • 找出使用了哪种哈希算法
  • 获取使用的混淆密钥(在编码时指定)
  • 暴力破解每个函数名,从a()my_function_name_that_does_something()

正如评论中所指出的,您获取原始源代码的唯一现实机会是与原始开发人员联系。您不会期望从 C 代码编译的二进制文件中获得原始源代码吧?