给合成生物学的一次预警:当心计算机黑客的“恶意DNA入侵”

本文主要是介绍给合成生物学的一次预警:当心计算机黑客的“恶意DNA入侵”,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

图片

华盛顿大学蛋白质设计研究所的科学家正在使用该软件来建模和创建新疫苗。图片出处:INSTITUTE FOR PROTEIN DESIG

本文作者:武文浩

每一年,商业 DNA 合成产业每年都会向订购者交付数十亿核苷酸(nucleotides),成交额高达数亿美元,而随着 DNA 合成在相关领域内变得越来越普遍,有没有什么重要的事情是被忽略的?

在 Nature Biotechnology 最近接收的一封 “致主编信” 中,一组以色列研究人员提出了一个听起来蛮疯狂的想法:计算机黑客是否会诱骗合成生物领域的科学家,去创造一段有害或潜在风险的恶意基因片段?

图片

仔细想想,这个担忧并非空虚来风。

在各个领域,网络信息安全都越来越被重视,但大多数学术用途的生物实验室,普遍缺乏有效的防火墙和网络信息安全基础架构来保证其所存信息的安全和完整。一旦有不法黑客借机恶意篡改 DNA 数据,并设法将负面影响扩散,后果很可能会不堪设想。比如将恶意程序安插在疫苗或药剂的生产过程中,经篡改的 DNA 合成订单信息或能在 “掩人耳目” 的情况下,被用于生产病原生物或有害蛋白质和毒素的核酸。

仅仅是对生产过程的很简单的攻击,都有可能会酿成灾难性后果。

危险 “陷阱”

假设 A 是某学术机构的生物研究员,并出于研究目的,向 B 所在的 DNA 合成公司下了一笔序列的订单,在这一过程中,DNA 序列的编辑软件和常用的 DNA 序列文件的保存格式都不能起到对文件加密的作用,而和当前大多数生物及医学领域的科研人员一样,A 希望能拥有更高的产量,对于会影响自身 “生产力” 的繁琐网络安全考量,他并不上心。

此时,出现了一名针对 A 的网络犯罪分子 C,由于当前 DNA 合成序列的生产过程对网络攻击抵抗能力并不强,C 轻易就能用恶意软件感染并控制 A 的计算机,将订单中的序列替换为恶意序列,并用网络攻击领域常见的恶意代码混淆,将恶意序列伪装成正常序列。如混淆成功,则匹配过程中所抽取的 200 个连续碱基对的子序列,在结果上都将显示正常,使得 B 在对序列进行比对时并不能看出异样,而这种混淆能在后来通过基于 CRISPR–Cas9(基因编辑工具)的序列删除和同源性修复被 “逆处理”,使 “正常” 序列变回 “恶意序列”。

B 在比对后认为序列 “正常” 并进行生产,交付时会附带测序报告,该报告会认为序列没有问题。

此时即使 A 出于谨慎考量寻求第三方测序服务,C 也能通过恶意软件篡改 A 提交给测序公司的数据。而如果 A 在错误地认定序列无误后,对这些合成的 DNA 用 CRISPR–Cas9 技术进行修改,就会触发 “恶意序列” 混淆过程的逆过程,使看似正常的序列变回 “恶意序列”。

整个黑客攻击场景假设的核心,便是生物学家用来从头开始 "打印"DNA 链、然后将它们组装在一起的软件,这个过程一般被称为 “DNA 合成”。

近年来,我们已经看到这种合成软件支撑了大量突破性的生物医学研究。例如,在开发新冠疫苗的浪潮之中,一些大型制药公司就在使用人造 DNA 链作为其实验性疫苗的组成部分之一。

图片

不法分子通过网络攻击将正常 DNA 序列调包为 “恶意序列” 的过程示意图,图源:Nature bio

此前,华盛顿大学的研究人员曾于 2017 年最早提出过关于 DNA 合成领域所面临的信息安全隐患,其过程便与上面所提及的例子类似。

当时人们还认为这种提法有些超前,可能仍需一段时间才会变成一个需要在本世纪解决的问题。

而在 2020 年下半年,以色列复杂网络分析实验室的研究人员通过实验,证实了这种威胁的 “可实现性”,进而写下这篇阐述当前 DNA 合成领域所面临的信息安全隐患的 “致编辑信”。

这支团队将这种围绕基因研究供应链的攻击类型称为 “端到端的网络生化攻击”。尽管目前他们还未监测到现实中已经发生的案例,但这类事件的发生恐怕只是迟早问题,尤其是随着越来越多的基因研究走向更高程度的数字化和信息化。

略显过时的规范

当然,此前已经有人考虑过这种情况。

就权威行业指南来看,2010 年版的美国健康与人类服务指南已经要求,DNA 合成产品的制造者需要在实际生产前,先将订单序列与 “问题序列(危险及有害序列)” 数据库中所存有的序列进行比对,在比对完成无重叠后才能开始生产,虽然美国大多数合成 DNA 的供应商确实也都是这么做的,但不幸的是,目前病原菌序列的数据库尚不健全,而 “2010 年版的美国健康与人类服务指南要求” 也可谓是 “早已过时”。

在国际上,类似的规范还有国际合成生物学协会(IASB)的 2009 版规范。要求供应商比对订单序列,并对可疑订单的信息及下单方信息进行记录,但同样,该规范的时效性并不 “可靠”。

距今最近的文件,属国际基因合成协会(IGSC)的 2017 版规范。

它要求合成系统扫描 200 个连续碱基对(bp)中的每个子序列,在比对过程中使用 “吻合率” 的比对方法,并在筛选出可疑序列后交由人工检验,但人工检验昂贵且耗时,而如果不对筛选框架进行全面的渗透测试,一些致病序列或能成为 “漏网之鱼” 逃过审查。

这次研究中,以色列的研究人员成功地使伪装后的 “恶意序列” 逃过审查并进入生产过程,并在序列即将进入生产过程时将实情告知了国际基因合成协会,进而以生物安全原因取消了这笔订单。

除了阐述了当前 DNA 合成领域确实存在网络安全信息隐患,这支团队还提出了一些可能的解决方法,比如合成系统可以实施网络安全协议,比如在一笔订单上添加电子签名,并对签名进行变化(如启发式签名,人工智能行为分析)以识别任何可能的后植入的恶意代码;将当前的 200 个连续碱基对的子序列的比对标准缩减至 “逆混淆过程” 所需的最短的同源性导向修复模板长度。在有新情况时重新审查已完成的订单;增强数据共享,以使被恶意安插在多个合成器上的恶意指令能被发现;以及按以上为指导加强立法和监管。

只有提高警觉,当虚拟世界和现实世界之间的界限变得愈发模糊,人类社会才不会对这些新形态的安全事件防不胜防。

*Refrence:
[1]https://www.nature.com/articles/s41587-020-00761-y.epdf?sharing_token=WrWwDN-FkOdBex9by7Avv9RgN0jAjWel9jnR3ZoTv0NL8O3FZQt7i2a40oTwYLJPFz184wQMd47k4I9vP_m_KxdkwgB8s3TjKL3CWbYnVQOvuMrx9ODaGZMU7jFPAVy78oCfVyrz0df15z716-fLDxeCHnkIcmF6s88n63V4muk%3D

[2]https://www.zdnet.com/article/this-new-cyberattack-can-dupe-scientists-into-creating-dangerous-viruses-toxins/

[3]https://www.wired.com/story/malware-dna-hack/*

关于数据实战派

数据实战派希望用真实数据和行业实战案例,帮助读者提升业务能力,共建有趣的大数据社区。

图片

这篇关于给合成生物学的一次预警:当心计算机黑客的“恶意DNA入侵”的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/483280

相关文章

Spring定时任务只执行一次的原因分析与解决方案

《Spring定时任务只执行一次的原因分析与解决方案》在使用Spring的@Scheduled定时任务时,你是否遇到过任务只执行一次,后续不再触发的情况?这种情况可能由多种原因导致,如未启用调度、线程... 目录1. 问题背景2. Spring定时任务的基本用法3. 为什么定时任务只执行一次?3.1 未启用

Java实战之自助进行多张图片合成拼接

《Java实战之自助进行多张图片合成拼接》在当今数字化时代,图像处理技术在各个领域都发挥着至关重要的作用,本文为大家详细介绍了如何使用Java实现多张图片合成拼接,需要的可以了解下... 目录前言一、图片合成需求描述二、图片合成设计与实现1、编程语言2、基础数据准备3、图片合成流程4、图片合成实现三、总结前

redis防止短信恶意调用的实现

《redis防止短信恶意调用的实现》本文主要介绍了在场景登录或注册接口中使用短信验证码时遇到的恶意调用问题,并通过使用Redis分布式锁来解决,具有一定的参考价值,感兴趣的可以了解一下... 目录1.场景2.排查3.解决方案3.1 Redis锁实现3.2 方法调用1.场景登录或注册接口中,使用短信验证码场

Python判断for循环最后一次的6种方法

《Python判断for循环最后一次的6种方法》在Python中,通常我们不会直接判断for循环是否正在执行最后一次迭代,因为Python的for循环是基于可迭代对象的,它不知道也不关心迭代的内部状态... 目录1.使用enuhttp://www.chinasem.cnmerate()和len()来判断for

电脑多久清理一次灰尘合? 合理清理电脑上灰尘的科普文

《电脑多久清理一次灰尘合?合理清理电脑上灰尘的科普文》聊起电脑清理灰尘这个话题,我可有不少话要说,你知道吗,电脑就像个勤劳的工人,每天不停地为我们服务,但时间一长,它也会“出汗”——也就是积累灰尘,... 灰尘的堆积几乎是所有电脑用户面临的问题。无论你的房间有多干净,或者你的电脑是否安装了灰尘过滤器,灰尘都

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

计算机毕业设计 大学志愿填报系统 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点赞 👍 收藏 ⭐评论 📝 🍅 文末获取源码联系 👇🏻 精彩专栏推荐订阅 👇🏻 不然下次找不到哟~Java毕业设计项目~热门选题推荐《1000套》 目录 1.技术选型 2.开发工具 3.功能

计算机视觉工程师所需的基本技能

一、编程技能 熟练掌握编程语言 Python:在计算机视觉领域广泛应用,有丰富的库如 OpenCV、TensorFlow、PyTorch 等,方便进行算法实现和模型开发。 C++:运行效率高,适用于对性能要求严格的计算机视觉应用。 数据结构与算法 掌握常见的数据结构(如数组、链表、栈、队列、树、图等)和算法(如排序、搜索、动态规划等),能够优化代码性能,提高算法效率。 二、数学基础

研究人员在RSA大会上演示利用恶意JPEG图片入侵企业内网

安全研究人员Marcus Murray在正在旧金山举行的RSA大会上公布了一种利用恶意JPEG图片入侵企业网络内部Windows服务器的新方法。  攻击流程及漏洞分析 最近,安全专家兼渗透测试员Marcus Murray发现了一种利用恶意JPEG图片来攻击Windows服务器的新方法,利用该方法还可以在目标网络中进行特权提升。几天前,在旧金山举行的RSA大会上,该Marcus现场展示了攻击流程,

恶意PNG:隐藏在图片中的“恶魔”

<img src="https://i-blog.csdnimg.cn/blog_migrate/bffb187dc3546c6c5c6b8aa18b34b962.jpeg" title="214201hhuuhubsuyuukbfy_meitu_1_meitu_2.jpg"/></strong></span><