首页
社区
课程
招聘
[求助]DNSpy调试C Sharp代码时,如何进入内存中DLL文件中的导出函数
发表于: 2021-8-29 08:20 5462

[求助]DNSpy调试C Sharp代码时,如何进入内存中DLL文件中的导出函数

2021-8-29 08:20
5462

各位大佬好,最近在分析一个C#的原样本,遇到调试的问题,想请教各位。
样本行为:
1、内存解密一个C#写成的DLL文件,并调用其中的导出函数。
2、调用代码如下


3、继续F11进入Activator.CreateInstance()函数,后续函数调用步骤如下:
runtimeType.CreateInstanceImpl()
((ConstructorInfo)methodBase).Invoke(bindingAttr, binder, args, culture)
RuntimeMethodHandle.InvokeMethod(null, array, signature, true)
MarshalByRefObject IsCurrentContextOK()
在IsCurrentContextOK()函数中有2条代码:
{
marshalByRefObject = proxyAttribute.CreateInstanceInternal(serverType);
return marshalByRefObject;
}
return marshalByRefObject时程序在运行,DNSpy调试器不能再调试程序。

 

在之前分析过的调用C#DLL文件中的导出函数会跟踪到RuntimeMethodHandle.InvokeMethod(obj,null,this.signature,false)再F11就可以进入到DLL中导出函数中调试,DNSpy可以继续调试。
但这次的InvokeMethod()函数参数不同,F11怎么会进入到IsCurrentContextOK()函数,而且后续调试DNSpy无法参与调试是怎么回事。

 

找不到是什么原因,哪位大佬知道原因,这种情况应该怎么调试,帮帮小弟。


[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

上传的附件:
收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 19
活跃值: (218)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
样本地址:eb3K9s2c8@1M7s2y4Q4x3@1q4Q4x3V1k6Q4x3V1k6K6i4K6u0W2N6r3S2J5k6h3q4@1j5X3!0G2K9#2)9J5k6h3y4F1i4K6u0r3M7X3g2H3L8%4u0@1i4K6u0r3k6X3W2D9k6g2)9J5c8U0b7$3z5o6l9H3z5r3j5#2k6U0b7&6z5e0k6U0x3o6y4T1x3o6k6V1y4X3f1%4y4r3p5&6y4e0b7$3z5h3q4U0k6h3f1%4j5e0x3#2x3X3j5^5k6o6k6T1j5U0g2W2y4K6p5^5k6o6R3$3y4K6l9%4k6r3p5%4j5K6N6U0x3r3q4Q4x3V1k6Q4x3@1k6K6K9h3N6F1i4K6y4p5K9r3W2K6N6r3!0J5P5g2)9J5y4X3q4E0M7q4)9K6b7X3g2F1N6W2)9K6c8s2N6A6L8U0N6Q4y4h3k6K6M7o6q4Q4y4h3k6W2L8Y4R3^5y4W2)9#2k6X3!0X3k6X3W2U0k6e0t1H3x3e0x3`.
上传的附件:
2021-8-29 20:05
0
雪    币: 19
活跃值: (218)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
已解决,感激各位大佬。
2021-8-31 15:39
0
雪    币: 207
活跃值: (1042)
能力值: ( LV3,RANK:25 )
在线值:
发帖
回帖
粉丝
4
咋不分享下怎么解决 的呢
2021-9-2 10:08
0
雪    币: 200
活跃值: (46)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
请问是怎么解决的哈,我也调试的相同的样本
2022-9-2 11:00
0
游客
登录 | 注册 方可回帖
返回