c#反编译指南
本帖最后由 Frhvjhhv 于 2022-3-13 21:39 编辑网上对于c#反编译的技术介绍鱼龙混杂,简单的过于简单,难的过于晦涩,没有一个可以给小白指点的技术路线,本文是本人接触一点时间c#反编译后总结的技术路线,欢迎大神补充.
[只针对萌新和工具党的深入路线,大神勿入!本文旨在让萌新一步步深入,让工具党逐渐脱离工具,了解原理,逐渐成为大神]
工具:反编译: dnspy
pe结构:010 edit CFF_Explorer WinHex
查壳 :DetectItEasy PEid de4dot-d参数可以查壳
脱壳去混淆 :1通用脱壳机 de4dot
2dump 内存MegaDumper(针对Themida等传统win32强壳直接dump即可)
3 jit脱壳(ee层用jit层脱壳机即可)ManagedJiter JitUnpacker
4手工去混淆脱壳 用dnlib库和Mono.Cecil库。首推dnlib库
1.小白阶段
看慕若曦博客即可 https://mp.weixin.qq.com/s?__biz ... 64888&lang=zh_CN#rd
预期成果:熟练使用dnspy。会查看反编译出来的c#代码,找到关键位置,初步改c#代码并保存
2.大白阶段
掌握de4dot 参数,搞定把字符串放在资源里面,然后调用一个函数解密这种类型混淆 https://www.52pojie.cn/thread-762674-1-1.html
掌握反射。通过反射搞定一部分破解
3.进阶之路
(1)掌握il语言。推荐 看雪.net程序的加密与解密第一章以及相关书籍文章
预期成果:打开dnspy,,改写il代码破解
******************************************花一天时间速读看雪.net程序的加密与解密,不要求看懂,有印象就行************************************************
(2)掌握pe结构,元数据。
1 稍微浏览一下pe结构。https://bbs.pediy.com/thread-265 ... 0%E7%9A%84%E3%80%82,
掌握 dos头nt头可选头部 text节 等等结构体 明白怎么计算RVA,FILE OSSFETVA。
给定一个pe在内存中的虚拟地址VA以及RVA,知道怎么计算文件偏移
https://blog.csdn.net/god00/article/details/6217367
https://blog.csdn.net/wzsy/article/details/10184417
https://blog.csdn.net/ch122633/a ... 1001.2101.3001.4242
2 重点掌握.net的pe头与win32pe头不同的部分
看雪.net程序的加密与解密关于pe结构的部分
(打开网址,一步步跟着做,手动解析.net pe) https://www.52pojie.cn/thread-299156-1-1.html
https://www.cnblogs.com/cxd4321/archive/2008/06/04/1213313.html
https://mp.weixin.qq.com/s/IILlbxGr7Hywk-ouyH2ItQ
https://www.52pojie.cn/thread-299995-1-1.html
《Microsoft.NET IL汇编语言程序设计》 关于Il语言和pe结构的部分
3 大名鼎鼎的codecracker的教程 https://forum.tuts4you.com/topic ... ents#comment-182963
4 学习x64dbg,od,ida的用法,调试.net程序
预期成果:codecracker的教程破解程序基本完成,熟悉.net元数据。可以用反射直接改il代码。.net破解进阶到中等水平
4 大神之路
1看 https://www.bilibili.com/video/B ... id_from=333.337.0.0
2初步自己写.net混淆与解混淆的程序https://www.xanthus.io/building- ... e-windows-defender/
https://blog.syscall.party/post/ ... e-net-deobfuscator/
3了解,掌握dnlinb。看dnlib的例子,读源码(重点掌握dnlib怎么解析程序集,rva,元数据,怎么改il代码)
4 看吾爱破解wwh1004大神的教程,并用dnlib库写出来成果
5了解混淆原理 goto混淆,swith混淆,流程平坦化。il虚拟机
6看加壳脱壳机源码https://github.com/NotPrab/.NET-Deobfuscator 重点推荐https://github.com/Sato-Isolated/MindLated
7看confuseX源码,并写出反编译器
8搞定Agile,NETReactor,Obfuscar等等混淆器
6看dnspyde4dot源码
5修仙之路掌握ee层,jit层多处hook插桩 https://www.52pojie.cn/thread-1005018-1-1.html
https://ubbecode.wordpress.com/tag/jit-hook/
https://rhotav.github.io/jithooking-tr
学习win32汇编,搞定深思壳
学习win32加壳脱壳esp定律。搞定dng壳
6网站 https://mindlocksite.wordpress.c ... x-1-0-max-settings/
https://forum.tuts4you.com/topic ... ents#comment-182963
https://rhotav.github.io/
https://hackforums.net/
https://reverseengineering.stackexchange.com/
谢谢分享,有时间好好消化{:1_893:} 先感谢分享,我会慢慢消化滴 必须顶你 吾爱破解
顶!!!! 谢谢,正需要! 谢谢分享,有空开始学习。 挺全面,值得学习 先感谢分享,我会慢慢消化滴
页:
[1]