关于用 x64dbg Patch一个exe的问题
这是一个Windows x64 平台的程序。目前遇到了一个问题,汇编代码如下:
mov rax,qword ptr ds: :"20230101"
其中的20230101代表日期,程序会校验当前日期是否大于20230101,如果大于则会退出。我想patch它从而达到永不过期,思路是为exe添加一个数据段,然后将这段汇编代码改为从这个数据段中获取数据,请问这个思路可行吗,如果可行如何patch它,目前刚刚接触这方面,希望有人指点指点。
找谁给 :"20230101" 赋值 ,然后修改 我看着这句应该是 mov rax,qword ptr ds: 把寄存器rcx+10的地址的内存数据获取出来,赋值给rax,我看了你提供的:"20230101"是文本型,那么我们尝试直接把这个mov rax,qword ptr ds:改成 mov rax,空白地址 ,空白地址写入文本型"20280101"这样rax就被赋值了2028年,应该差不多了.本人不精通x64,在x86这样肯定是行得通的! 定位特征码直接写就行了,你可以先用ce尝试 直接改这个日期不行吗?或者下面应该有个跳转改成相反 byh3025 发表于 2024-5-6 17:52
直接改这个日期不行吗?或者下面应该有个跳转改成相反
可以直接改,但是我想要patch它成为exe byh3025 发表于 2024-5-6 17:52
直接改这个日期不行吗?或者下面应该有个跳转改成相反
跳转后面逻辑比较复杂,一时半会找不到,但是我找到它的关键数据了,相对来说数据应该好改一些 阿政0506 发表于 2024-5-6 17:41
定位特征码直接写就行了,你可以先用ce尝试
我直接可以修改内存中的数据,但是我现在想把修改的数据硬编码到这个exe里,这样每次打开已经是修改过的了 xiaoweng 发表于 2024-5-6 17:59
我看着这句应该是 mov rax,qword ptr ds: 把寄存器rcx+10的地址的内存数据获取出来,赋值给rax, ...
感谢,但这个空白地址指的是?不太理解 situhaonan 发表于 2024-5-6 18:08
找谁给 :"20230101" 赋值 ,然后修改
感谢回复,我找找