首页
社区
课程
招聘
也谈用可执行文件方式加密FLASH文件的解密方法
发表于: 2005-6-13 12:04 8968

也谈用可执行文件方式加密FLASH文件的解密方法

nig 活跃值
4
2005-6-13 12:04
8968

也谈用可执行文件方式加密FLASH文件的解密方法

工具:OD  Lordpe 16进制编辑器
程序:多彩的夏天.exe
目的:从EXE文件中导出SWF,之后可以进行反编及修改操作
说明:为了研究需要而处理的。不敬之处请您谅解。

1、OD导入程序。
  停在这里
004B556B > $ 6A 60           PUSH 60
004B556D   . 68 30805300     PUSH 多彩夏天.00538030
004B5572   . E8 E9EBFFFF     CALL 多彩夏天.004B4160
004B5577   . BF 94000000     MOV EDI,94
004B557C   . 8BC7            MOV EAX,EDI
004B557E   . E8 CD95FFFF     CALL 多彩夏天.004AEB50

2、执行程序,之后可以看到程序运行的界面。以及播放的FLASH动画。
注意:此程序不是用Flash播放器生成的EXE文件,所以不能用网上的一些去头的方法进行处理。
到OD中。

ALT+M显示内存列表。

选一些比较大的内存块,鼠标右键,在CPU中进行转存,这样在数据区时可以看到内存块的内容了,
进行 二进制的搜索Flash文件的头 FWS 字符,如果你找到了,可以看一下,这一块内容离块的头并不远,
实际上不用找也能看到的。

01DF0000  50 00 5F 01 50 00 5F 01 00 00 00 00 00 00 00 00  P._ P._ ........
01DF0010  00 60 27 00 00 60 27 00 11 08 00 00 00 0B 00 00  .`'..`'.  .....
01DF0020  46 57 53 06 EE 57 27 00 78 00 07 D0 00 00 17 70  FWS 钭'.x.?. p
01DF0030  00 00 0C 17 00 43 02 FF FF FF 44 0B 06 00 00 00  ... .C ?D ...
01DF0040  3F 03 02 00 00 00 07 00 BF 05 76 2D 00 00 01 00  ?  ....?v-.. .

大约在块头的20H开始,简单说一下Flash头的格式:
01DF0020  46 57 53 06 EE 57 27 00 78 00 07 D0 00 00 17 70  FWS 钭'.x.?. p
           ====== -- =========
           标示   版本  长度
长度内容一会要用的。当前文件的长度是2757EEH字节长,1DF0020+2757EE=1E6580E 说明我们的Flash到此位置

3、上lordpe,在path中选中程序的名称列表。
  鼠标右键  dump region  汉语是  脱壳部分区域。
在列表中选中我们刚才的内存块了。
右键 dump,保存文件AA.SWF。
4、用16进制编辑器打开生成的文件AA.SWF,去掉头20H字节, 之后到2257EEH处,删除后面的字节。
之后SWF文件就可以看到了,用播放器可以看。用AVS可以反编。

5、总结
现在网上的Flash的文件加密方法很多,但常是能被反编译,之后改文件,改底稿,改图片,为了保护作者的权力,可谓保护起来不遗余力了。
这种保护方法是用VC编程,之后在程序中调用播放Flash的控件,再调用Flash文件进行播放。因为数据是被压缩的,不能直接dump出来的。

多年不写东西,都快不会打字了。
    Nig  2005.06.13


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 7
支持
分享
最新回复 (12)
雪    币: 301
活跃值: (300)
能力值: ( LV9,RANK:290 )
在线值:
发帖
回帖
粉丝
2
8错,支持一下
2005-6-13 15:12
0
雪    币: 328
活跃值: (925)
能力值: ( LV9,RANK:1010 )
在线值:
发帖
回帖
粉丝
3
精练,支持!
2005-6-14 07:21
0
雪    币: 370
活跃值: (15)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
4
说的明白,支持
2005-6-14 09:32
0
雪    币: 603
活跃值: (617)
能力值: ( LV12,RANK:660 )
在线值:
发帖
回帖
粉丝
5
学习好方法~
2005-6-14 09:41
0
雪    币: 205
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
谢谢! 我也试试。
2005-6-14 09:46
0
雪    币: 2384
活跃值: (766)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
7
不错,收藏一份慢慢学习。
2005-6-14 10:43
0
雪    币: 671
活跃值: (723)
能力值: ( LV9,RANK:1060 )
在线值:
发帖
回帖
粉丝
8
swf的壳,
2005-6-14 10:50
0
雪    币: 413
活跃值: (637)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
9
说是外包装可能更准确些,也是一种保护SWF文件的一种方法了。
现在SWF不保护太容易就能搞到源码了前几天BAIDU搜索才发现。
2005-6-14 12:42
0
雪    币: 255
活跃值: (175)
能力值: ( LV8,RANK:130 )
在线值:
发帖
回帖
粉丝
10
好文章!!!
2005-6-14 12:56
0
雪    币: 300
活跃值: (412)
能力值: ( LV9,RANK:410 )
在线值:
发帖
回帖
粉丝
11
好多电子杂志不知道是不是类似的原理,有空看看
2005-6-14 14:11
0
雪    币: 409
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
12
好文章,收藏!前天才发现我都完全忘记怎样做FLASH了!
2005-6-14 21:32
0
雪    币: 216
活跃值: (70)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
13
为数不多的涉及flash方面的文章,收藏!
2005-6-15 15:11
0
游客
登录 | 注册 方可回帖
返回
//