acm-header
登录

ACM通信

BLOG@CACM

病毒类比与验证


罗宾·k·希尔,怀俄明大学

当前的大流行突出了病毒的类比,正是这种类比导致了“病毒”一词的使用,从生物学角度来描述攻击计算机系统的恶意程序。这种情况促使我们去研究它,作为比较自然和人工制品的另一种方式,并作为提出更抽象问题的借口。我们也很感动地指出,我们对生物形式和计算形式的掌握都是肤浅的,并邀请其他更好的观察跟进。参见Apvrille和Guillaume [Apvrille更深入和有趣的跨界猜测,而Weis [Weis,以获取更有趣的比较,以及杜文亮的网站,以获取详细的病毒示例[,这构成了编码员的戏剧性阅读。

病毒通常不被认为是一种活的有机体,而有时被描述为(类似于)软件。当第一批自我复制的计算机程序开始流行时,它们只是实验或恶作剧。Wiki:爬虫];对大多数人来说,重点仅仅是繁殖。早期的计算机蠕虫是有益的,但逃脱了控制[].我们将计算机病毒与计算机蠕虫区别开来,是因为病毒的复制范围非常广泛,病毒产生的是广播式的拷贝,而不是一连串的拷贝。这两种病毒的明显相似之处包括:病毒很小,入侵宿主的体积和复杂性要大得多,没有明显的信号;病毒会破坏宿主的某些进程。既不是电脑也不是生物病毒一定是否损坏。在生物学中,自我复制是一种目的,而不是手段,这使得损害成为副作用。在现代计算机病毒中,最终的行动很可能是一个有效载荷的恶意代码。在这两种环境中,“病毒”一词都意味着一种带有危险包袱的侵入性和破坏性力量。

为了系统地探讨类比的一些要点,请考虑访问:如何完成病毒输入?计算机病毒通过探测已知的漏洞来寻找突破口。如果找到一个,就会注入恶意代码。这很像有机版本。考虑获得病毒会从中得到什么?如何得到?病毒得到更多的病毒,繁殖的手段是同样的自我复制。注意与Unix系统的对应关系fork ()调用,该调用通过复制当前进程生成一个新进程。历史告诉我们,发生这种事是因为很容易:“……假设它存在于Unix中似乎是合理的,主要是因为它很容易可以在不做太多改变的情况下实现”[Ritchie]。这两种类型的启发式:要开始一个新的工作结构,只需复制手头的工作结构。

考虑病理损害的方式。病毒通过消耗病毒消耗的细胞资源来破坏宿主;打破细胞壁;或者产生有毒的副产品。每一个都有类比吗?Sure-Denial服务;突破缓冲边界或反壳;干扰操作系统,降低其对系统资源(如CPU周期、文件和端口)的保护[SciAm]、[].我们可以考虑国防即宿主的预防或治疗机制,也就是说,当宿主不知何故注意到有问题时所采取的行动。这些令人着迷的机制超出了我们的专业范围,但疫苗接种显然是其中之一,它导致了诸如突变等对抗措施。有机病毒和计算机病毒都能迅速变异。但有机物的突变是一种怪癖,一种随机的无引导的变异。计算机程序的变异是人为的。使用蛮力进行修复和防御是人类的禁区。我们无法重启内存,更不用说重新安装一个干净的操作系统了。

我们已经讲过,病毒就像战争游戏中的军队,在占领细胞以复制为目的时,发起并作出反应。但是等等,有一个目的?我们能肯定的是,病毒将遗传物质插入细胞,然后细胞产生更多的病毒。有挣扎吗?是有意地从细胞手中夺取了控制权,还是实际上没有任何代理参与其中,完全没有意图?细胞科学中的攻击性词汇(外行版本)反映了我们人类的现象学,投射到我们所看到的东西上。它可能是公平的,也可能是扭曲的。这可能是大错特错;这些细胞可能“充盈”了——这是一个奇怪的想法。但是为什么说细胞被“击败”就不那么奇怪了呢?为什么要使用攻击的语言,而好客的语言(或冷漠的语言,甚至更好)可能同样可以模拟这个过程? Above, we said that in biology, damage is a "side effect," which assumes some kind of intention. We now question that assumption. Other natural forces bring about change; the wind threatens, intrudes, and damages. But to speak of its intention is only poetic.

在计算机领域,类似地,计算机病毒的执行是为了创建更多的代码副本,然后传播它们……这个类比的陈述,通过短语“为了”,引导我们把意志归因于计算机病毒,不准确吗?我们声称,说有机病毒有意志是有误导性的。然而,由程序员注入的计算机病毒表现出敌意。但是等待。这意味着计算机病毒更像有机病毒而不是有机病毒本身!

当然,我们在这里看到的关于意志的问题,在计算哲学中也涉及到更大的问题,在人工智能和认知科学中与意图和意识相关的问题。计算机病毒的一种新说法可能有助于这项研究,它甚至可能为有机病毒的一种新说法提供线索。我之前的一篇关于明确责任的文章[Hill2018需要这样的语句。程序不做决定。因为看起来他们是这么做的,我们需要一种不误导人的方式来谈论他们实际上做了什么。病毒不会以任何有意义的方式“意图”;他们只是表现得好像他们是有意的。或者,它们甚至没有以任何特定的方式“行为”,它们只是表现出有意的生物会表现出的行为,如果他们以病毒达到的最终结果为目标的话。我们如此依赖意图和意志的词汇,以至于我们没有其他不尴尬的选择。

自然现象和计算现象之间的类比,紧密或拉伸,形成了这个空间的几件作品的主题[Hill2016HIll2017aHill2017b].就在我们眼前发生的这个案例中,我们看到生物病毒和计算机病毒之间的相似性既有优点也有缺点,并可能提供更多的可能性。正相似点可能不是由于因果关系,而是由于某些共同原因的影响,比如使用输入和输出的流程的一般脆弱性。我们甚至可以提出,与生物微生物相对应的是程序员-代码对,一个位于程序和程序员之间的自包含系统,享有某种集体的半生命代理。我们可以求助于哲学来问——代理必须是个体的和人性的吗?这是有争议的(Schlosser超出了本次调查的范围。

但是等待。真正有趣的问题是,将计算机病毒与有机病毒相匹配这一强有力的成功类比意味着什么。这是否意味着一些常见的概念——例如,输入的一般脆弱性(如上所述),或通过已定义接口的入口,或外部主体的资源的颠覆——在某种程度上是通用的?如果是这样,除了愉快的自我肯定之外,我们还获得了什么?但是等等!验证能给我们带来什么呢?当我们的人工制品看起来像大自然时,计算机科学家们是否应该庆幸自己呢?这有什么了不起的?或这有什么了不起的吗?如果是这样,技巧有什么不好的呢?

参考文献

[陈晓明]王晓明。2012。人类病毒学的攻击日。附录包含一个词汇类比表。

[陈]托马斯·陈,罗伯特·让-马克。2004.病毒和蠕虫的进化。在Chen, W. (Ed.)。(2004)。计算机安全统计方法“,”博卡拉顿:CRC出版社。

(Du) Du, Wenliang。未标明日期。计算机和互联网安全:视频,幻灯片,问题和实验室。《计算机与互联网安全:动手方法》第二版的网站,2019年。

[Hill2016] Robin K. 2016。小说作为模型理论。Blog@CACM。2016年12月30日。

[Hill2017a] Robin K. 2017。操作系统是可能的世界。Blog@CACM。2017年4月29日。

[Hill2017b] Robin K. 2017。人类行为与计算机应用。Blog@CACM。2017年11月28日。

[Hill2018]罗宾·希尔,2018。明确决策责任。Blog@CACM。2018年5月21日。

[里奇]丹尼斯·里奇,1980。Unix分时系统的演变。语言设计与程序设计方法论研讨会论文集。施普林格。

[Schlosser] Markus Schlosser, 2019。机构。斯坦福哲学百科,2019年冬季版。爱德华·n·扎尔塔,编辑。

[SciAm]不同的专家。1997.计算机“病毒”这个比喻是何时、如何出现的?《科学美国人》,在线。文章列出了给定问题的答案,通常是Fred Cohen,南加州大学Adleman的学生。1997年9月2日。

[魏斯]魏斯,或2020年。如果是软件bug/病毒呢?网络vs. COVID-19:一个思想实验。Rookout。

[Wiki:爬虫]维基贡献者。(2020年5月28日)。爬虫(程序)。在维基百科,自由百科全书。2020年5月29日23:45检索到。

罗宾·k·希尔他是怀俄明大学计算机科学系的讲师,也是哲学与宗教研究系和怀俄明人文研究所的附属机构。她自1978年以来一直是ACM的成员。


没有发现记录

Baidu
map