话题 | 自动洗牌器漏洞曝光:黑客可对发牌"完全控制 "
IOActive 的安全研究人员表示,虽然不容易,但破解Deckmate 2洗牌器是可能的。
本周《连线》杂志的一篇文章揭露了Doeckmate 2中的一个安全漏洞,Deckmate 2是世界各地现场扑克室使用的自动洗牌器之一。
在对Robbi Jade Lew争议进行审查后,她的辩护声明之一是所使用的自动洗牌器是无法破解的。这促使IOActive 的安全研究员Joseph Tartaro进行了自己的调查。
他们发现,通过将设备插入暴露的USB端口,Deckmate 2可能会受到损害,并且黑客可以更改设备的洗牌代码。他们还可以破解内部摄像头,从而实时了解牌组的顺序。还可以使用手机远程破解Deckmate 2。然而,要改变洗牌技术,必须手动重新启动设备而不引起注意。
在拉斯维加斯举行的黑帽安全会议上,Tartaro和IOActive的两位同事Enrique Nissim和Ethan Shackelford将展示他们对Deckmate(目前扑克室中使用最广泛的自动洗牌机)进行的长达数月调查的结果。他们最终发现,如果有人能将一个小型设备插入最先进的Deckmate(被称为 Deckmate 2)上的 USB 端口,那么这个黑客设备就能修改洗牌机的代码,从而完全劫持机器,并在无形中篡改洗牌过程。他们发现Deckmate 2 还有一个内部摄像头,可以确保每张牌都在牌组中,他们可以通过摄像头实时了解整个牌组的顺序,并将结果通过蓝牙从他们的小型黑客设备发送到附近的手机上。
总之,他们的洗牌机黑客技术给了作弊者 "百分之百的完全控制权",Tartaro说"基本上,它可以让我们为所欲为......例如,我们可以从摄像头读取恒定数据,这样我们就可以知道牌序,当这副牌进入游戏时,我们就能准确知道每个人的手牌。"
目前,IOActive 的研究人员表示,他们还没有时间设计出一种技术,让Deckmate按照他们选择的顺序准确地摆放牌面--尽管他们确信这也是可能的。无论如何,他们认为,仅仅知道全部牌的顺序,而不是改变它,就能提供一种更实用的作弊策略,而且更难被发现。
(从左到右):Ethan Shackelford, Enrique Nissim, and Joseph Tartaro。
Tartaro说,这种技术可以用来在任何纸牌游戏中作弊,但在德州扑克中尤其有效,德州扑克是在大多数扑克室(包括臭名昭著的Hustler Live Casino手牌)中流行的扑克游戏。这是因为在德州扑克中,知道牌的顺序就能准确预测每个人手中牌的组成,而与他们在游戏中做出的任何决定无关。Tartaro说,即使庄家在发牌之前切牌,就像高额桌游戏中的大多数发牌员那样,作弊玩家仍然能够在三张 "翻牌"(即在德州扑克游戏开始时发出的面向公众的共享牌)暴露出来时,立即算出牌面和每个玩家手中牌的顺序。
IOActive团队还研究了Deckmate的早期型号,即Deckmate 1,它没有外部 USB 端口,也没有内置摄像头。研究人员说,如果现场工作人员或维修人员有机会打开洗牌机的外壳,访问存储其代码的特定芯片,那么早期型号(即 Hustler Live Casino 游戏中实际使用的型号)仍然可以被黑客在游戏中作弊。在这种情况下,尽管没有内部摄像头,作弊者仍然可以黑进洗牌机重新排序--或者他们可以简单地阻止 Deckmate 在发牌员在牌局结束后拾起每个人的牌时洗牌,从而让作弊者知道那些之前玩过的牌的位置。"Tartaro说:"一个熟练的玩家只要有那么一点点优势,就能百分之百地洗清牌局。
研究人员说,IOActive 的黑客技术利用了他们在洗牌机中发现的明显安全漏洞:他们从二手卖家那里购买了自己的Deckmates 进行测试,其中一个卖家告诉了他们一个用于维护或修理的密码。他们发现,这个密码和他们从 Deckmates代码中提取的其他密码都配置在洗牌机中,没有简单的更改方法,这表明它们很可能适用于野外的几乎所有Deckmate。他们还发现,控制洗牌机的最强大的 "根 "密码--就像 Deckmate 的所有密码一样,他们拒绝公开披露--相对较弱。
也许最关键的是,研究人员的黑客技术利用了Deckmate 洗牌机设计上的另一个漏洞,以防止其代码被篡改:机器固件的设计是在启动时对代码进行 "散列",这是一种数学函数,它将代码转换成唯一的字符串,然后检查该字符串是否与未改动代码的已知散列值不同。但 IOActive 的研究人员发现,他们也可以简单地更改哈希值,这样,更改代码的哈希值就会与之匹配,而不会检测到代码的任何更改。
美国州一级的监管机构也使用哈希值功能对机器的完整性进行检查,以此来防止作弊,并确保扑克室不会对游戏机重新编程,从而为自己赢得优势。但IOActive的研究人员说,他们可以很容易地改变Deckmate,使其在运行作弊代码时也能通过检查。"Tartaro说:"你基本上是在问一个被破解的设备是否被破解了。
当WIRED写信给销售Deckmate的游戏设备公司 Light & Wonder 时,该公司在一份声明中对IOActive的发现做出了回应:"无论是 DeckMate 2 还是其他 L&W 自动洗牌机,都从未在扑克室受到过损害。此外,IOActive 的测试并未发现 DeckMate 2 洗牌机存在任何缺陷或设计缺陷;而且 IOActive 的测试是在实验室环境中进行的,其条件无法在受监管和监控的现场环境中复制。"
对此,IOActive 公司的研究人员指出,Light & Wonder 公司几乎不可能确切知道其洗牌机在扑克室中从未被破解过。针对该公司声称 IOActive 在 Deckmate 2 中没有发现任何漏洞的说法,研究人员允许《WIRED》查阅 IOActive 与 Light & Wonder 工程团队之间的电子邮件,在邮件中,该游戏公司感谢 IOActive 分享其发现,并指出该公司已经意识到其中一些问题,并已计划修复这些问题,而另一些问题则是该公司不知道的,将作为其未来产品路线图的一部分加以修复。
至于他们的黑客攻击方法能否在实际赌场中实施,IOActive 的研究人员承认他们还没有尝试过。但他们认为,只要操作隐蔽,还是可以做到的。在概念验证演示中,IOActive 研究人员使用了一台比成人手掌还小的 Raspberry Pi 微型计算机,将其插入 Deckmate 2 暴露在外的 USB 端口。但他们说,一个意志坚定的作弊者可以把他们的攻击植入一个比 USB 加密狗小得多的设备中。由于 Deckmate 通常放在牌桌下面,作弊者可以假装掉了东西,然后迅速插入设备。或者,他们可以把它安放在没有人玩的牌桌上的洗牌机上,这样,只要那张牌桌有人玩,它就能随时准备好。在运输途中、维护过程中或安装之前,而不是在现场,破坏洗牌机可能是最容易的。
研究人员说,在某些情况下,黑客甚至可以不将设备连接到洗牌机上,而是使用其蜂窝连接。一些从 Light & Wonder 公司按次租赁的 Deckmates 有一个蜂窝调制解调器,可以与制造商通信,让公司监控其使用情况。在这种情况下,作弊者可能会在附近安装一个伪造的蜂窝基站,诱骗洗牌机连接到该设备而不是真正的蜂窝塔,然后利用最初的远程接入点,在不接触洗牌机的情况下实施同样的伎俩。
要让任何 Deckmate 运行他们修改过的代码,IOActive 的黑客技术必须重启设备,让洗牌机离线约一分钟。但研究人员说,这种重启可以在牌局中间进行,因为庄家只是间歇性地使用洗牌机,而且洗牌机经常会闲置几分钟。洗牌机被重启的唯一线索是其顶部的绿色 LED 状态灯短暂熄灭。但 IOActive 的研究人员认为,如果他们花足够长的时间逆向工程洗碟机的代码,找到状态指示灯的功能,即使是这样,也有可能避免重启。
IOActive 的研究人员认为,Deckmate的漏洞指向了一个更大的问题,即美国各州监管扑克室设备的委员会对扑克室设备的要求标准已经过时。例如,Deckmate 符合内华达州博彩控制委员会的要求,即在重新启动时对设备代码进行基于哈希值的检查。但Tartaro说,事实上,该标准本应要求采取更严格的措施,比如 "代码设计"--代码必须用只有制造商才拥有的密钥进行加密 "签名",这样洗牌机就更难被黑客攻击了。"Tartaro说:"我们注意到一些游戏标准的术语和方法有点过时。"它们似乎并不符合现代安全标准"。
内华达州博彩控制委员会没有回应 WIRED 的置评请求。但国际博彩标准协会(IGSA)的副总裁马克-佩斯(Mark Pace)表示,IGSA 将密切关注 IOActive 的调查结果,并可能召集一个技术委员会进行研究。"佩斯说:"短期的解决办法可能只是消除入口点,""也可能有更复杂的软件解决方案。
佩斯还指出,IOActive 的工作表明,一些州级监管机构可能误判了洗牌机安全性的严重性,即使他们在传统游戏设备上执行更严格的标准,如代码签名。"佩斯说:"洗牌机可能被认为是关键部件,但它们可能不被认为其他电子桌上游戏同等重要。"佩斯说:"因此,一些监管机构可能会说,你必须在游戏设备中安装经过签名的软件,但你不一定要在洗牌机中安装经过签名的软件。
Tartaro指出,即使州一级的游戏监管机构更新了标准,或者 Light & Wonder 公司发布了 Deckmate 的修复程序--不管是用外壳封堵易受攻击的 USB 端口,还是打上软件补丁--毫无疑问,仍会有一些小型扑克室或私人密室游戏继续使用易受攻击的版本。下一次,如果有玩家因为太了解对手的手牌而爆出作弊丑闻,他希望调查人员也能仔细检查一下桌下的洗牌机。
你喜欢自动洗牌器还是发牌员洗牌的扑克室?