频道栏目
读书频道 > 安全 > 反入侵的艺术——黑客入侵背后的真实故事
1.2 黑客技术日趋成熟
2014-08-22 12:05:33     我来说两句
收藏   我要投稿
本书中有些故事令人震惊,有些故事开阔视野,有些故事使你为黑客的灵感而发笑。如果你是一位IT或安全专业人士,就能从每个故事中吸取教训以帮助你的公司加固安全。如果你并非技术人员,而只是对有关犯罪、胆大、  立即去当当网订购

Mike、Alex和Macro将机器搬到房子二楼的空卧室里。这种刺激的经历让Alex久久不能忘怀,并将它视为生活中最令自己兴奋的一件事情。

我们打开机箱,取出ROM(只读存储器),并想知道它用的是什么处理器。我决定将这个日本产的机器改装成为非品牌产品。我猜想那些工程师现在也许工作压力更大了,他们过去有些懒惰和马虎。事实证明了我们的猜测。这台老虎机用了一片6809芯片,与苹果二型或Atari用的一样的6502芯片。这是一个8位芯片,有64KB的存储空间。我是一个汇编程序员,因此对这一切都十分熟悉。

Alex选中的是一台已经在市面上出现了10年之久的机器。当赌场想要购买新型机器时,要经过拉斯维加斯博彩委员会的同意。同意之前,委员会必须对机器的程序进行仔细研究,保证游戏机对所有的玩家都是公平的。让一款新机器的设计通过审核将是一个冗长的过程,因此赌场机器的使用年限通常比预期的要长。对黑客人员来说,旧机器就意味着过时的技术,这样,他们攻击赌场系统就不会很复杂,反而会相当容易。

他们从芯片上下载的计算机代码是二进制的机器代码形式。0和1的字符串是计算机指令系统的最基本表示形式。为了将这些代码转换成方便阅读的形式,首先他们得做一项逆向工程(reverse engineering)—— 程序员用来了解机器是如何设计的过程,也就是说,他们需要将机器语言转换成他们容易操作和解读的形式,以便理解。

Alex需要一个反汇编程序(disassembler)来转换这些代码。为了解决这个问题,他们把目光瞄准了软件—— 这种行为无异于去图书馆找书,仿照书里所描述的方法去造炸弹。这些家伙开发了自己的反汇编程序,Alex描述他们的工作“不是轻而易举的,但有趣而且较为简单。”

当视频扑克游戏机的代码通过新的反汇编程序反汇编之后,这三个程序员就坐下来开始仔细地审读这些相对容易理解的汇编程序。通常,对于那些娴熟的程序员而言,在程序里找到他们所需要的程序段是比较容易的。因为编程的时候,通常要标明所有的“路标”—— 注释、标记等,这些都会将特定的程序段解释清楚,这些有点像书的篇章结构,有章题、节题,章节里面又有小标题。

通常来讲,当人们编写的程序被编译成所需的机器代码后,这些“路标”都被忽略了。因为计算机或微处理器根本不需要这些注释。所以通过逆向工程反汇编回来的那些程序根本不包含任何注释。为了与前文的比喻“路标”保持一致,这些反汇编过来的代码就像一张光秃秃的地图,而上面没有地名,没有高速公路和街道的标志。

他们在屏幕上仔细查看代码,搜寻所有蛛丝马迹,希望能得到这些最基本的答案:“这些是以什么逻辑编排的?扑克牌是怎么洗牌的?那张被替换的牌是如何抽出来的?”这些问题的共同之处让他们将目光锁定到了随机数生成器上。Alex猜到程序员编写这些机器代码时也许会因偷懒而走捷径,因此他们设计的随机数产生的程序应该有后门可寻。这个猜测后来又被证明是对的,他们找到了后门。

您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力  
上一篇:1.1 研究
下一篇:1.3 重写代码
相关文章
图文推荐
排行
热门
最新书评
特别推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训 | 举报中心

版权所有: 红黑联盟--致力于做实用的IT技术学习网站