首页
社区
课程
招聘
[旧帖] [求助]为什么把push改成pop 0.00雪花
发表于: 2009-8-6 00:42 1953

[旧帖] [求助]为什么把push改成pop 0.00雪花

2009-8-6 00:42
1953
免杀的时候
为什么把push改成pop
入栈改出栈,程序免杀而且程序 可以正常运行?

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

收藏
免费 0
支持
分享
最新回复 (16)
雪    币: 444
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
简单说一下,很多杀毒软件都是靠多处检测特征码来判断是不是病毒的(所以病毒要有多态性)。同理,加壳软件要防止被误认为是病毒,成本最低且很有效的办法就是花指令和代码变形,最有效的时候应该是OEP附近添加。楼主你说吧PUSH改为POP,可以啊,关键是这些POP会被执行吗?
     比如
     push  1h
改写为
     mov   eax,1h
     db    0ebh,002h     ;这串花指令意思就是jmp到 0e8h 下一个指令(@a处)开始继续执行
     pop  eax               ;这个POP 不执行
     db    0e8h             ;这个花指令就是配合“隐藏”push  eax的。   
@a:
     push  eax
       第一行花指令这样就达到了隐藏 push   eax  的目的。

     这种方法一方面能防止杀毒软件误报,而且能防止跟踪。上面的代码很初级,实际上可以改写的很长很难看懂。这些技术是壳必用的一些技术,尽管没啥技术,但是越是笨办法配合其他技术反而变成好办法。
2009-8-6 15:16
0
雪    币: 164
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
不一样的感觉,毛瑟顿开
2009-8-6 15:40
0
雪    币: 576
活跃值: (1500)
能力值: ( LV12,RANK:210 )
在线值:
发帖
回帖
粉丝
4
学习一下。
2009-8-6 16:04
0
雪    币: 20
活跃值: (13)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
呵呵,真得佩服其汇编代技术
2009-8-6 19:13
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
6
LZ说的若是OEP的第一条
那就不是这个解释了.
2009-8-6 19:17
0
雪    币: 21
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
谢谢指点 学到很多
2009-8-9 00:16
0
雪    币: 21
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
请解释下那种情况吧............谢谢
2009-8-9 00:17
0
雪    币: 138
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
不错,学习了
2009-8-9 08:16
0
雪    币: 444
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
有大虾来解释下这种情况吗,给点提示也好。
2009-8-10 09:01
0
雪    币: 2067
活跃值: (82)
能力值: ( LV9,RANK:180 )
在线值:
发帖
回帖
粉丝
11
近100%的软件结束是调用 API , Ex: ExitProcess
OEP 第1条的 push ebp 变成了垃圾, 不用考虑Stack平衡.
所以有人将之改成 pop

我倒是认为LZ问的问题较属于这种.
2009-8-10 11:32
0
雪    币: 444
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
学习了,我也倾向LZ问的问题属于这种。最近在找如何狙击ESP定律的办法,精华7有篇文章提及了一点:回复里说,很多时候软件不会通过堆栈结束。
2009-8-10 11:35
0
雪    币: 21
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
谢谢指教 谢谢指教
2009-8-10 21:53
0
雪    币: 46
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
很多人免杀时经常把PUSH 换成pop
本人感觉一点都不等价 为什么程序还能正常运行|?
2009-8-11 00:33
0
雪    币: 89
活跃值: (43)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
ls的怎么还不明白呢?关键是看你的改的pop有没有使得软件运行,或者是不是跟push正好对应的那个!
2009-8-11 17:23
0
雪    币: 116
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
16
也进来学习学习
2009-8-11 17:58
0
雪    币: 201
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
新手,刚进来,要多看看看
2009-8-11 18:49
0
游客
登录 | 注册 方可回帖
返回
//