吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 3825|回复: 2
收起左侧

[会员申请] 申请会员ID:BingFeng【未报到,已注销】

[复制链接]
吾爱游客  发表于 2015-10-23 13:50
申请标题:申请会员ID:BingFeng
1、申 请 I D :BingFeng
2、个人邮箱:402024633@qq.com
3、原创技术文章:
Assembly-CSharp.dll解密
第一部分
在libmono.so的mono_image_open_from_data_with_name
顺藤摸瓜找到 mono_image_open_from_data_with_name_0



mono_image_open_from_data_with_name_0第一条指令,改成无限循环(用winhex)


003DE1F8  F0 47 2D E9  --> FEFFFFEA


并在IDA中事先下好如上图中一样的断点,


然后运行游戏,用IDA挂在目标,


并按F9运行


之后打开断点列表,






双击断点,这样就能快速来到函数 mono_image_open_from_data_with_name_0处


来到 mono_image_open_from_data_with_name_0(003DE1F8 )第二条指令,无限循环处,,


在IDA中修改内存,



把mono_image_open_from_data_with_name_0第一条指令的无限循环 还原回去,


003DE1F8  FE FF FF EA    -->  F0 47 2D E9   



之后,反复多次的按F9运行,


mono_image_open_from_data_with_name_0的第一个参数的r0,代表着目标buffer,第二个参数r1代表着buffer的大小



在第一次断点触发暂停后,程序停在了mono_image_open_from_data_with_name_0的第二条指令,跟人r0所指向的内存,如果是MZ开头的,


那么就不用关心本次解密,


如果不是MZ开头的,再按一下F9,程序会在第二个断点处断下,此时解密完成,


用ida脚本dump下来,即可


第二部分
dump下来之后还需要完成修复



其实就是IMAGE_DATA_DIRECTORY    MetaData;

中的第一个字段lSignature结构不是'BSJB'造成的






-----------------------------------------------------------
快速定位:
把目标dll拖入LoadPE



记录下MetaData的数值


MetaData                      0x001A7558 0x001C752C


0x001A7m

0x001C752C是MetaData结构的大小



点击“区段”记录下pe的区段信息



.text
00002000
0036CA84
00000200
0036CC00

发现MetaData在内存中的RVA(0x001A7558)落在.text段




根据.text段信息计算,MetaData数据在文件中的偏移:  001A7558-00002000+00000200=1A5758




用winhex打开目标dll


来到1A5758偏移处,修改数据为:'BSJB'


如下图




保存后,IDA已经识别。



发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Hmily 发表于 2015-11-1 22:03
ID:BingFeng
邮箱:402024633@qq.com  

申请通过,欢迎光临吾爱破解论坛,期待吾爱破解有你更加精彩,ID和密码自己通过邮件密码找回功能修改,请即时登陆并修改密码!
登陆后请在一周内在此帖报道,否则将删除ID信息。

ps:登录后可以把文章整理下发到移动安全区,谢谢。
Hmily 发表于 2024-6-6 15:39
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 09:34

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表