首页
社区
课程
招聘
[求助]手动将一个dll写入到了目标进程,并且开了一条线程,可 dll 没有并没有执行入口函数
发表于: 2017-12-18 12:55 3006

[求助]手动将一个dll写入到了目标进程,并且开了一条线程,可 dll 没有并没有执行入口函数

2017-12-18 12:55
3006

第一步:手动将一个 DLL 写入到了目标进程


在OD中查看到这些信息可以确定 dll 的二进制数据已经成功写入到了目标进程中。

////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

第二步:创建远程线程,让 dll 能够跑起来




/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////

但是现在问题来了, 就是虽然 dll 写到了目标进程, 并且也开了一条线程, 但是 dll 入口处的代码并没有得到执行,求教各路大神。为什么会这样?在线等。。。。。 可以请抽烟。


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

收藏
免费 0
支持
分享
最新回复 (8)
雪    币: 775
活跃值: (2292)
能力值: ( LV5,RANK:60 )
在线值:
发帖
回帖
粉丝
2
不是通常dll注入都要执行入口函数吗  。。还有VA不是等于imagebase+rva吗    读入重定位不也是这样呀 
2017-12-18 13:27
0
雪    币: 21
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
AperOdry 不是通常dll注入都要执行入口函数吗 。。还有VA不是等于imagebase+rva吗 读入重定位不也是这样呀
重定位和  IAT  都修复了。
2017-12-18 14:02
0
雪    币: 2435
活跃值: (725)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
4
不是还得手动执行dllmain吗
2017-12-18 14:05
0
雪    币: 21
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
FANTASYING 不是还得手动执行dllmain吗
为什么要手动执行?
2017-12-18 14:26
0
雪    币: 203
活跃值: (30)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
为什么dllmain的函数能运行呢,一般传统的createremotethread  传入loadlibrarya  才会运行dllmain吧。直接传入一个函数的地址太高端没用过
看了看是不是直接调用没传入参数啊,那个switch没触发啊把switch去了试试呗
2017-12-18 15:07
0
雪    币: 2435
活跃值: (725)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
7
FlyingGuys [em_14]为什么要手动执行?
找个内存注入的代码看下哇,里面都会找到dllmain的地址,然后执行
2017-12-18 15:09
0
雪    币: 248
活跃值: (3789)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
看清楚了,dllmain是三个参数,createremotethread创建线程传递什么参数了?
2017-12-18 19:42
0
雪    币: 211
活跃值: (118)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
DLL的OEP不是DLLMain,  如同exe的OEP不是main函数一样,你先检查下你的OEP对不对。另外,在window7系统中所有module的地址不再恒定,不同进程中系统库的地址不一定一直,你需要检查下你的import表修复的对不对。

一般传统的dll注入都是启动createremotethread启动loadlibrary,由系统加载dll来完成dllmain的调用。因为系统在执行dllmain之前会执行import表,依赖库的加载等工作。
2017-12-19 00:16
0
游客
登录 | 注册 方可回帖
返回
//