软件破解分白盒和黑盒两种方式。

  白盒破解:白盒破解是指对软件进行破解时,攻击者可以访问软件的内部结构和源代码。这种破解方式通常发生在软件的开发者、技术人员或软件公司内部。攻击者使用这些详细信息来理解软件的工作原理,并针对其中的漏洞或保护机制进行攻击。白盒破解比较复杂,需要对编程和软件系统有深入的了解。

  黑盒破解:黑盒破解是指对软件进行破解时,攻击者无法访问软件的内部结构或源代码。攻击者只能通过分析软件的可执行文件、输入和输出来进行破解。这种方法主要依赖于逆向工程技术,通过对软件进行逆向分析和漏洞挖掘来找到弱点,实现破解。

  理论上没有100%安全的保护方案。加壳主要是增加破解的难度、时间和成本。

  首先需要在程序本身执行逻辑结构上进行改进,让逻辑尽可能避免有重大漏洞,避免破解者通过抓包、修改配置文件、注册表等方式轻易饶过。

在程序改进基础上尽可能可以添加暗桩,所谓暗桩是指“陷阱”,这里指的是程序作者自定义的一些反抗破解者的一些逻辑。比如增加对一些常见抓包软件如filddler、Wireshark、HTTP Analyzer,反编译软件ilspy、dnspy等进程的检测。如果检测到攻击者使用此类软件,则可以“保留现场”后将程序强制退出。

  然后再从加壳方面增加,这是很重要的一步,因为.net软件一旦破解,源代码都可以反编译出来,可以直接将程序逻辑完全展现出来,更别说破解了。

  加壳软件目前市面上免费的也有,商业版也很多,到底那种加壳工具更安全呢?答案我给你吧,没有百分比安全的壳,这篇文章主要介绍的是怎么让自己.net软件的破解难度达到最大,也就给软件加是接近百分百安全的壳子。
  对于.net程序集一般建议采用多层加壳方式——两层甚至三层

第一层:可以采用纯混淆工具进行代码流和名称的混淆(如confusex,eazfusctor,dotfuscator等)

第二层:使用DNGuard进行加密保护(建议同时开启HVM和HVMII保护技术)

第三层:使用传统win32本地的加壳工具进行外壳保护。(如themida/winlicense)

多层加壳可以达到1+1>2的效果,它对破解者的技能和经验要更高,这会导致破解者在时间、难度上挫败,当前成本就会指数型增长!

以上就是我给一些.net软件作者的一些建议,保护自己的知识产权,让自己的劳动成功开花结果,而不是败在破解者无情的屠刀之下!

【干货】浅谈如何给.net程序加多层壳达到1+1>2的效果的更多相关文章

  1. (转)浅谈MD5加密算法中的加盐值(SALT)

    我们知道,如果直接对密码进行散列,那么黑客可以对通过获得这个密码散列值,然后通过查散列值字典(例如MD5密码破解网站),得到某用户的密码. 加Salt可以一定程度上解决这一问题.所谓加Salt方法,就 ...

  2. Web应用你加盐了吗?——浅谈MD5加密算法中的加盐值(SALT)

    转自:http://blog.csdn.net/blade2001/article/details/6341078 我们知道,如果直接对密码进行散列,那么黑客可以对通过获得这个密码散列值,然后通过查散 ...

  3. 【原】从一个bug浅谈YUI3组件的资源加载

    篇前声明:为了不涉及业务细节,篇内信息统一以某游戏,某功能代替 前不久,某游戏准备内测客户端,开发人员测试过程中发现某功能突然不灵了,之前的测试一切ok,没有发现任何异常,第一反应是,游戏内浏览器都是 ...

  4. 05 入门 - 浅谈 ASP.NET MVC程序的工作原理

    目录索引:<ASP.NET MVC 5 高级编程>学习笔记 本篇内容 1. Global.asax文件 2. RouteConfig.cs文件 3. 视图命名和寻址的规则 前面创建了一个简 ...

  5. 浅谈如何正确给table加边框

    一般来说,给表格加边框都会出现不同的问题,以下是给表格加边框后展现比较好的方式 <style> table,table tr th, table tr td { border:1px so ...

  6. 浅谈Android移动开发程序员的职业发展之路

    现在几乎每个it公司都在开发移动产品,我最早知道Android还是在09年成都某学院上大学的时候,从新闻上知道有这么一家公司,创始人安迪·鲁宾很有名,但安卓到底是做什么的,我并没有关注. 到2010年 ...

  7. 干货|浅谈iOS端短视频SDK技术实现

    短视频SDK主要包含"视频录制"和"视频编辑"这两个核心功能. 视频录制包括:视频采集.美颜.滤镜.摄像头切换.视音频采集参数设置等功能: 视频编辑包括:视频导 ...

  8. 浅谈C语言中断处理机制

    一.中断机制 1.实现中断响应和中断返回 当CPU收到中断请求后,能根据具体情况决定是否响应中断,如果CPU没有更急.更重要的工作,则在执行完当前指令后响应这一中断请求.CPU中断响应过程如下:首先, ...

  9. 浅谈iOS需要掌握的技术点

    鉴于很多人的简历中的技术点体现(很多朋友问我iOS需要知道注意哪些)! 技术点: 1.热更新 (及时解决线上问题) 2.runtime(json解析.数据越界.扩大button点击事件.拦截系统方法) ...

  10. [nRF51822] 14、浅谈蓝牙低功耗(BLE)的几种常见的应用场景及架构(科普类干货)

    蓝牙在短距离无线通信领域占据举足轻重的地位—— 从手机.平板.PC到车载设备, 到耳机.游戏手柄.音响.电视, 再到手环.电子秤.智能医疗器械(血糖仪.数字血压计.血气计.数字脉搏/心率监视器.数字体 ...

随机推荐

  1. Vue3 +element-plus+ wangEditor 富文本编辑器+前端七牛云上传

    我用的vue3,element-plus ,没用ts 搭建wangEditor 参考 地址 https://www.cnblogs.com/xbxxf/p/16791084.html 七牛云安装参考地 ...

  2. 5分钟实现调用ChatGPT接口API实现多轮问答

    5分钟实现调用ChatGPT接口API完成多轮问答 最近ChatGPT也是火爆异常啊,在亲自使用了几个月之后,我发现这东西是真的好用,实实在在地提高了生产力.那么对于开发人员来说,有时候可能需要在自己 ...

  3. 2020-12-10:i++是原子操作吗?为什么?

    福哥答案2020-12-10: 不是原子操作.i++分为三个阶段:1.内存到寄存器.2.寄存器自增.3.写回内存.这三个阶段中间都可以被中断分离开.***[评论](https://user.qzone ...

  4. 2021-05-01:给定一个有序数组arr,代表坐落在X轴上的点。给定一个正数K,代表绳子的长度。返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住。

    2021-05-01:给定一个有序数组arr,代表坐落在X轴上的点.给定一个正数K,代表绳子的长度.返回绳子最多压中几个点?即使绳子边缘处盖住点也算盖住. 福大大 答案2021-05-01: 滑动窗口 ...

  5. Vue入门浅析

    title: vue入门浅析 author: Sun-Wind date: May 14,2022 写这篇博文的目的在于为初学vue的同学对vue有一些更进一步的了解 读这篇博文前,您应该至少安装了v ...

  6. web自动化06-键盘操作

    键盘操作 1.说明: 1). 模拟键盘上一些按键或者组合键的输入 如:Ctrl+C .Ctrl+V: 2). Selenium中把键盘的按键都封装在Keys类中 2. Keys类 导包:from se ...

  7. 图书机读目录MARC简介,ISO格式目录数据生成

    一.简介 机读目录(Machine-Readable Catalogue,MARC),是利用计算机读取和处理书目信息,是计算机编目的产品. 它以代码形式和特定的结构将书目信息记录在计算机的存储载体上, ...

  8. Rust 语言风靡学术界

    AWS 将 Rust 编译器团队负责人收入麾下的新闻让开发者们再次聚焦于这门兼具安全性与高性能的编程语言.近日,著名科学期刊 Nature 刊登了一篇文章,表明 Rust 语言也正在成为学术界最受欢迎 ...

  9. AI隐私保护中的常见隐私隐私问题与解决方案

    目录 题目:<AI隐私保护中的常见隐私问题与解决方案> 引言 随着人工智能技术的快速发展,AI隐私保护也成为了一个备受关注的问题.由于AI技术的应用范围越来越广泛,例如语音识别.图像识别. ...

  10. GO 语言中 slice 的理解

    GO 语言中 slice 理解 为什么说 Go 语言的 slice 是引用类型,其底层实现明明是一个结构体? slice 的底层实现是一个包含三个字段的结构体:指向底层数组的指针.slice 的长度和 ...