过去几个月来,DeFi生态经历了巨大的动荡,数次攻击之下,许多未被利用过的缺陷也被报道出来。
虽然代码中无可避免会有bug,但还是有很多方法能降低缺陷发生的频率,以及降低缺陷带来的负面影响。
作为一个审计员,我们想要帮助DeFi用户问一些比较尖锐的问题;问这些问题的目的,一方面是让开发人员认真去考虑系统安全性的优先级,另一方面,让用户能分辨出回答得好的协议,然后把钱投入这些协议。
以下问题能帮助用户了解DeFi开发团队对于安全性的立场,答案不一定有对错之分,而且也不是每个团队都有资源全盘顾及所有方面。但不论如何,用户有权利知道这些信息,来决定自己愿意承受的风险。
我们希望通过以下提问,促使后续开展更多正面的讨论。
1.管理员权限
大部分的主流DeFi协议都存在一些中心化的机制——允许特定的“管理员”地址以强硬的手段干预协议的运行。
观点:由于中心化交易面临更多监管,人们对去中心化交易所的需求上升:加密专栏作者Anupam Varshney表示,随着中心化交易所越来越多地收到监管,人们对去中心化交易所的需求正在上升。监管对于中心化交易所来说是把双刃剑,一方面原先对交易所监管环境不明朗持谨慎态度的新用户现在更愿意使用中心化交易所,另一方面,由于监管收紧,一些用户会离开中心化交易所。总部位于新加坡的全球加密货币交易所Phemex的首席执行官Jack Tao表示对中心化交易所的加强监管将推高新CEX平台的准入门槛。他还提到,虽然加强监管可以减少交易所上市的首次代币发行 (ICO) 数量,但可以提高该领域项目的质量。如果执行得当,监管可能会对市场产生比预期更积极的影响。他表示“中心化平台仍然可以提供很多服务。DEX 只是一种没有‘服务’的产品,我认为他们不会在短期内接管中心化交易所。” 目前的DeFi和DEX生态还处于起步阶段,行业只能通过反复试验才能构建未来的金融基础设施。(Cointelegraph)[2021/8/8 1:41:19]
这样做虽然在安全上有好处,但这意味着你必须相信这些“管理员”不会滥用他们的特权;而且但凡这些管理员遭到黑客攻击,他们的私钥泄露所带来的后果会更加严重。
观点:DeFi繁荣正推动以太坊衍生品市场发展:AMBCrypto发文称,DeFi的繁荣目前正在推动以太坊衍生品市场发展。DeFi领域爆炸性增长直接影响了以太坊的交易成本。高昂的交易费用可能与以太坊的价格和需求背道而驰,但是因为对DeFi的需求增加使交易员争夺更多以太坊Gas来支付网络费用,从长远来看推动了对以太坊的需求。在这样的情况下,可以说DeFi的发展正在推动以太坊的发展。而随着DeFi日益增长的市场主导地位和未平仓合约总量的增加,也可以得出一个结论,即以太坊衍生品交易商至少在当前未平仓合约到期之前对以太坊价格持积极态度。[2020/8/22]
管理员账户可以是以下几种形式:单一地址、多重签名钱包,或是由DAO管理的投票过程。那么,
管理员能采取哪些措施?
暂停整个系统?
修改账户余额?
观点:加密公司或希望加强合规程度以求长远发展:身份验证提供商Trulioo副总裁Anatoly Kvitnitsky表示,验证文件、遵守反(AML)和了解客户(KYC)合规程度,可能是很多加密公司的区别所在。由于加密技术跨越了很多边界,而想在该领域做出成绩的话,一些加密公司可能会希望能采取措施符合监管要求。与此同时,如果加密公司真的想与监管机构合作,将看到更主流的合规方式。(Cointelegraph)[2020/7/20]
设置代币/用户的白名单/黑名单?
升级某个子系统?
升级整个系统?
其他权限?
如果采取上述行为,是否有延迟执行机制?
如果有延迟时间,那是多长?
多少人有管理员权限?
采取上述行为前,需要经过多少管理员同意?
动态 | 欧洲央行执委表示同意英国央行行长观点,即“私人稳定币可能会挑战美元”:欧洲央行政策制定者Benoit Coeure表示,私人稳定币可能会挑战美元的全球主导地位,支持英国央行行长马克?卡尼(Mark Carney)有关建立国际央行数字货币的呼吁。Coeure周二在卢森堡举行的国际货币体系未来会议上表示,全球化浪潮和在线服务的快速发展提振了消费者对跨境、更快的支付服务的需求。Facebook的Libra等公司正在努力迎合这一需求,但代价可能是安全性下降,而这正是央行要发挥作用的地方。同时担任七国集团(G7)稳定货币工作组主席的Coeure表示:“在特定情况下,如果允许发展,私人数字货币形式可能比其他主权国家发行的货币更容易、更快地挑战美元的霸主地位。”“下一个自然的步骤将是,全球央行联合起来,共同研究基于共同技术标准的央行数字货币的可行性。(彭博)[2019/9/18]
有哪些权限是由链上治理程序来掌控的吗?
我该去哪里了解提议更新协议的提案?
以上某些问题的回答已经可以通过?
DefiWatch?跟踪了解。
2.外部依赖
因为是公开的网络,以太坊上充斥着不怀好意的攻击者,因此开发者不能假设本系统外的合约一定会采取什么样的行为。但在许多DeFi应用中又不得不作出这样的假设,因为服务本身就是在已有的一些合约上建构出来的。
这些问题能帮助用户了解该项目在外部依赖上存在的风险。
你的系统依赖什么预言机?
你的系统依赖什么交易所?
你用什么第三方智能合约来建立系统?
你的系统支持哪些代币,你对这些代币的行为模式有怎样的预期?
3.可靠的的披露系统和奖励计划
对于才华横溢的黑客来说,攻击DeFi协议对他们有着强大的金钱诱惑。制定奖励计划能激励大家发现并揭露漏洞,而非钻漏洞。对于白帽黑客来说,通过激励系统揭露代码漏洞也是提高自身声誉的好方法——既有好处又不违法。
任何公司要运行DeFi协议,或是涉及在线托管金钱的业务,都应该设有奖励系统。你可以就他们的奖励计划及披露流程提出以下问题:
你们的合约代码能够被所有人看到吗?
从你们的网站和git代码库,能够很容易找到安全的联系方式吗?
你们的合约有没有设置奖励计划?
哪些合约在奖励计划内?
奖励计划具体金额是?
你们是否支付过奖励计划的奖金?
对于bug报告,你们是否曾拒绝支付过?
从你们的网站和git代码库,能够很容易地找到奖励计划的详细信息吗?
理想情况下,这些信息应该放在“website.com/security”页面下,而且能搭配Github的SECURITY.md功能使用。
4.应急预案
当面对某些安全突发状况的时候,新消息如潮水般涌来,用户持续在Twitter、Telegram、Discord上提出棘手的问题......,这时候开发者很难头脑清楚地应对突发状况。
所以如果有应急预案的话,就能证明项目正朝着安全方向发展。要求项目公开他们完整的计划可能不太现实,但我们还是能提出以下基础的问题去侧面了解:
你们是否有处理突发安全事件的计划提纲?
你们的应急预案适用于哪些紧急情况?
如果你们的系统是可升级的,这些升级步骤是否记录在案?
如果你们发现某个系统漏洞可能让资金面临风险,你们是否能通过应急预案先发制人,保护资金安全?
5.审计与安全发展
审计并非万灵丹,而且审计的内容总多多少少有点区别,但对于部署任何的DeFi合约之前,进行审计是至关重要的一步。
下面的问题不一定有“正确答案”,但学识渊博的社区群众们,应该能从项目的回答中看出开发团队对于安全性的立场。
你们最近一次审计是什么时候?
这次审计投入了多少精力?
哪个机构做的审计?
审计报告公开吗?
你们系统中有任何部分是没有被涵盖在审计的范围内吗?
最近一次审计之后,你们有对合约进行更新吗?如果有,更新了什么?
你们有和哪个安全团队进行长期合作吗?
在合并代码之前,开发者会彼此做codereview吗?
你们的合约代码中,做过单元测试的比重是多少?
审计过程中,你们用过其他的安全分析工具吗?
原文链接:?https://diligence.consensys.net/blog/2020/03/questions-defi-users-should-be-asking-defi-developers/作者:?JohnMardlin翻译&校对:?IANLIU&阿剑
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。