- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我对 DexGuard 和 Proguard 还很陌生。我正在浏览他们的文档和示例。他们有 dexguard_util 可以帮助您检测应用程序是否被篡改,还可以帮助检测它是否在应该运行的环境中运行。该文档建议使用以下代码加密此篡改和环境检测是 dexgaurd-project.txt。
-encryptclasses A$D
-encryptstrings A$D
Activity 如下
public class A extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
new D().c();
}
private class D
{
public void c()
{
//some code to which detects the tampering and environment and takes action accordingly
}
}
}
如果黑客注入(inject)这行代码怎么办。
public class A extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
//code commented by hacker
//new D().c();
}
private class D
{
public void c()
{
//some code to which detects the tampering and environment and takes action accordingly
}
}
}
然后我的应用程序将在不运行那些我认为是大问题的测试的情况下运行。我对逆向工程工作原理的理解是错误的还是有更好的方法来做到这一点。如果存在,请分享更好的方法。提前致谢。请注意,公共(public)类 A 无法加密,因为它是一个入口点,并且在 progaurd-project.txt 中使用此命令保持不变
-keep class somepackage.A
最佳答案
谈到防篡改时,请务必记住,他们的目标不是阻止任何和所有潜在的篡改行为,而只是提高目标的安全栏足够高以阻止大多数攻击者。
话虽如此,
有点切线:
The document suggests that this tamper and environment detection be encrypted using the following code is dexgaurd-project.txt.
类加密确实阻止了应用程序包的基本静态分析,例如只需解压缩包并将其加载到 jd-gui
中。然而,作为this answer shows ,规避起来很简单:只需 Hook 在加载时解密 apk 的静态方法,然后将其转储。但这可以提高安全标准。
现在回到你原来的问题:
What if a hacker inject this line of code.
作为攻击者,这将是下一步。然而,这需要重新打包应用程序,并使用黑客的签名 key 对其进行签名。因此需要结合Dexguard的防篡改措施如checking the apk signature .
Is DexGuard tamper and Environment detection helpful?
总而言之,是的,它有助于提高标准,超越绝大多数应用。但这不是 Elixir 。
关于android - DexGuard 篡改和环境检测有帮助吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30235047/
大家好,我是沙漠尽头的狼。 本文首发于 Dotnet9 ,介绍使用 Lib.Harmony 库拦截第三方 .NET 库方法,达到不修改其源码并能实现修改方法逻辑、预期行为的效果,并
我有Helm Applciations使用 Terraform 的 helm_release 资源与 Terraform 一起部署。 有时由于以下一个或多个原因,我的 Kubernetes Pod 将
我有Helm Applciations使用 Terraform 的 helm_release 资源与 Terraform 一起部署。 有时由于以下一个或多个原因,我的 Kubernetes Pod 将
我们开发了一个 Javascript 文件供客户使用。 Javascript 片段对其运行的网站进行屏幕截图,然后通过 jQuery.post() 将其发送回我们的服务器 我们行业的性质意味着我们必须
我在本地主机上运行我的测试站点。 当我用 URL 加载它时: localhost/projects/forums/index.php 它看起来像这样(符合预期) 但是当 我给 URL: localho
我正在 中共同开发一个简单的网络应用程序 rails 3.0.9 我已经意识到可能通过恶意请求篡改 session_id。请注意,这是我的第一个 RoR 应用程序,所以我的概念可能完全错误。 当前的应
我返回了以下 JSON 数据,但由于某种原因,Javascript 或 jQuery ajax 似乎重新组织了项目列表。服务器返回按item.title字母顺序排序的数据(已验证)... 下面的 JS
背景 我是一名经验丰富的 Web 开发人员(主要使用 Python 和 CherryPy),之前从头开始实现过安全 session 管理,现在正在学习 Rails。我正在调查 session 暴露的
我正在使用 MVC3、.NET4.5、C#、Razor。 我在 Codeproject 之外重用了 Albin 的一些非常有用的代码,通过添加哈希来防止 URL 篡改。主要运行良好。 然而…… 我现在
我是一名优秀的程序员,十分优秀!