首页
社区
课程
招聘
od中怎么在程序里找到一个地址作为变量使用
发表于: 2014-1-8 00:06 4826

od中怎么在程序里找到一个地址作为变量使用

2014-1-8 00:06
4826
在破解一个软件的时候有一个je需要第一调用时次不跳第二次跳
想用od在程序里找一个地址存储一个变量,在每次调用je的时候赋值来实现。
所以需要一个RW属性的,并且没用被程序使用过的地址。
如果在没用的代码段找一个地址赋值的话,程序直接报错退出,报内存不应为written,
请问这个地址如何找,如何判断没有被程序使用过?
图中箭头所指是程序领空。

现在是这样弄得能用就是不知道会对系统造成什么影响也不知道用的是谁的空间
mov dword ptr ss:[0x01141000],0x0

本人菜鸟不知道说清楚没。

[培训]科锐逆向工程师培训第53期2025年7月8日开班!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (5)
雪    币: 102
活跃值: (2815)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
2
你的ss:[0x01141000]地址根本就不是代码段,按你图上所指,代码段为00401000到00453000。
2014-1-8 08:55
0
雪    币: 123
活跃值: (159)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
3
如果在没用的代码段找一个地址赋值的话,程序直接报错退出,报内存不应为written
你去用lordpe之类的把EXE的.text段属性改成RWX的就行了(正常应该是RX)
2014-1-8 09:14
0
雪    币: 5
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
hi,
可以考虑一下 inline patch.
在数据区域寻找一个空闲区域: 如 A
用OD查找一块空闲的区域, 比如空闲区域地址为X,则修改:
原程序:
je abc

修改为:
jmp x

x处程序:
获取A的值
设置A的值
判断A的值
满足条件 : jmp ;je的下一条语句的地址,   但要注意代码覆盖情况。
2014-1-12 22:13
0
雪    币: 37
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
学习了。
2014-1-13 12:01
0
雪    币: 300
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
看一下。
2014-7-12 16:37
0
游客
登录 | 注册 方可回帖
返回