加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

PreEmptiveProtectionDotfuscator功能

(2023-02-25 11:05:29)
标签:

哲想

软件

办公

解决方案

分类: 软件

应用加固包括混淆和应用自我保护功能。只有分层的方法才能提供所需的保护。


重命名

重命名混淆会改变方法、变量等的名称,使源代码更难以理解。Dotfuscator使用了一种更深层的混淆形式,该形式为Dotfuscator开发,并由PreEmptive Solutions申请了专利,称为过载诱导(Overload Induction™)。过载诱导不是用一个新名称替换每个旧名称,而是将尽可能多的方法重命名为相同的名称。经过这种深度混淆之后,逻辑虽然没有被破坏,但已经超出了理解范围。下面的简单示例说明了过载诱导技术的威力:

PreEmptiveProtectionDotfuscator功能

控制流

传统的控制流混淆引入了错误的条件语句和其他误导性构造,以混淆和破坏反编译器。该过程综合分支、条件和迭代构造,生成有效的正向(可执行)逻辑,但在尝试反编译时产生不确定的语义结果。控制流混淆产生的混乱逻辑对破解者来说是非常难分析的。


Dotfuscator采用高级控制流混淆。除了添加代码结构外,Dotfuscator还通过破坏反编译器用于重新创建源代码的代码模式来工作。最终的结果是与原始代码在语义上等价的代码,但不包含关于代码最初是如何编写的痕迹。即使开发了非常先进的反编译器,它们的输出也只能靠猜测。

PreEmptiveProtectionDotfuscator功能

字符串加密

Dotfuscator允许隐藏程序集中出现的用户字符串。一种常见的攻击技术是通过查找二进制文件中的字符串引用来定位关键代码段。例如,如果您的应用程序是时间锁定的,它可能会在超时到期时显示一条消息。攻击者在反汇编或反编译的输出中搜索此消息,当他们找到它时,很可能会非常接近您的敏感时间锁定算法。


Dotfuscator解决了这个问题,它允许您在应用程序的这些敏感部分加密字符串,提供了针对这种攻击的有效屏障。


由于字符串加密会导致轻微的运行时损失,除了在您指定的应用程序部分上,不会执行字符串加密。


水印

水印通过在.net应用程序中嵌入诸如版权信息或唯一标识号等数据,而不影响其运行时行为,帮助跟踪软件的未授权副本到软件的源头。Dotfuscator的水印算法不会增加应用程序的大小,也不会引入可能破坏应用程序的额外元数据。


剪枝——删除未使用的方法

小型应用程序下载、安装、加载、运行更快。Dotfuscator的剪枝功能静态分析您的代码,找到未使用的类型、方法和字段,并删除它们。Dotfuscator还在处理MSIL文件时从该文件中删除调试信息和非必要的元数据,使应用程序更小,并减少攻击者可用的数据。


链接——程序集合并

Dotfuscator可以将多个输入程序集组合为一个或多个输出程序集。程序集链接可以使您的应用程序更小,特别是在与重命名和剪枝一起使用时,还可以简化部署场景。


例如,如果您有输入程序集A、B、C、D和E,您可以链接程序集A、B和C并将结果命名为F。同时,您也可以链接D和E并将结果命名为G。唯一的规则是您不能将同一个输入程序集链接到多个输出程序集。

PreEmptiveProtectionDotfuscator功能


篡改检测及防御

Dotfuscator注入代码,在运行时验证应用程序的完整性。如果它检测到篡改,它可以关闭应用程序,调用随机崩溃(以伪装崩溃是篡改检查的结果),或执行任何其他自定义操作。


使用检查调试检测和防御

检查是预先构建的验证,Dotfuscator可以将其注入到.net应用程序中。你的应用程序将能够检测未经授权的使用,如调试或篡改。尽管名为“检查”,但“检查”不仅仅是检测这些状态;它们也可以以预先指定的方式做出反应,例如退出应用程序。检查也可以调用应用程序代码,允许基于检查的结果自定义行为。这些报告和响应功能是可配置的每个检查,所以你所有的应用程序可以检测未经授权的使用以相同的方式,但每个应用程序可以对检测的响应不同。


适用期

“适用期”是一个应用程序库存管理功能,它允许您将过期、注销和通知逻辑嵌入到应用程序中。Dotfuscator注入通过退出应用程序或发送消息来响应应用程序过期的代码。该特性对beta或评估应用程序特别有帮助。用户可以将应用程序的过期和去激活安排在特定的日期,并可选地向用户发出应用程序将在特定天数内过期和去激活的警告。

PreEmptiveProtectionDotfuscator功能

XAMARIN.ANDROID根检测

根设备是Android应用程序的一个重要安全问题。Dotfuscator可以检测应用程序何时在根设备(脱机或网络上)上运行,用户可以中止会话、隔离应用程序和/或报告事件。



公司名称:北京哲想软件有限公司

北京哲想软件官方网站:cogitosoft.com

北京哲想软件微信公众平台账号:cogitosoftware

北京哲想软件微博:哲想软件

北京哲想软件邮箱:sales@ cogitosoft.com

销售(俞先生)联系方式: 8601068421378

微信:18610247936     QQ368531638

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有