彩票走势图

.NET混淆器Dotfuscator保护机制——Root检查

原创|使用教程|编辑:李显亮|2019-08-26 13:52:09.553|阅读 277 次

概述:Dotfuscator提供了一种应用程序保护的多层方法。这些层中的每一层都提供了一个重要的整体保护策略。Root Check是用于检测应用程序是否在已植根的Android设备上运行。

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

相关链接:

Dotfuscator是一个.NET的Obfuscator。它提供企业级的应用程序保护,大大降低了盗版、知识产权盗窃和篡改的风险。Dotfuscator的分层混淆、加密、水印、自动失效、防调试、防篡改、报警和防御技术,为世界各地成千上万的应用程序提供保护。

Dotfuscator提供了一种应用程序保护的多层方法。这些层中的每一层都提供了一个重要的整体保护策略。如果一层受到损害,其他层继续提供有效保护,使攻击者更难以实现其目标。并且不仅有多个层,而且每个层都具有比其他混淆产品使用的简单技术更强大的高级功能。

从本文开始我们一起了解Dotfuscator如何对应用程序进行多层保护,层层递进,大致可分为:

  • 第一层保护——Obfuscation转换:它对编译的代码进行操作,使逆向工程变得困难或不可能。
  • 第二层保护——保护程序运行时发生的检查:当程序检测到攻击者试图篡改或反向工程时,它可以使用自定义逻辑进行自我防御。
  • 其余加强保护——包括切除和水印。
  • Dotfuscator提供某些功能帮您构建、部署和调试混淆的程序集

下载Dotfuscator最新试用版


第二层保护:保护程序运行时发生的检查

Root检查

Root Check是用于检测应用程序是否在已植根的Android设备上运行。由于多种原因,植根设备可能是一个问题。攻击者可能会在root设备上运行该应用程序,以便访问应用程序二进制文件,对其进行反向工程,提取敏感数据或操纵应用程序的行为。普通用户可能因为与您的应用无关的原因而植根他们的设备,但这样做会破坏Android操作系统提供的安全环境,从而使他们的数据和帐户容易受到攻击。对于处理敏感数据或受数据处理规定约束的应用程序,在有根设备上运行可能是不可接受的风险。

Root Checks可以通过通知应用程序并阻止攻击者来检测设备是否已植根并做出反应。

配置调试检查

要让Dotfuscator将Root Checks注入您的Xamarin.Android应用程序,首先启用代码注入。然后,配置在配置编辑器的检查,或通过注释的源代码用RootCheckAttribute。这两种方法都允许您指定确定Check操作方式的各种属性。

要求:
  • 要使Dotfuscator识别此属性的使用并注入Root Check,以下所有条件必须为true:
    • 必须启用“ 启用注入”全局选项 ;
    • 必须启用包含此属性的输入程序集的Honor Injection Attributes输入选项,默认情况下是这样。
  • 要使Dotfuscator从受保护的程序集中删除此属性的使用,必须启用包含此属性的输入程序集的“ 条带注入属性”输入选项,默认情况下为该属性。
属性:
  • 操作:如果检测到应用程序在有根的Android设备上运行,则检查将执行检查操作。
  • ActionProbability:指定检测到根时检查操作发生的概率,表示为0.00和之间的范围1.00。默认为1.00(检测到操作始终在检测到根时发生)。
  • ApplicationNotificationSinkElement:指定Check将用于通知应用程序Check的结果的代码元素的类型。此代码元素称为应用程序通知接收器。
    • 默认为None,这意味着应用程序不会收到Check的结果通知。
    • 如果是Method,MethodArgument或Delegate,则Check会使用签名调用方法,委托方法参数或委托字段void(bool)。
    • 如果是Field或Property,则Check设置bool字段或属性。
    • 不支持DefaultAction。如果使用此设置,Dotfuscator将出错。
  • ApplicationNotificationSinkName:指定应用程序通知接收器的名称。
  • ApplicationNotificationSinkOwner:指定声明应用程序通知接收器的类型的名称,默认为定义带注释的方法的类型。
支持的应用程序类型

Dotfuscator可以将Root Checks注入Xamarin.Android程序集,并防止您为其他平台注入Xamarin程序集。您可以注入非Xamarin特定的程序集(例如PCL或.NET标准库),但这样做会使程序集依赖于Xamarin Android框架。请注意,对于使用共享库的其他(Xamarin)平台,此依赖关系通常不是问题,因为在大多数构建方案中,根检查仅注入到特定于Android的库副本中。

测试

大多数仿真器都会触发Root Check(因为它们是有效的root设备),因此您通常可以在仿真器中测试root权限行为,以及(非root)设备上的非root行为。练习根检查的位置,以观察应用程序对可用的root用户的反应。


推荐阅读

【还在为软件被破解而抓破头皮?软件加密保护工具2019给力推荐!】


*Dotfuscator现已加入“8月省钱式嗨购”,满额即送office 365正版授权,想要购买Dotfuscator正版授权的朋友可了解详情哦~


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@capbkgr.cn


为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP