What does "stack safety" mean? The phrase is associated with a variety of compiler, run-time, and hardware mechanisms for protecting stack memory, but these mechanisms typically lack precise specifications, relying instead on informal descriptions and examples of the bad behaviors that they prevent. We propose a generic, formal characterization of stack safety based on concepts from language-based security: a combination of an integrity property ("the private state in each caller's stack frame is held invariant by the callee"), and a confidentiality property ("the callee's behavior is insensitive to the caller's private state"), plus an optional control-flow property. We use these properties to validate the stack safety micro-policies proposed by Roessler and DeHon [2018]. Specifically, we check (with property-based random testing) that their "eager" micro-policy, which catches violations early, enforces a simple "stepwise" variant of our properties, and that (a repaired version of) their more performant "lazy" micro-policy enforces a slightly weaker and more extensional observational property. Meanwhile our testing successfully detects violations in several broken variants, including Roessler and DeHon's original lazy policy.


翻译:“ 堆叠安全” 是指什么? 短语与各种编译者、 运行时间和硬件机制相关, 以保护堆叠记忆。 但这些机制通常缺乏精确的规格, 但它们通常缺乏精确的控制流程属性。 我们使用这些属性来验证罗斯勒和德洪( 2018年) 提出的堆叠安全微观政策。 具体地说, 我们用基于财产的随机测试) 来检查他们的“ 戒备” 微观政策, 以早期抓住违规现象, 强制实施我们财产的简单“ 步调” 变式, 以及( 修正版) 其性能更强的“ 懒惰” 微观政策, 以及一个稍弱、 更扩展的观察属性。 同时, 我们用这些属性来验证罗斯勒和德洪( 2018年) 提出的堆堆安全微观政策。 具体地说, 我们用基于财产的随机测试, 检查他们的“ 戒备” 微观政策( ), 早期抓住违规现象, 强制实施一个简单的“ ” 变式的“ ” 变式,, 和 ( 变式) ( 变式) 更精化的) 微版) 其性“ 微的“ 微的“ 微” 微” 微的“ 微” 微” 执行的“ 执行者” 执行者” 执行者”, 执行的“, 实施较弱的“ 等的“ 。

0
下载
关闭预览

相关内容

《计算机信息》杂志发表高质量的论文,扩大了运筹学和计算的范围,寻求有关理论、方法、实验、系统和应用方面的原创研究论文、新颖的调查和教程论文,以及描述新的和有用的软件工具的论文。官网链接:https://pubsonline.informs.org/journal/ijoc
专知会员服务
15+阅读 · 2021年8月13日
Fariz Darari简明《博弈论Game Theory》介绍,35页ppt
专知会员服务
106+阅读 · 2020年5月15日
Python计算导论,560页pdf,Introduction to Computing Using Python
专知会员服务
69+阅读 · 2020年5月5日
因果图,Causal Graphs,52页ppt
专知会员服务
238+阅读 · 2020年4月19日
专知会员服务
61+阅读 · 2020年3月4日
强化学习最新教程,17页pdf
专知会员服务
167+阅读 · 2019年10月11日
AlienVault-OTX及OTX Endpoint Security使用及介绍
FreeBuf
4+阅读 · 2019年2月16日
逆强化学习-学习人先验的动机
CreateAMind
15+阅读 · 2019年1月18日
Unsupervised Learning via Meta-Learning
CreateAMind
41+阅读 · 2019年1月3日
spinningup.openai 强化学习资源完整
CreateAMind
6+阅读 · 2018年12月17日
保序最优传输:Order-preserving Optimal Transport
我爱读PAMI
6+阅读 · 2018年9月16日
Hierarchical Imitation - Reinforcement Learning
CreateAMind
19+阅读 · 2018年5月25日
(OpenCV/Keras)用手势控制的计算器
机器学习研究会
3+阅读 · 2018年3月4日
Adversarial Variational Bayes: Unifying VAE and GAN 代码
CreateAMind
7+阅读 · 2017年10月4日
强化学习族谱
CreateAMind
26+阅读 · 2017年8月2日
强化学习 cartpole_a3c
CreateAMind
9+阅读 · 2017年7月21日
Arxiv
0+阅读 · 2022年1月18日
Arxiv
0+阅读 · 2022年1月13日
Arxiv
0+阅读 · 2021年12月18日
Arxiv
0+阅读 · 2021年12月2日
Deflecting Adversarial Attacks
Arxiv
8+阅读 · 2020年2月18日
VIP会员
相关VIP内容
专知会员服务
15+阅读 · 2021年8月13日
Fariz Darari简明《博弈论Game Theory》介绍,35页ppt
专知会员服务
106+阅读 · 2020年5月15日
Python计算导论,560页pdf,Introduction to Computing Using Python
专知会员服务
69+阅读 · 2020年5月5日
因果图,Causal Graphs,52页ppt
专知会员服务
238+阅读 · 2020年4月19日
专知会员服务
61+阅读 · 2020年3月4日
强化学习最新教程,17页pdf
专知会员服务
167+阅读 · 2019年10月11日
相关资讯
AlienVault-OTX及OTX Endpoint Security使用及介绍
FreeBuf
4+阅读 · 2019年2月16日
逆强化学习-学习人先验的动机
CreateAMind
15+阅读 · 2019年1月18日
Unsupervised Learning via Meta-Learning
CreateAMind
41+阅读 · 2019年1月3日
spinningup.openai 强化学习资源完整
CreateAMind
6+阅读 · 2018年12月17日
保序最优传输:Order-preserving Optimal Transport
我爱读PAMI
6+阅读 · 2018年9月16日
Hierarchical Imitation - Reinforcement Learning
CreateAMind
19+阅读 · 2018年5月25日
(OpenCV/Keras)用手势控制的计算器
机器学习研究会
3+阅读 · 2018年3月4日
Adversarial Variational Bayes: Unifying VAE and GAN 代码
CreateAMind
7+阅读 · 2017年10月4日
强化学习族谱
CreateAMind
26+阅读 · 2017年8月2日
强化学习 cartpole_a3c
CreateAMind
9+阅读 · 2017年7月21日
相关论文
Top
微信扫码咨询专知VIP会员