获得安全感是一种无望的追求吗?

M. Seltzer, M. Miller, David Mazières, Yuanyuan Zhou
{"title":"获得安全感是一种无望的追求吗?","authors":"M. Seltzer, M. Miller, David Mazières, Yuanyuan Zhou","doi":"10.1145/2830903.2830914","DOIUrl":null,"url":null,"abstract":"Despite all the work in OS to provide protection and improve security, cyber crime has grown into a major social issue. There seem to be no solutions to loss of data and theft of identity. Does the OS community bear a responsibility for this mess? Mark Miller: In the 1970s, there were two main access control models: the identity-centric model of access-control lists and the authorization-centric model of capabilities. For various reasons the world went down the identity-centric path, resulting in the situation we are now in. On the identity-centric path, why is security likely a hopeless quest? When we build systems, we compose software written by different people. These composed components may cooperate as we intend, or they may destructively interfere. We have gotten very good at avoiding accidental interference by using abstraction mechanisms and designing good abstraction boundaries. By composition, we have delivered astonishing functionality to the world. Today, when we secure systems, we assign authority to identities. When I run a program, it runs as me. The square root function in my math library can delete my files. Although it does not abuse this excess authority, if it has a flaw enabling an attacker to subvert it, then anything it may do, the attacker can do. It is this excess authority that invites most of the attacks we see in the world today. By contrast, when we secure systems with capabilities, we work with the grain of how we organize software for functionality. At every level of composition, from programming language to operating systems to distributed services, we design abstraction boundaries so that a component's interface only requires arguments that are somehow relevant to its task. If such argument passing were the only source of authority, we would have already taken a huge step towards least authority. If most programs only ran with the least authority they need to do their jobs, most abuses would be minor. I do not imagine a world with fewer exploitable bugs. I imagine a world in which much less is at risk to most bugs.","PeriodicalId":175724,"journal":{"name":"SOSP History Day 2015","volume":"109 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2015-10-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Is achieving security a hopeless quest?\",\"authors\":\"M. Seltzer, M. Miller, David Mazières, Yuanyuan Zhou\",\"doi\":\"10.1145/2830903.2830914\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Despite all the work in OS to provide protection and improve security, cyber crime has grown into a major social issue. There seem to be no solutions to loss of data and theft of identity. Does the OS community bear a responsibility for this mess? Mark Miller: In the 1970s, there were two main access control models: the identity-centric model of access-control lists and the authorization-centric model of capabilities. For various reasons the world went down the identity-centric path, resulting in the situation we are now in. On the identity-centric path, why is security likely a hopeless quest? When we build systems, we compose software written by different people. These composed components may cooperate as we intend, or they may destructively interfere. We have gotten very good at avoiding accidental interference by using abstraction mechanisms and designing good abstraction boundaries. By composition, we have delivered astonishing functionality to the world. Today, when we secure systems, we assign authority to identities. When I run a program, it runs as me. The square root function in my math library can delete my files. Although it does not abuse this excess authority, if it has a flaw enabling an attacker to subvert it, then anything it may do, the attacker can do. It is this excess authority that invites most of the attacks we see in the world today. By contrast, when we secure systems with capabilities, we work with the grain of how we organize software for functionality. At every level of composition, from programming language to operating systems to distributed services, we design abstraction boundaries so that a component's interface only requires arguments that are somehow relevant to its task. If such argument passing were the only source of authority, we would have already taken a huge step towards least authority. If most programs only ran with the least authority they need to do their jobs, most abuses would be minor. I do not imagine a world with fewer exploitable bugs. I imagine a world in which much less is at risk to most bugs.\",\"PeriodicalId\":175724,\"journal\":{\"name\":\"SOSP History Day 2015\",\"volume\":\"109 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2015-10-04\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"SOSP History Day 2015\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1145/2830903.2830914\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"SOSP History Day 2015","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2830903.2830914","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

尽管操作系统在提供保护和提高安全性方面做了很多工作,但网络犯罪已经成为一个主要的社会问题。似乎没有解决数据丢失和身份被盗的办法。操作系统社区对这种混乱负有责任吗?Mark Miller:在20世纪70年代,有两种主要的访问控制模型:以身份为中心的访问控制列表模型和以授权为中心的功能模型。由于种种原因,世界走上了以身份为中心的道路,导致了我们现在的处境。在以身份为中心的道路上,为什么安全似乎是一个无望的追求?当我们构建系统时,我们编写的软件是由不同的人编写的。这些组成的组件可以按照我们的意愿进行合作,也可以破坏性地相互干扰。通过使用抽象机制和设计良好的抽象边界,我们已经非常擅长避免意外干扰。通过组合,我们为世界提供了惊人的功能。今天,当我们保护系统时,我们将权限分配给身份。当我运行一个程序时,它以我的身份运行。数学库中的平方根函数可以删除我的文件。尽管它没有滥用这种过度的权限,但如果它有一个允许攻击者破坏它的缺陷,那么攻击者可以做任何它可能做的事情。正是这种过度的权威招致了我们今天在世界上看到的大多数攻击。相比之下,当我们用功能保护系统时,我们是按照如何组织软件的功能来工作的。在组合的每一层,从编程语言到操作系统再到分布式服务,我们都设计了抽象边界,以便组件的接口只需要与其任务相关的参数。如果这样的争论是权威的唯一来源,我们就已经朝着最不权威的方向迈出了一大步。如果大多数程序只以完成其工作所需的最少权限运行,那么大多数滥用将是次要的。我无法想象一个没有更少可利用漏洞的世界。我想象的世界里,大多数虫子面临的风险要小得多。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Is achieving security a hopeless quest?
Despite all the work in OS to provide protection and improve security, cyber crime has grown into a major social issue. There seem to be no solutions to loss of data and theft of identity. Does the OS community bear a responsibility for this mess? Mark Miller: In the 1970s, there were two main access control models: the identity-centric model of access-control lists and the authorization-centric model of capabilities. For various reasons the world went down the identity-centric path, resulting in the situation we are now in. On the identity-centric path, why is security likely a hopeless quest? When we build systems, we compose software written by different people. These composed components may cooperate as we intend, or they may destructively interfere. We have gotten very good at avoiding accidental interference by using abstraction mechanisms and designing good abstraction boundaries. By composition, we have delivered astonishing functionality to the world. Today, when we secure systems, we assign authority to identities. When I run a program, it runs as me. The square root function in my math library can delete my files. Although it does not abuse this excess authority, if it has a flaw enabling an attacker to subvert it, then anything it may do, the attacker can do. It is this excess authority that invites most of the attacks we see in the world today. By contrast, when we secure systems with capabilities, we work with the grain of how we organize software for functionality. At every level of composition, from programming language to operating systems to distributed services, we design abstraction boundaries so that a component's interface only requires arguments that are somehow relevant to its task. If such argument passing were the only source of authority, we would have already taken a huge step towards least authority. If most programs only ran with the least authority they need to do their jobs, most abuses would be minor. I do not imagine a world with fewer exploitable bugs. I imagine a world in which much less is at risk to most bugs.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Perspectives on system languages and abstraction The network and the OS Virtualization The founding of the SOSP conferences Reminiscences on SOSP history day
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1