抛砖引玉,说说我干的勾当,干过类似坏事情的各位也说说
去年玩弹弹堂,问题技术不行,所以想写个弹弹堂外挂.
弹弹堂是一款类似疯狂坦克的游戏,通过调节发射炮弹的角度和力度,把炮弹打到敌人的位置,把敌人打死或者击落,游戏很简单,随机的参数也只有风力一个,查询了下网上的一些资料,发现大家很多是使用一些很简单的截图,测量距离,计算,而参数的获得一般是采用图像识别的方法,使用这些办法,比较的原始,基本没有被服务器发现危险,缺点是:极其粗糙,落点计算有很大误差.
本人菜鸟一个,超级的,不懂flash编程,对上面所说的粗糙办法也做不到,看到别人用java之类的写程序只是佩服加羡慕.思索之余,想用类似编写游戏外挂的办法,注入到flash里面,直接调用flash里面的函数,但是,找了很久没有找到这方面的资料.最后,灵机一动,采用了以下方法,成功写出了一个简单又有效的外挂
首先,flash游戏,其实和普通的客户端游戏没有区别,从代码的角度上来说,其实更容易被人给破解,因为flash反汇编的时候,他的代码阅读性更强.
所以,我先把弹弹堂的loader程序下载下来,然后反编译,目的是找到主flash的下载地址和加载参数
然后把主flash下载,反编译,然后把他再次编译.
做的其实就是这个事情,但是,如何把这个flash编译成功就很累人了,虽然代码非常接近本来的面目,但是依旧有很多的错误,一一解决后,还牵扯到一个连接路径的问题,因为flash在官方网站运行,里面的图片,音乐,其他资源flash等等都是相对路径加载的,所以,还得在此基础上把他改成绝对路径.
全部ok后,自己架设一个简单的web服务器,把flash放上去,然后把加载参数写到调用flash的网页上,登陆,哈哈,成功进入游戏,现在虽然登陆的是自己的网站,但连的却是官方的游戏服务器.
可能有人会说,没看到外挂啊,只是,整个客户端代码都在手上,想加什么功能就加什么功能了
我给自己的弹弹堂flash加上了计算弹道的功能,红色的弹道清晰,准确,发射炮弹的时候,完全是循着轨迹过去的,做不到百发百中,不过是指哪打哪了
这里,我没有任何的贴图,代码之类,只写了思路,不是我保密,因为写这个帖子也是刚刚看了其他人的帖子,所以写的,时间过去快1年了,又因为重装系统,游戏更新,现在的代码都失效了,贴出来也没用,当初也录像过,只是也找不到了,写在这里,只是想说下,flash游戏,只要想搞外挂,比其他游戏更可怕,完全的内置式,想怎么搞就怎么搞
【原创】swf逆向可以这么玩 http://bbs.pediy.com/showthread.php?t=132379
- 标 题:超级菜鸟另类玩swf反汇编
- 作 者:egol
- 时 间:2011-04-15 11:57:32
- 链 接:http://bbs.pediy.com/showthread.php?t=132403