字符串 'ACED00057400' 代表什么?

What does the String 'ACED00057400' represent?

在 XML 文件中,我看到许多元素的属性以 ACED00057400 开头。这是什么意思?我该如何解析它?例如,我看到 ACED00057400095245434F4D4D454E44ACED000574000566616C7365 并想解码它们。

示例 xml 在上下文中:

.
.
.
<vals>ACED00057400095245434F4D4D454E44</vals>
<vals>ACED000574000566616C7365</vals>
.
.
.

有些用户可能会搜索 ACED0005740 或 ACED000574。

ACED00057400 是 java 序列化使用的魔法字节的十六进制编码,本文描述:What Do WebLogic, WebSphere, JBoss, Jenkins, OpenNMS, and Your Application Have in Common? This Vulnerability. By @breenmachine

通常,您可以使用十六进制到文本转换器对此进行解码。在您提供的两个示例中,它将是:

  • ACED00057400095245434F4D4D454E44¬ít RECOMMEND
  • ACED000574000566616C7365¬ítfalse.

注意:文本不会是字符串的准确转换,因为它包含不能很好显示的字节。例如,十六进制的 00 是 ASCII 的 null。你可以截断ACED00057400是一个字符串,那么转换就可以了。

但是,有时 java 程序会序列化一个对象,它看起来像是乱码。在这种情况下,您将需要实现 Serializable.

的 class 的源代码或库