问题标签 [decompiling]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
54325 浏览

java - 使用JD-GUI批量反编译Java文件

我正在寻找一个批量反编译 Java 类的程序。我找到了JAD,但它不支持Java的一些新特性,而且这个程序的好处是它可以从命令行执行并自动生成一个*.java文件。

我还找到了 JD-GUI。它支持Java的大部分特性,但缺点是不能做批处理。您需要使用程序打开类文件,然后单击保存。

有没有办法让 JD-GUI 像 JAD 一样做批处理?

0 投票
2 回答
10815 浏览

vb6 - Visual Basic 6 程序的反编译器?

在 Boomerang 反编译器(目前仅反编译为 C 代码)的常见问题解答中,他们简要提到 Visual Basic exe 恰好包含大量元数据,因此 Visual Basic 反编译器可能能够为 Visual Basic 生成更好的源代码程序比 Boomerang 可以给你的。由于我试图反编译的程序实际上可能是一个 VB 6 程序,你知道任何 VB6 exe 的反编译器吗?

(不要担心这不是出于恶意。我只需要创建一个该程序解析的数据文件,了解它用于解析文件的策略将有助于获得正确的文件格式。)

0 投票
10 回答
1636 浏览

java - 美国写的Java反编译器

我为一家政府承包商工作,该承包商对在他们的机器上安装什么软件非常挑剔(美国政府法律)。作为逆向工程工作的一部分,我需要弄清楚一组.class文件的作用。反编译器会非常有帮助,但我似乎找不到符合此处设置的标准的。基本上,我需要找到一个在美国开发的反编译器。有人知道吗?免费是首选,但商业会做。

仅供参考,JADJD已经出局,因为它们不是在美国开发的。

0 投票
5 回答
971 浏览

java - 将 JVM 字节码往返于文本表示并返回的故障安全方式

我正在寻找一种在 JVM 类文件和文本表示之间往返并再次返回的故障安全方法。

一个严格的要求是,只要文本表示保持不变,生成的往返 JVM 类文件在功能上与原始 JVM 类文件完全相同。

此外,文本表示必须是人类可读和可编辑的。应该可以对文本表示进行小的更改(例如更改文本字符串或类名等),这些更改会反映在生成的类文件表示中。

最简单的解决方案是使用 Java 反编译器(例如 JAD)来生成文本表示,在这种情况下,它只是重新创建的 Java 源代码。然后使用 javac 生成字节码。但是,鉴于免费 Java 反编译器的状态,这种方法并非在所有情况下都有效。创建无法在完整的往返类文件/java-source/class-file 中存活的混淆字节码是相当容易的(部分原因是 JVM 字节码和Java 源代码)。

鉴于上述要求,是否有一种故障安全的方法来实现 JVM 类文件/文本表示/类文件往返?

更新:在回答之前 - 通过阅读上述所有要求来节省时间和精力,并特别注意:

  • “JVM 字节码的文本表示”不一定意味着“Java 源代码”。
0 投票
6 回答
3857 浏览

c# - 最简单的代码破解

我有以下代码:

我需要一个反编译或反汇编工具,它可以通过执行以下列出的步骤来帮助我找到“TheCorrectSerialNumber”。所以步骤是:

  1. 反编译或反汇编我的代码的可执行文件
  2. 运行 exe,输入的不是正确的序列号,而是“AAA”之类的内容</li>
  3. 找到我的“AAA”和正在比较的字符串,最后找出“TheCorrectSerialNumber”。

还请向我提供您建议的工具如何执行上述步骤的说明。

非常感谢!!!

注意:对于那些倾向于认为我想破解某人的密码的人!首先看看我在这个问题之前和之后提出的问题。我是一名程序员,我需要关注我的代码安全性。因此,我决定破解我的代码并对其他代码进行一些练习(在教授破解的网站上有一堆旨在破解的软件)以了解如何提供安全代码。如果您知道人们如何破解,您可能会创建比不知道的人更安全的代码。如果您要研究如何破解,则必须尝试。这就是我的观点!

0 投票
10 回答
15652 浏览

dll - 反编译代码(与语言无关)

无论源代码使用何种编程语言,都可以使用什么软件查看 .dll 文件中的源代码?

0 投票
3 回答
4688 浏览

flash - 如何防止 SWF 反编译?

如何防止我的 SWF 被反编译?

ActionScript 1/2 和 ActionScript 3在反编译预防方面有什么区别吗?

这是以下问题的相反问题:

如何反编译 swf 文件? 你如何反编译一个swf文件

0 投票
5 回答
5408 浏览

java - 修改Java字节码(jar)中的字符串

我想修改在 Java 应用程序中硬编码的连接字符串(没有源的 jar)。

我认为可以反编译 jar,然后更改源并重新编译为新的 jar,但是有更快的方法吗?

编辑:

  • 这是一个独立的应用程序,而不是我从自己的代码加载的 jar
  • 我怀疑它会被混淆:利基科学应用,作者擅离职守。
  • 需要在应用程序运行时修改“内存中”字符串的解决方案也足够了,但并不理想
0 投票
2 回答
971 浏览

java - 在 Jar 中重构包

我有一个要求,我需要一次加载两个版本的 jar。为了避免类路径冲突,我想重命名其中一个 jar 的包。然后在源代码中,您总是可以通过包名称轻松确定版本。

我玩过javap但找不到 Java 1.6 的汇编程序。我也尝试用JD反编译代码,但它从来没有完全正确并且无法编译。

0 投票
7 回答
4364 浏览

c# - 从预编译的 ASP.NET 网站获取源代码?

长话短说,VSS 决定不允许我进行一些代码更改。我错过了一个我不想重写的大小合适的功能(去年夏天作为工作交给了合作社)。它工作得很好,可以满足客户的需求。但是……我没有这台机器,而且它所开发的机器已经铺得很低了!

干!

我们直接从 Visual Studio 将站点发布到测试环境中,然后将文件复制到生产环境中。所以我有来自 VS 发布的“编译”文件。

我怎样才能把它重新变成代码?我确信我可以弄清楚它在哪个 DLL 中,并且我认为反射器之类的东西将是我最好的选择?是否保留了原始变量名?