dot net程序逆向工程基本方法

dot net程序逆向工程基本方法

最近对一个dot net程序进行了逆向工程,修改了部分资源和功能。
为了备忘,特记录如下文.

1、确定其开发语言

  • 不同语言逆向工具不同,后续选择何种调试工具
  • 使用PEiD

2、确定其是否“加壳”、代码混淆

  • 都是反调试的手段,后续选择去壳工具
  • 使用DotNet Id

3、工具脱壳

  • 使用De4dot
  • de4dot.exe -r c:\my\files -ro c:\my\output

4、代码静态反汇编

  • 使用.NET Reflector
  • 分析代码逻辑,找到待修改处

5、代码修改

  • 使用.NET Reflector插件

    • Reflexil.Reflector.AIO.dll:修改代码
    • Reflector.BamlViewer.dll:修改资源
  • 直接修改IL文件

    • 微软自带IL 反汇编程序 (ildasm)

6、编译回可执行程序

  • 使用微软自带IL 反汇编程序(ilasm)
  • 使用.NET Reflector反汇编验证修改结果
  • 直接运行看效果

7、小结

  • 逆向方法、流程和工具使用
  • 开发语言、平台架构
  • 其他备用工具
    • 文本编辑器
    • 字符转换工具
    • 资源修改工具
  • 耐心、清醒
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值