原文链接:
https://github.com/slowmist/eos-bp-nodes-security-checklist/blob/master/audit.md
by 慢雾安全团队 & Joinsec Team
参考:EOS超级节点安全执行指南
1.1 架构审计
-
BP 服务器是否达到与外网的充分隔离,保证若有外网恶意攻击不会直接影响BP服务器出块
-
BP 是否多链路设计,防止出现单点故障(或针对单点的 DDoS )导致 BP 无法与其他节点同步
-
节点是否有必要的安全加固(如是否在一些核心通信节点外围正确的部署高防抵御 DDoS 攻击,以及适当的部署 HIDS)
1.2 RPC 安全审计
-
是否有对非必要的节点 RPC 服务进行限制
-
若开启 RPC 服务,是否有禁用不必要的
wallet_plugin
、wallet_api_plugin
及producer_api_plugin
-
RPC 是否启用 SSL
1.3 安全配置审计
-
Active 多签密钥是否配置正确
-
是否开启日志记录,有条件下是否有开启更多安全日志记录插件等
-
max-clients 参数配置是否合理,是否易遭受 P2P 连接打满连接数,导致无法同步
-
是否使用非 root 权限启动节点程序
-
是否更改 SSH 服务默认端口,服务器 SSH 是否配置白名单,并且设置只允许 key(并对 key 加密)登录,禁止密码登录
2. 安全团队审计
2.1 基础设施审计
-
服务器提供商是否是优质的安全供应商,构建基础设施安全需要耗费巨量经费与精力,若选择一些小型服务商及可能出现服务器被攻击就被服务商主动断网的情况。所以站在巨人的肩膀上是个非常高性价比与安全的选择,经过测试目前 UCloud、AWS、Google Cloud 等拥有非常好的抗攻击与攻击后自我恢复能力。
-
节点公网 IP 真实开放端口服务审计,防止运维人员未正确配置服务与安全规则导致脆弱点暴露。
2.2 节点脆弱性审计
-
审计节点对抗全网扫描,隐藏真实公网IP的能力。比如 BP 节点是否使用默认端口配置(如使用默认端口 8888、9876 这类特征端口等)导致容易被全网扫描定位,及攻击利用(目前我们已经知道有部分测试节点遭遇了 RPC 扫描与恶意调用)。
-
审计节点敏感信息是否在公网上泄漏,如在 GitHub 上暴露等。
-
审计 RPC 端口是否可进行恶意调用。
-
若节点部署除 EOS 主程序外的其他程序,则针对第三方程序进行针对性脆弱性攻防审计。
-
审计节点是否有定制合适的应急响应方案。
2.3 抗 DDoS 能力审计
-
针对 P2P 端口的 Layer4 层的抗 UDP Flood 、TCP Flood 等(含各种主流反射型攻击)进行实战型测试。利用真实的攻击流量,来检验节点的的稳定性。
-
针对 RPC 端口的 Layer7 层的抗 CC 攻击进行实战型测试。利用大量攻击节点高并发请求消耗服务器性能来检测节点稳定性。
致谢
在此非常感谢
-
HelloEOS
-
EOS Asia
-
EOSBIXIN
-
EOS Pacific
-
UnlimitedEOS
-
EOS Cannon
-
EOSpace
-
Blockgenic
-
EOSeco
-
EOSLaoMao
-
OneChain
等社区节点参与到节点安全测试中,为社区安全积累了宝贵的数据。
= END =
网友评论