标签: decompiling

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

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

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

编辑:

  • 它是一个独立的应用程序,而不是我从我自己的代码加载的jar
  • 我怀疑它会被混淆:利基科学应用,作者AWOL.
  • 在app运行时需要修改字符串"in memory"的解决方案也足够了,但并不理想

java decompiling jar reverse-engineering

3
推荐指数
1
解决办法
4652
查看次数

隐藏已编译应用程序的可执行代码的实践

反编译和反向工程.net程序集是标准做法.

我想发布一些将添加到现有应用程序的插件程序集,但我不希望其他人使用它们.

有什么方法可以隐藏这些组件的来源?

c# obfuscation decompiling

3
推荐指数
1
解决办法
2967
查看次数

为什么C程序需要反编译器但python程序不?

如果我编写一个python脚本,任何人都可以简单地将编辑器指向它并阅读它.但对于用C编写的编程,必须使用反编译器和十六进制表等.这是为什么?我的意思是我根本无法打开Safari Web浏览器并查看其代码.

c python decompiling

3
推荐指数
3
解决办法
735
查看次数

如何反编译Java

我想要一种简单的方法来反编译Java.我想检查一下javac编译器对我的代码所做的转换和修改.什么是好产品,什么是好/坏.

java decompiling

3
推荐指数
1
解决办法
7752
查看次数

反编译iOS Objective-C二进制文件

可能重复:
反编译应用程序二进制文件以返回源代码

我有一个iPhone/iPad应用程序,有点有趣.它使用特殊的内部XML格式来处理它所做的事情,但是没有设备,我看不出它是如何工作的.我想为Android手机(免费软件和开源软件)重新创建这个功能,但为此我想看看阅读部分是如何工作的,实际上,我想知道XML格式本身.从头开始重新创建(仅使用XML文件)非常困难,因为它们没有被注释,并且名称没有说明它们的功能.

所有我想看到的是如何读取文件,具体标签做什么等,所以我可以编写一个转换器来转换iOS输出文件,用于我的同一目的Android应用程序.是的,我已经检查了市场,没有像我想要重新创建的那样的应用程序(实际上几乎完全重新创建,我只需要转换器或解析器来处理这些iOS特定文件).

iphone android decompiling objective-c

3
推荐指数
1
解决办法
3万
查看次数

有人可以反编译我的C#应用​​程序并覆盖保护机制吗?

如果我创建一个C#应用程序,它有一个机制来限制访问数据库的工作站的数量,那么是什么阻止某人取消应用程序,改变这个机制的代码,重新编译它然后在他们的系统上部署它?

c# decompiling

3
推荐指数
1
解决办法
489
查看次数

可以通过反编译看到Java注释吗?

我想知道我是否在我的代码中添加了注释,当有人试图反编译时,他们是否可以阅读我提出的评论?

java comments decompiling

3
推荐指数
2
解决办法
3404
查看次数

是否混淆了C#或Java比C更容易反编译因为堆栈机 - 注册机器的区别?还是有其他原因?

我已经看到它说通过调用框架api来简化对混淆的C#和Java的反编译,就像String一样.但是,这对我来说没有多大意义,因为C程序不应该对一些标准库有明显的调用,这相当于C#apis?

我也看到它说,不知何故,注册机器(将从C运行组件的硬件)和堆栈机器(将运行字节码的虚拟机)之间的区别对于反编译的复杂性很重要.

那么堆栈/注册机器在这里发出主要的一个吗?假设如果CLR虚拟机重新实现为注册机,C#字节码突然变得像C可执行文件一样难以反编译?或者还有一些其他主要的复杂性差异在这样的平台检修中不会消失?

clr obfuscation decompiling reverse-engineering

3
推荐指数
1
解决办法
1211
查看次数

解密的java类有一些特殊的字符

我反编译了一些java类,我得到一个特殊字符的源:

this.val$b.dispose();
this.val$domainLabel.setText((String)domains_config.get("description"));
Run Code Online (Sandbox Code Playgroud)

这是什么意思:this.val$b

java decompiling

3
推荐指数
1
解决办法
1673
查看次数

这会使反编译/破解变得更难吗?

我目前正在开发一个商业Java应用程序,我正在尽最大努力保护它免受破解.

我有几个想法,我希望有更多经验丰富的人可以帮助我清除它们.

我正在用服务器/客户端许可证系统保护我的软件.

简单解释许可证的工作原理:

  1. 用户在线购买软件,并通过hist License Hash通过电子邮件发送.
  2. 用户下载该软件,并输入电子邮件中提供的许可证哈希值
  3. 如果以前使用许可证,软件会在线检查,如果没有,则将其标记为已使用,并将用户的硬件ID链接到数据库中.下次用户登录时,服务器会将其HWID检查到提供的许可证,如果无效,则将用户从软件中踢出.
  4. 成功进行身份验证后,软件会从服务器下载并加载变量,而软件无法运行.
  5. 我的软件不断检查服务器是否有变量(步骤4),并且从不加载所有变量.

服务器/客户端之间的通信使用安全的SSL REST API进行.

我的软件使用Proguard进行混淆/保护.

这种方法是否足够好以防止破解,如果不能提供一些额外的技巧来使这种方法更好?

非常感谢.

java decompiling cracking

3
推荐指数
1
解决办法
154
查看次数