问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

.NET加密原理之方法体加密信息对应关系

发布网友 发布时间:2023-06-17 23:55

我来回答

1个回答

热心网友 时间:2024-12-02 13:24

  在 per method 的dotNet加密中 首要解决的方法体对应关系 即在运行时加密壳如何确定当前要解密的方法体所对应的加密信息

  目前大部分加密壳都直接利用了dotNet的元数据来保存这种对应关系 我们知道在元数据中每个方法都会对应一个RVA值 加密壳可以直接把这个关系记录在RVA的地址处 在框架运行中RVA处的数据会被作为 方法体 在处理流程中直接传递 加密壳通过拦截框架处理流程中的函数 来对 方法体 进行分流处理 即先判断RVA处的数据是否 方法体加密对应信息 如果是进入加密壳运行库的内部处理 不是则按原框架流程处理

  对于这个 方法体加密对应信息 最简单的方式是指记录一个指针信息 指向另一处数据块 四字节空间就够了 但是为了和普通没有加密的方法体进行区分 除了这个之外还需要增加一些唯一标识以便能被运行库在运行时安全无误的区分出来

  大家可以用UE打开 加密后的程序集 看看一个方法体RVA处的数据 应该能很容易分别出来哪些是记录的 方法体加密对应信息

  正是这个原因 所以DNGuard v 和同类处理方式的加密壳 对方法体小于某个指定字节数的 就不能进行加密

  因为 方法体加密对应信息 的大小超过的方法体的空间大小 写入的话会覆盖到后面方法体的信息 这实际上也是因为偷懒造成的 可以通过对方法体进行重排来解决这个问题 当然要麻烦很多了

  这种模式实际上就是在元数据保存了一个虚拟表实现了 MethodToken => 方法体加密对应信息 的对应记录 这个表可以看着是公开的

  在DNGuard 中我没有选择使用对方法体重排的方式来解决这个问题 而是选择了另一个方法 自己记录一个 虚拟表实现 MethodToken => 方法体加密对应信息 的对应记录

  因为这样有一个好处 就是 这个虚拟表也可以进行加密后保存 另外就是 方法体加密对应信息 中不需要添加标识符 和普通没有加密的方法体进行区分

  在 DNGuard 试用版 中没有使用真正的加密算法来对程序集加密 只是采用了 代码直接挪位 的方式 运行库的 解密 操作只是从另一个位置直接读取的操作

  有个朋友分析到DNGuard 试用版里面有一个虚拟表记录了 MethodRid => ILCode 这个就是 虚拟表 MethodToken => 方法体加密对应信息 在 试用版中退化的模式

  另外因为方法体只是挪位 所以它实际上还是在程序集文件内 加载到内存中后也在程序集模块的内存空间中 而不是那位朋友说的 运行库在解密后将 IL代码 填回到内存里面去了

lishixin/Article/program/net/201311/15207
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
写论文值得推荐的app 写论文app大全汇总 有啥好用又免费的文献查阅网站吗? 高仿苹果手机关机关不了机?是怎么回事?有那个朋友请告知! 高仿苹果6开机就是白屏黑苹果,关机关不了 怎么把电子相册保存到QQ空间相册 整个乡村音乐史上,最动人的25首歌 写给狗的歌 右侧肢体肌力4级是什么意思 肌力分级的评定标准 肌力4级是什么意思 船长怎么出不了渴血战斧啊? 咳血能触发男刀被动吗 扛把子是夸人吗 略则不绝的意思是什么? 三国杀,拼点 三国杀拼点大小顺序 c1和c2驾照有什么不同 小小军团合战三国弓策流阵容搭配详解 小小军团合战三国什么弓兵厉害 小小军团合战三国弓骑怎么使用 小小军团合战三国新版本弓兵怎么玩 梦见老总煎蛋给我吃的预兆 打醮的详细解释 打醮的基本解释 在…上面的英文 索玛花开题目的含义 网友投票《那年花开》演技排行,为何第一名的不是主角孙俪而是赵萌萌... 属狗女人风评不好 人们总说属狗女不可深交原因竟是这些 猜谜语:幼儿趣味谜语大全及答案谜底是什么? 身上有个皮口袋 不装米也不装麦 装着它的小宝宝 还有妈妈许多爱 猜一猜... 三国志气凌三军和后发制人那个强 周泰能触发气凌三军吗 双乳外上象限针吸镜检见增生的乳腺腺上皮细胞,双极裸核细胞,两腋窝淋巴... 农村土地休耕当地官员强制种高粱谷子不让种玉米国家有这规定吗_百度知... 一个男下属特别关心他的女上级是啥意思 领导是女性,该怎么面对呢? ...室的主任是位女性,请你谈谈如何处理好同女上级的关系。 梦见女上级同床的预兆 在公司你的领导是女的,是一种什么体验? 女上司在职场中的地位和价值是什么样的? 女上级叫我干别的活,然后我刚刚拿到工具她就帮我干了一大半,意味着什么... 骨折定期复查有必要吗?骨折的复查都是检查什么? 车祸骨折病历说1,3,5,7,9,12复查是什么意思? 骨折后复查需要做什么啊骨折后复查需要 脚骨折了复查说还可以,是什么意思 “生命美丽地生活在大自然的风景里。生命也是风景。生命与自然,构成宇 ... 小米9哪年上市的 我们销售团队越来越强大了什么意思啊 泸州火炬化工厂转正待遇 湖北襄阳846厂简介