随笔分类 -  .net 加密与解密

学习
摘要:基于跳转的混淆 代码块的易位 连续跳转 跳转表 逻辑跳转 switch跳转 语法混淆 让堆栈溢出 利用高级语言不支持的语法 利用高级语言间的语法差异 利用反编译引擎的缺陷 插入无效指令编码 反流程混淆的一般方法 阅读全文
posted @ 2009-02-17 22:08 南守拥 阅读(422) 评论(0) 推荐(0)
摘要:自定义类型\成员\引用类型\被引用成员 它们以UTF8格式被保存在#strings流中 不能修改系统DLL中的名称等 混淆工具: Speces.net {smartassembly} Skator .net reactor Xenocode Postbuild .Aspose CLISecure Macrobject Obfusca... 阅读全文
posted @ 2009-02-16 21:48 南守拥 阅读(359) 评论(0) 推荐(0)
摘要:用Vs签强名称我会 SDK中 sn -k key.snk csc keyfile key.snk *.cs 强名称的去除: CLR头中的flag项,去除COMIMAGE_FLAGS_STRONGNAMESIGNED标志 CLR头中的StrongNameSignature, RVA与Size为0 Assembly表中的Flags项,送去0X0001 (P... 阅读全文
posted @ 2009-02-14 11:39 南守拥 阅读(247) 评论(0) 推荐(0)
摘要:下载地址:www.microsoft.com/whdc/devtools/debugging/default.mspx 设置: file->symbol file path 输入 c:\symbols;SRV*c:\symbols*http://msdl.microsoft.com/download/symbols 会自动下载符号文件,保存到c:\symbols中 file->o... 阅读全文
posted @ 2009-02-14 11:21 南守拥 阅读(226) 评论(0) 推荐(0)
摘要:设置: Environment -> enable .net profiler CLR Debug 其中 set clr profiling mask 设置profiler 的监测项目,项目多速度慢 注意:PeBrowseDbg对中文支持不好,调试器和被调试的程序的全路径中不能含有中文 调试: file -> start debugging 左树右... 阅读全文
posted @ 2009-02-14 09:45 南守拥 阅读(739) 评论(0) 推荐(0)
摘要:SDK目录下v2.0\GuiDebug\DbgClr.exe 只能调试Debug版本 ildasm 反编译 ilasm 编译成debug版本 ilasm /debug /resource= *.res *.il 生成debug 版本 和 *.pdb符号文件 tools->options ->Text Editor 设置行号 file -> open 打开 *.il 文件 设置断点 debug->... 阅读全文
posted @ 2009-02-14 09:21 南守拥 阅读(459) 评论(0) 推荐(0)
摘要:http://netdecompiler.com/ 阅读全文
posted @ 2009-02-08 17:48 南守拥 阅读(155) 评论(0) 推荐(0)
摘要:提供到高级语言的反编译!我非常喜欢的一个工具,感谢原作者! 可以用来看一此控件的原代码!用来扩展其功能!像之前的RadGrid及最近的HtmlHelper Grid的扩展全是这样做的! 另它有很多实用的add-in,如Reflexil 修改程序集的功能 通过View_>Add-Ins可以添加插件,添加后在Tools里就有了 阅读全文
posted @ 2009-02-08 11:19 南守拥 阅读(247) 评论(0) 推荐(0)
摘要:.net对PE结构的扩展主要体现在.text节上,保存了MSIL、元数据、各种特殊的.net结构。 .text变样后:输入表、CLR头、MSIL代码和可选的异常处理表、强名称的Hash数据、元数据、托管资源数据(可选)、非托管资源数据(可选)、运行时启动信息 CLR头:定义在SDK安装目录的CorHdr.h文件,结构叫IMAGE_COR20_HEADER 元数据:元数据本身也是数据,它的功能是描述... 阅读全文
posted @ 2009-02-03 13:19 南守拥 阅读(349) 评论(0) 推荐(0)
摘要:三部分:程序头 声明 结构 用!表示泛型,可以直接名称!T或!0 !!表示泛型方法 直接别名 .typedef 支持#include "asdf.il" 条件编译 #define\#ifdef\#ifndef\#else\#endif,#define 可以用来简化定义一段代码或文字,避免重复输入. .typedef仅仅给元数据项(类\方法等)一个别名,而长的代码只能用#define IL是面向对象... 阅读全文
posted @ 2009-02-01 15:31 南守拥 阅读(176) 评论(0) 推荐(0)
摘要:ildasm使用 直接修改IL代码后可以用ilasm重新生成可执行文件 Round-tripping CLR JIT 程序集 模块 MSIL 元数据 类型 方法等概念 阅读全文
posted @ 2009-02-01 15:19 南守拥 阅读(254) 评论(0) 推荐(0)