Web3 名目宁静实习哀求

 空投币   2023-04-07  来源:互联网  0 条评论
优质活动 币圈快讯 平台公告 行情分析
最新羊毛 最新空投 链圈挖矿 活动线报
新币上市 币圈空投 国外项目 币链屋
提醒:本站内容均转自网络,仅用于开发者下载测试,请明辨风险,若涉资金安全及隐私,请谨慎!谨慎!再谨慎!一切风险自担,涉及资金交易及个人隐私务必小心并远离,切记千万别投资,勿上当受骗。《本站免责申明》

绪言

慢雾安全团队开源 --Web3 项目安全尝试要求,供给了精细的尝试要求以及提议来帮忙 Web3 项目研发团队判别以及提防这些潜伏的安全告急。Web3 项目方也许参照本文供给的安全尝试要求,掌握相映的安全能力,进步 Web3 项想法安全性,以便更好地损坏项目以及用户的物业安全。

Web3 项目安全尝试要求蕴含以下的实质:

0x00 背景总结

现今针对于 Web3 项想法打击技巧层出没有穷,且项目之间的交互也特别繁复,正在各个项目之间的交互时常会引入新的安全课题,而大全体 Web3 项目研发团队集体缺乏的一线的安全攻防体味,并且正在施行 Web3 项目研发的时分中心存眷的是项目大伙的商业论证和生意功能的完结,而没有更多的精神告竣安部分系的修建,所以正在缺失安部分系的状况下很难保险 Web3 项目正在整体生命周期的安全性。

常常项目方团队为了确保 Web3 项想法安全会邀请优厚的区块链安全团队对于其代码施行安全审计,正在施行安全审计的时分,才华够更好地完结各类安全尝试要求,不过区块链安全团队的审计仅仅是近期的启发,并没有能让项目方团队建立属于自身的安部分系。

所以慢雾安全团队开源了 Web3 项目安全尝试要求来延续性帮忙区块链生态中的项目方团队掌握相映的 Web3 项想法安全能力,指望项目方团队恐怕基于 Web3 项目安全尝试要求建立以及完满属于自身的安部分系,正在审计之后也能具备特定的安万能力。

0x01 开垦打算

须要分解文档要求

1.确保蕴含项想法和婉形容

2.确保蕴含项目束缚的课题

3.确保蕴含安全/隐私告急评估

开垦妄图文档要求

1.确保蕴含项想法架构妄图图

2.确保蕴含代码中函数的功能形容

3.确保蕴含代码中合约之间的有关联系形容

4. 确保安全/隐私的要求被正确切施

生意过程文档要求

1.确保蕴含项目中每个生意过程的形容

2.确保蕴含和婉的生意过程图

3.确保蕴含和婉的资金链路图

0x02 开垦历程

智能合约安全编码要求

1. 确保蕴含尽大概基于 OpenZeppelin 等有名 library 施行开垦

2. 确保蕴含利用 SafeMath 或 0.8.x 的编译器来避免绝大全体溢出课题

3. 确保遵守函数定名榜样,参照:solidity style guide

(https://docs.soliditylang.org/en/v0.8.14/style-guide.html)

4. 确保函数以及变量可见性选择显性证实

5. 确保函数前往值被显性赋值

6. 确保函数功能以及参数解释齐备

7. 确保外部挪用正确反省前往值,蕴含:transfer,transferFrom,send,call,delegatecall 等

8. 确保 interface 的参数类别前往值等完结是正确的

9. 确保树立合约枢纽参数时有施行鉴权并利用事宜施行纪录

10. 确保可进级模子的新的完结合约的数据组织与旧的完结合约的数据组织是兼容的

11. 确保代码中触及算数运算的逻辑充分思虑到精度课题,避免先除后乘导致大概的精度丢掉的课题

12. 确保 call 等 low level 挪用的目的地方以及函数是预期内的

13. 利用 call 等 low level 挪用的时分要根据生意须要限制 Gas

14. 编码榜样施行制约,遵守:先判别,后写入变量,再施行外部挪用 (Checks-Effects-Interactions)

15. 确保生意上交互的外部合约是互相兼容的,如:通缩/通胀型代币, ERC-777, ERC-677, ERC-721 等可重入的代币,参照:重入马脚案例

(https://medium.com/amber-group/preventing-re-entrancy-attacks-lessons-from-history-c2d96480fac3)

16. 确保外部挪用充分思虑了重入的告急

17. 避免利用大度轮回对于合约的 storage 变量施行赋值/读取

18. 尽大概避免权力适度分散的课题,稀奇是改动合约枢纽参数全体的权力,要做权力结合,并尽大概选择处置,timelock 合约或多签合约施行办理

19. 合约的承继联系要维持线性承继,并确保承继的合约生意上确切须要

20. 避免利用链上的区块数据算作随机数的种子起因

21. 确保随机数的猎取以及利用充分思虑回滚打击的大概

22. 尽管利用 Chainlink 的 VRF 来猎取切实的随机数,参照:Chainlink VRF

(https://docs.chain.link/vrf/v2/introduction)

23. 避免利用第三方合约的 token 数目直接算计 LP Token 代价,参照:若何正确猎取 LP 的价

(https://blog.alpha币安官网入口venturedao.io/fair-lp-token-pricing/)

24. 经过第三方合约猎取代价的时分避免简单的代价起因,提议选择至多 3 个代价起因

25. 尽大概正在枢纽的生意过程中利用事宜纪录施行的状态用于对于项目运行时的数据分解

26. 预留全部与当中生意重要憩息的开关,便于产生黑天鹅事宜的时分适时止损

测试用例代码要求

1.确保蕴含生意过程/函数功能可用性测试

2. 确保蕴含单元测试揭开率 95% 以上,当中代码揭开率要到达 100%

根底安全配置要求

1.确保官方邮箱利用有名办事商,如 Gmail

2. 确保官方邮箱账号逼迫开放 MFA 功能

3. 确保利用有名域名办事商,如 GoDaddy

4. 确保域名办事商平台的账号开放 MFA 安全配置

5. 确保利用优厚的 CDN 办事供给商,如 Akamai、Cloudflare

6. 确保 DNS 配置开放了 DNSSec,正在域名办事办理平台上为办理账号树立强口令并开放 MFA 认证

7. 确保全员的手机以及电脑设施利用杀毒软件,如卡巴斯基、AVG 等

Web 前端安全配置要求

1.确保全站的 HTTP 通讯选择 HTTPS

2. 确保配置了 HSTS,以避让中间人打击,如:DNS hijacking,BGP hijacking,参照:HSTS 配置先容

(https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Strict-Transport-Security)

3. 确保配置了 X-FRAME-OPTIONS,以避让 Clickjacking 打击,参照:X-FRAME-OPTIONS 配置先容

(https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Frame-Options)

4. 确保配置了 X-Content-Type-Options,以对立欣赏器 sniff ⾏为导致的⻛险,参照:X-Content-Type-Options 配置先容

(https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/X-Content-Type-Options)

5. 确保配置了 CSP 政策,以避让 XSS 打击,参照:CSP 实质安全政策先容

(https://developer.mozilla.org/en-US/docs/币安官网登录Web/HTTP/CSP)

6. 确保与权力以及用户证据相干的 Cookie 配置了 HttpOnly, Secure, Expires, SameSite 记号,参照:Cookie 配置先容

(https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies)

7. 确保分歧生意的子域矜重划脱节,避免子域的 XSS 课题互相作用

8. 确保引用的第三方资源利用了 integrity 属性施行限制,避免第三方被黑导致项目方的站点受到作用,参照:SRI 配置先容

(https://developer.mozilla.org/zh-CN/docs/Web/Security/Subresource_Integrity)

9. 确保正确配置 CORS,仅禁止指定 origin 域,协媾和端口拜候项想法资源,参照:CORS 配置先容

(https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CORS)

10. 确保生意中完结的 addEventListener/postMessage 有反省动态的 origin 以及 target,参照:postMessage 安全先容

(https://developer.mozilla.org/zh-CN/docs/Web/API/Window/postMessage)

后端境况安全配置要求

1. 确保选用优厚的云办事器供给商,如:AWS、Google 云等

2. 确保项目利用到的云平台办理账号利用强口令并开放 MFA 认证

3. 确保项目代码摆设到办事器前对于办事器施行安全加固,如:装置 HIDS,选择 SSH Key 施行登录,树立 SSH 登录 alert,树立 SSH 登录 google-auth 等

4. 确保利用专科软件监控办事、办事器可用性,如 APM、Zabbix

5. 确保利用专科的机构按期测试项目安全性,如 SlowMist、Trail of Bits 等

0x03 揭晓历程

须要有齐备的安全上线揭晓过程,也许参照以下的实质施行细化:

代码停止要求

正在瞻望的上线时光倒推 2 天,即上线 2 天前必需停止代码没有再做一切代码改正

单元测试要求

1.确保单元测试揭开率 95% 以上,当中代码揭开率 100%

2. 确保输出单元测试的揭开率讲述

返回测试要求

正在上线 1 天前施行单元测试并施行返回测试

测试讲述要求

上线前 0.5 天由开垦及测试独特告竣测试讲述,假设没有经过(含单元测试、返回测试),则推延上线时光,开垦告竣改动后从新投入代码停止阶段(即推延至多 2 天)

安全审计要求

1.安全审计人员正在代码停止掉队入大伙安全返回,如发明任一马脚或安全隐患(重要、高危、中危),则推延上线时光,开垦告竣改动后从新投入代码停止(即推延至多 2 天)

2. 安全审计须要至多三个团队施行独立的审计,也许选择 1 个内部团队 +2 个外部团队

0x04 运行时期

运行时安全监控

尽大概的经过枢纽生意过程中触发的事宜来发明项目运行时的安全课题,如:

1. 合约枢纽权力/参数变化:监控办理角色产生变化的事宜,办理角色改动合约枢纽参数的事宜,适时发明私钥大概被盗的状况

2. 合约资金改变:监控代价变动及合约资金变动的状况,适时发明大概的闪电贷等打击

3. 周期性对于账:周期性对于链上的事宜与买卖施行对于账,适时发明大概的生意逻辑上的课题

运行境况安全加固

1. 确保实行前端代码住址办事器的安全加固,如:装置 HIDS (https://www.aliyun.com/product/aegis),选择 SSH Key施行登录,树立 SSH 登录 alert (https://medium.com/@alessandrocuda/ssh-login-alerts-with-sendmail-and-pam-3ef53aca1381),树立 SSH 登录 google-auth (https://goteleport.com/blog/ssh-2fa-tutorial/)等

2. 确保 DNS 配置开放了 DNS Sec,正在域名办事办理平台上为办理账号树立强口令并开放 2 次认证

3. 确保项目利用到的云平台办理账号利用了强口令并开放了 2 次认证

揭晓马脚赏金讨论

揭晓马脚赏金讨论或入驻有名的马脚赏金平台,排斥社区白帽子为项目保驾护航;也许挑选BugRap(https://bugrap.io/),code4rena(https://code4rena.com/),immunefi(https://immunefi.com/)

创制招牌救急小组

创制招牌救急小组并对于外供给关连办法,由救急小组担任处置白帽子发明的课题或正在黑天鹅事宜迸发时主导团队成员施行救急从事

0x05 救急从事

齐备的救急从事过程

尽大概地拟定齐备地救急从事过程,有条没有紊地根据救急从事过程来从事黑天鹅事宜

止损从事要求

1.根据课题作用的范围以及危险水准,适时经过重要憩息开关施行止损

2. 告诉社区成员产生黑天鹅事宜,避免用户连续与项目施行交互导致折本

黑客追踪要求

1. 仓卒分解黑客的赢利地方,并存储 PC/Web/办事器的拜候日志(假设有木马请存储木马文件)

2. 对于办事器施行快照,适时保全被黑现场

3. 关连专科的安全团队帮助施行追踪,如:MistTrack 追踪分解平台(https://misttrack.io/),Chainalysis(https://www.chainalysis.com/)

建设课题要求

1. 与专科安全团队议论课题的最好建设规划

2. 正确切施建设规划并请专科的安全团队施行验证

安全揭晓要求

施行揭晓历程要求,确保全部代码的变化均有颠末测试以及安全审计

复盘分解要求

1.表露验尸讲述并与社区成员同步建设规划及挽回办法

2. 验尸讲述须要同步课题的本体缘由,课题的作用范围,全部的亏空,课题的建设状况,黑客的追踪等相干掘起

归纳

安尽是动静办理的历程,仅依附于第三方安全团队的近期审计并没有能真正保险项目永恒安全牢靠地运行。所以,建立以及完满 Web3 项想法安部分系是相当主要的,项目方团队自身具备特定的安万能力才华更好的保险 Web3 项目安全牢靠地运行。

除此之外,咱们提议项目方团队还应该努力到场安全社区,练习最新的安全攻防本领以及体味,与其他项目方团队以及安全各人施行调换以及单干,独特进步整体生态的安全性。同时,强化内部安全训练以及学识遍及,进步全员的安全意识以及才略,也是建立以及完满安部分系的主要方法。

最终,Web3 项目安全币安登录地址尝试要求今朝属于 v0.1 版本,并且还正在延续的完满,假设你有更好的提议,接待提交反应。

本文地址:http://bilianwu.com/93283.html
版权声明:项目均采集于互联网, 空投币 无法审核全面,且希望大家能赚钱,请谨慎切勿上当受骗!
温馨提示:★★★天上真会掉馅饼!天道酬勤,都是机会!不错过每个空投糖果!真假难以辨认,尽量0撸!
重要提醒:本站内容均转自互联网,请明辨各个项目风险,不构成投资建议,如涉及资金交易,请谨慎操作与自担风险!
《新人必看》 《本站免责申明》

评论已关闭!