中易网

到底怎么修改特征码?

答案:6  悬赏:0  
解决时间 2021-04-21 06:26

我把特征码怎么修改就是不行,总是不能运行。

包括跳转也是不能运行,

请有什么比较通用,实用的吗?

最佳答案
00001B4E: FF25 04210010 JMP [10002104] ;这样好看多了
0000198B: FF15 20210010 CALL [10002120]
00001555: 8B3D 4C210010 MOV EDI,[1000214C]
=======================================================================
=======================================================================
看看我对第一处的修改:
注意看重定位问题
(一般调用输入函数返回时,EAX放返回值,所以可以在压栈之后调用之前放心使用EAX)
  使用EAX做重定位处理。
用OD打开
修改方法如下:
A:找一处空隙:
10001FD0 90 nop
10001FD1 90 nop ;先来两个NOP,防止花指令
10001FD2 E8 00000000 ;这句用二进制编辑,很重要,OD的右键有
;完成后这句指令就变成 call 10001FD7
;接下来
10001FD7 58 pop eax
10001FD8 2D D71F0010 sub eax, 10001FD7 ;这个数对应前面的call
10001FDD 05 04210010 add eax, 10002104 ;这个是函数地址
;对照第一处特征码( 00001B4E: FF25 04210010 JMP [10002104] )
; <&MFC42.#269_AFX_MODULE_STA>
;到这里,函数地址的重定位就完成了
10001FE2 FF20 jmp [eax] ;跳到重定位后的函数入口

B:
把光标移到第一处特征码那一行单击
------------
10001FD0=10001FD0
本地调用来自 10001773
------------
转到10001773处,
10001773 |. E8 D6030000 call 10001B4E
改为
10001773 E8 58080000 call 10001FD0 ;指向刚才空隙中的代码起始
这里只有来自10001773的一处调用,如果有多处调用就要改多处,方法一样
C:
把第一处特征码的代码NOP掉
(实际改变的只是FF25这两个字节,后面的04210010在加载时会被加载器改回来)
niu-cow 2006-06-04
----------------
--------------------------------------------------------------------------

看这个特征码:
0000198B: FF15 20210010 CALL [10002120]
此处有重定位,重定位的范围是0000198d-00001990,即20210010四个字节
这四个字节上不要放指令,会被加载器破坏的,以后NOP掉就是了
看看前后:
10001987 |. FF7424 04 push dword ptr [esp+4] ; /func
1000198B |. FF15 20210010 call [10002120] ; <&MSVCRT._onexit>
10001991 |. 59 pop ecx
第二句没有跳入,可以用万能跳转法
(第一句没关系的,只要没有跳入到“中腰”就行。第三句不改,不用考虑)
从10001987处跳出去吧(万能跳转法),jmp 只要五个字节,改到1000198b,
没有到重定位的地方。
A:
找一处空隙
10001FA0 90 nop ;防止花指令,方便修改
10001FA1 90 nop
10001FA2 FF7424 04 push dword ptr [esp+4] ;原来的指令补回去
10001FA6 E8 00000000 ;二进制编辑
;指令变为 call 10001FAB
10001FAB 58 pop eax
10001FAC 2D AB1F0010 sub eax, 10001FAB ;对应前面的call的地址
;从call开始的这三句构成重定位差
;哪个寄存器空闲就用哪个,call前面一般用eax
10001FB1 05 20210010 add eax,10002120 ; <&MSVCRT._onexit>
;把原来函数的地址加上重定位差
;到这里,函数地址的重定位已经完成了
10001FB6 FF10 call [eax] ;调用函数
10001FB8 ^ E9 D4F9FFFF jmp 10001991 ;返回后跳回到下一句
;不要跳到0000198d-00001990
B:
10001987 /E9 14060000 jmp 10001FA0 ;跳到刚才空隙中代码的起始
1000198C |90 nop
1000198D |90 nop
1000198E |90 nop
1000198F |90 nop
10001990 |90 nop

-------------------------------------
------------------------------------------------------------------------
再看这个
00001555: 8B3D 4C210010 MOV EDI,[1000214C]
此处MOV指令将改变EDI的值,所以等下重定位时也使用EDI,这样最保险
同样不要在00001557-0000155A 改指令,以后NOP掉就是了
同样用OD打开,看看
10001551 |. 8B5424 16 mov edx, [esp+16]
10001555 |. 8B3D 4C210010 mov edi, [1000214C] ;USER32.wsprintfA
第二句没有跳入,这样可以用万能跳转法
A:
找一处空隙
10001F70 90 nop
10001F71 90 nop
10001F72 8B5424 16 mov edx, [esp+16];补指令,老规矩
10001F76 E8 00000000 ;这句不用再说了吧call 10001F7B
10001F7B 5F pop edi ;直接用edi,这是技巧
10001F7C 81EF 7B1F0010 sub edi, 10001F7B
;这样,edi 已经是重定位差了
10001F82 81C7 4C210010 add edi, 1000214C ; <&USER32.wsprintfA>
;edi的值已经重定位了,
;但现在还不行,注意,原来的指令有个方括号,也就是取地址所指的内存的值
;2006-06-09修改时疏忽了    (2006-06-14 修正)
10001F88 8B3F mov edi, [edi]
;跳回到原来的下一句吧(这句也要修正,指令相同但机器码不同)
;同样不要跳到NOP掉的地方,这样保险
10001F8A ^ E9 CCF5FFFF jmp 1000155B

B:
10001551 /E9 1A0A0000 jmp 10001F70 ;这个也不再解释了
10001556 |90 nop
10001557 |90 nop
10001558 |90 nop
10001559 |90 nop
1000155A |90 nop


----------------
----------------------------------------------------------------------------
----------------
好了,总结一下
重定位的方法其实很简单
先求重定位差:
nop ;先来几个nop防止出现花指令
;(这样修改时看得清楚些,或者再放些垃圾指令)
e8 00 00 00 00 ;这句将变为call xxxxxxxx
;用C32ASM看到的地址和OLLYDBG看到的不一样,没关系的,
;看到啥就是啥
pop eax ; 或别的寄存器,一定要空闲
sub eax,xxxxxxxx ;每句之间都可放垃圾指令,只要不破坏现场就行了
然后
add eax,yyyyyyyy ;yyyyyyyy为需要重定位的(原来的)地址值,
;加上前面求出的重定位差
;就完成了重定位
至于重定位之后,该怎么办就怎么办

空隙要足够大,加了垃圾指令需要更大的空隙。
直接寻址的地方会被加载器重定位的,别试图在这些地方修改指令
剩下的就是跳来跳去的问题了,ok
全部回答
这句用二进制编辑,很重要,OD的右键有
0000198B: FF15 20210010 CALL [10002120]

特征码修改方法比较多,

要灵活运用.

一个不行.就换另一种方法.

嘿嘿 我这里有60多集免杀教程 还有破解 直接联系我发给你

上面是复制人家的,

特征码修改方法比较多,

要灵活运用.

一个不行.就换另一种方法.

我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
北辰实验小学到上谷商业中心公交
武汉哪里做入职体检便宜,出结果快,最简单的
我是1987年闰6月13日,今年可以结婚吗?女朋
职业高中驾校报名处这个地址在什么地方,我要
我是1990年阳历11月25日,出生的我想占卜我未
呼和浩特南华联在哪里?在哪条街?
舌尖上的成都有哪些特色美食
我有个喜欢的男生 之前有一天晚上给我表白了
年后想购买30W-40W,四驱SUV,7座,带涡轮增
求电影推荐(这个男人来自地球)这种类型的
被小狗抓了一下真的没事吗
九月礼包怎么领不到
DNF龙王的G盗号不?在家用有毒嘛?
律师可以到房管局查询被告个人房产信息吗
帮我找个我可以读的学校
推荐资讯
卫子夫死后刘彻伤心过?后悔过吗?
我想贷款买台玉米收割机能办吗
天津市华信镀锌有限公司地址有知道的么?有点
n多寿司加盟以后在自己商圈还能在开一家店不
我的有些头发已经死到了,会不会变白头发啊?
椒盐煎豆腐的家常做法
远程telnet管理linux服务器出现报错信息: Ne
今年中国有什么大事?
“站在风口上,猪都会飞起来”,这句话是小米
科华试纸怎么样
为什么 街头篮球 一开始 就卡?
有一款很早的第一人称射击游戏关于生化病毒
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?