首页
社区
课程
招聘
[讨论]如果将代码注入自身程序?
发表于: 2015-4-16 16:22 5412

[讨论]如果将代码注入自身程序?

2015-4-16 16:22
5412
按理说程序是没有权限改变自身的代码的,我想应该向写一端代码注入到别的进程,然后执行那一段代码,就是将程序挂起,然后写内存。
但问题是怎样去执行注入的那段代码,然后又从注入的代码跳回原程序继续记性呢?

这个有没有办法实现呢?语言不限。

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

收藏
免费 0
支持
分享
最新回复 (18)
雪    币: 719
活跃值: (777)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
2
应用层如果按照自己写入代码的方法,。那就要用远程线程了。内核就嗨了去了。
2015-4-16 16:31
0
雪    币: 2
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
hook.
2015-4-16 16:32
0
雪    币: 719
活跃值: (777)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
4
没看错了不好意思。。。如果你有执行主线程的上下文中地址直接jmp回去就好了。如果没有。。。
2015-4-16 16:34
0
雪    币: 719
活跃值: (777)
能力值: ( LV8,RANK:120 )
在线值:
发帖
回帖
粉丝
5
用线程倒是不用考虑执行回去因为不是在主线程。其他方法就Jmp回去。
2015-4-16 16:35
0
雪    币: 10916
活跃值: (3284)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
有没有实例,任何语言编写都可以。谢谢。
2015-4-16 18:56
0
雪    币: 488
活跃值: (3149)
能力值: ( LV7,RANK:140 )
在线值:
发帖
回帖
粉丝
7
你要写入的代码是什么样的,执行的时机又是什么样的?
2015-4-16 19:21
0
雪    币: 10916
活跃值: (3284)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
8
随便什么都行,我只是想看看实现的例子,暂时还没想要做什么。
2015-4-16 19:38
0
雪    币: 488
活跃值: (3149)
能力值: ( LV7,RANK:140 )
在线值:
发帖
回帖
粉丝
9
我不太明白你的需求,按照你标题写的,代码注入自身进程,不就是写自己内存么?写完了之后当作新线程启动或者EIP跳转过去,执行完了再跳转回来。
是不是我没理解对?
2015-4-16 20:34
0
雪    币: 10916
活跃值: (3284)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
10
程序是不可以写入自己的代码内存的,你可以试试。其实我就是想程序启动后,改变自己的代码。
2015-4-16 21:14
0
雪    币: 10916
活跃值: (3284)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
11
曾经看过这样的代码,程序将一段代码读入一段内存,然后将这段代码的首地址赋值到eax,再jmp eax。这样的代码如果不用汇编语言而是用高级语音能实现吗?
2015-4-16 21:42
0
雪    币: 488
活跃值: (3149)
能力值: ( LV7,RANK:140 )
在线值:
发帖
回帖
粉丝
12
用VirtualProtect改变内存属性就可以修改了。代码可写之后,你可以直接写入代码的16进制数据。
要使用高级语言写,那不就是先把代码写好作为一个函数,然后调用吗?
2015-4-16 23:00
0
雪    币: 23
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
SMC技术,百度搜索,很简单的东西。另外加一句,防SMC用SEH HOOK就行了。逃不开地
2015-4-17 10:15
0
雪    币: 10916
活跃值: (3284)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
14
smc技术应该是挂起另一进程时打入补丁的吧,程序是不能修改自身的。
2015-4-17 12:32
0
雪    币: 23
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
栈随便执行,再看资料去。,,
2015-4-17 13:07
0
雪    币: 2523
活跃值: (520)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
16
SMC self modify code 自修改代码 怎么成了修改别的进程的代码了?
virualprotect改变代码段的内存属性变为可写 自己进程的东西想怎么改就怎么改
2015-4-17 13:48
0
雪    币: 44
活跃值: (186)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
表示不懂楼要干嘛,你们懂了吗
2015-4-18 21:01
0
雪    币: 10916
活跃值: (3284)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
18
smc高级语音编程可以吗?好像都是od打补丁。
2015-4-18 22:39
0
雪    币: 23
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
最低限度也要asm,高级语言太束手束脚了。想学耍流氓肯定要先挨打的,学习去吧,小伙伴。
2015-4-19 00:24
0
游客
登录 | 注册 方可回帖
返回
//