2、实现每日十亿次SMT查询:AWS的技术探索与实践

实现每日十亿次SMT查询:AWS的技术探索与实践

1. 背景与Zelkova工具介绍

亚马逊网络服务(AWS)在开发和应用形式化工具与技术方面投入巨大,以证明关键内部系统的正确性,并为用户提供其系统正确性的保证。在AWS身份与访问管理(IAM)背景下,IAM用于控制对AWS中应用程序、数据和工作负载等资源的访问。资源所有者通过编写策略来配置访问权限,这些策略用IAM策略语言表达。

为帮助AWS用户保护其资源,开发了Zelkova这一策略分析工具。它将策略和属性转换为可满足性模理论(SMT)公式,并使用SMT求解器来证明各种安全属性。SMT编码使用了字符串、正则表达式、位向量和整数比较等理论,由于字符串约束中使用了通配符,决策问题是PSPACE完全的。Zelkova采用组合求解器,后端调用多个求解器,使用最先返回结果的求解器的结果。集成Zelkova的AWS服务包括Amazon S3、AWS Config等,它推动了预防性控制功能,如Amazon S3阻止公共访问。

然而,Zelkova是由形式化方法专家开发的,使用它需要一定的专业知识,不能期望所有AWS用户都具备这些能力。因此,为使Zelkova能被所有AWS用户使用,提出了三个关键解决方案。

2. 消除编写规范

传统的Zelkova验证方法需要输入策略和规范,并输出是或否的答案。开发者和云管理员编写策略,安全工程师编写可接受行为的规范。但这种方法难以扩展到所有AWS用户,瓶颈在于人工编写规范的工作量大,且用户无法确定规范的正确性。

为解决这个问题,改变了方法,让自动化推理引擎负责生成规范。现在Zelkova接收策略作为输入,返回详细的发现结果,安全工程师审查这些发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值