
DotNet原理
Rorschach321
Android安全方向,区块链爱好
展开
-
Mono源码阅读--加载文件
Mono是微软提供了实现.Net框架跨平台的项目,Unity3D中使用C#脚本进行开发就是基于Mono的。注意:本文阅读的Mono源码版本对应为3.8.0。提到U3D中使用Mono加载DLL,不得不说到的一个函数就是mono_image_open_from_data_with_name,因为该函数作为DLL加载必须经过的流程,可以很好地被用来对DLL进行解密的操作,目前市面上很多针对DLL文件的保护原创 2017-11-11 17:49:47 · 2554 阅读 · 0 评论 -
DotNet版本PE文件结构梳理
.Net版本PE文件结构,其实是在原始PE文件结构中套入了一层CLI文件结构 外层PE文件结构: 比较关注的点是在NT头-可选头部,有一个DataDirector数据结构数组,每一项包含一个虚拟地址以及大小,第十五项(下标从1开始啊)对应就是CLI头部的起始地址和大小,在010 Editor中可以解析到此处: 跳转到CLI头部,头部比较关心的点是MetaData,它也是DataDirector原创 2017-11-15 10:24:05 · 2115 阅读 · 0 评论 -
DotNet版本PE文件结构梳理续--制作010模板解析
在针对DotNet版本的PE文件解析时,使用CFF Explorer已经能够很好的解析出完整的文件结构。这里我是基于便于对一些数据进行修改和修复,基于exe的模板,制作了一个简单的解析模板,只解析到了方法层面的数据,对于我目前来说足够了,需要完整的一些解析信息可以使用CFF或者在此基础上做更改。现附上模板下载地址: https://github.com/Rorschach123/010_Do...原创 2018-03-15 19:22:28 · 473 阅读 · 0 评论 -
Mono源码编译遇到的坑点
按照此文搭建的环境: https://blog.youkuaiyun.com/android_machong/article/details/777717671、ndk-build加入系统环境 文章没有说完整,加入系统环境变量的方式比较多,可以自行百度。2、注意NDK的版本以及对应系统 ①是将windows下的ndk直接复制使用,发现有问题,定位到一处路径不对,对应的是windows的,还是需要...原创 2018-07-02 16:42:09 · 1245 阅读 · 0 评论