华盛顿大学的研究人员已经表明,在DNA测序软件中改变一些计算机代码可能会使计算机易受到嵌入在DNA链中的恶意软件的攻击。
在相关分析中,该小组评估了通常用于DNA分析的13个软件程序的安全性,发现其他类型软件中存在的漏洞的数量是11倍。
华盛顿大学博士生Lee Organick在合成生物学背景下表示,希望他们的研究结果提高生物信息学研究人员对该软件安全性不佳的认识 [PDF]。
为了证明DNA链可以如何用来进行攻击,当测序机翻译DNA链中的四种核苷酸时,Organick及其合作者利用了DNA测序的关键步骤(表示为A,C,G, T)到二进制代码。例如,A被翻译为00,C被翻译为01。
华盛顿大学团队使用两位编码方案来合成含有176个碱基对(核苷酸及其互补的化学物质)的DNA,这些DNA将被用于解码和分析DNA链的软件翻译成恶意软件。对于他们的攻击,他们针对一种称为FASTQ的软件程序,通常用于读取和压缩DNA序列。
另外,他们添加了一个固定大小的缓冲区,能够处理FASTQ源代码的版本4.6的150个碱基对,它是用编程语言C ++编写的。在软件中,缓冲区提供临时内存,程序可以在其中执行功能。但固定长度的缓冲区可能溢出,覆盖计算机内存的其他部分。
当FASTQ程序尝试读取其中的176个碱基对时,它们的漏洞触发缓冲区溢出。代码的一部分还允许团队对排序机的计算机进行远程控制,后来导致其崩溃。
重要的是要注意,该组从开源代码中创建了一个FASTQ程序版本,并添加了固定大小的缓冲区,而不是针对现有的漏洞。这意味着它无法在今天实验室使用的FASTQ版本上成功启动。
该小组还小心地强调,在现实世界中没有已知的基于DNA的代码注入攻击,攻击者需要专门的知识和专长以及实验室特权才能执行。他们希望他们的示威作为关于一天可能发生的新型攻击的早期预警。
Organick的合作者Karl Koscher说:“像网络这样的传统入门点变得越来越强硬,未来可能就是通过非传统输入路径(如DNA)进入计算机的最简单方法。
这样的攻击理论上可以通过实验室通过称为样本出血的现象来传播。许多实验室不是为自己的测序仪付费,而是将DNA提交给第三方公司进行一系列测序。在测序期间,样本位通常与其他样品混合。这意味着攻击者可能通过第三方排序服务潜在地将恶意DNA代码泄漏到其他样本中。
虽然这种策略不能精确地启动,但它可能会超越实验室计算机或破坏操作。为了表明有可能以这种方式泄露代码,Organick的团队和其他七个样本一起对恶意链条进行排序。在其他样品之一中,所有176个碱基对的漏斗被发现完整30次。
保持这种利用不会造成破坏的一个方法是提高可能被这种攻击所针对的软件的安全性。然而,Koscher说这些程序通常由研究科学家在实验室中编写,这些科学家不一定精通最新的计算机安全实践。“当你想要完成你的科学工作时,你并没有想到将所有这些防御手段加入你的代码,”他说。
Organick和Koscher选择了13个开放源代码程序,并梳理了已知漏洞或不安全的代码。一些软件在大型昂贵的DNA测序机上运行,而其他程序则在实验室计算机上运行。
与为Web服务器,文件复制或数据包处理设计的软件控制组相比,他们发现代码中的不安全功能很高。他们在DNA测序软件中检测到的最常见的不安全功能是strcat,strcpy和sprintf。他们确定的另一个常见问题是存在固定大小的缓冲区。
总的来说,他们在DNA测序软件中每1,000行代码中发现2.005个不安全的功能,而对照组每1,000行代码则为0.185个不安全的功能。他们说,这些结果表明“生物信息学计划的一般安全卫生很低”。
Koscher and Organick将于8月17日在温哥华的USENIX安全研讨会上发表研究报告。
免责声明:本文由入驻邦投条平台的作者撰写,除邦投条官方账号外,文章观点仅代表作者本人,不代表邦投条立场,文章版权归原作者所有,请联系原作者申请授权。文章内容仅供参考,不构成投资建议。若有投资者据此操作,风险自担。如您发现内容存在版权问题,请提交相关链接至邮箱:banquan@rongebang.com,我们将及时予以处理。阅读更多有价值的内容,欢迎下载 邦投条APP