Foreshock
EN 订阅

安全

这里值得偷的不是钱,是地址簿。

这一页描述架构层面的安全属性、漏洞披露政策,以及我们在认证上的位置——目前一项都没有,并且就这么写着。

更新于
2026-08-24

威胁模型

我们不持有资金,也不持有任何能移动资金的密钥,所以那条最直白的攻击路径不存在。我们真正持有的,是「哪些机构在盯哪些地址」这件事。知道某个金库在监控哪一组结算地址,就等于知道这个金库的结构与敞口所在。对攻击者如此,对竞争对手同样如此——这是系统里价值最高的数据。

由此推出的结论与通常的运维直觉相反:地址簿的保密性优先级高于可用性。当我们无法保证客户之间的隔离时,正确的做法是拒绝服务,而不是降级服务、维持在线。

控制项

都在架构层,这样这些属性能在一次运维失误之后依然成立,而不是依赖于没有人失误。

控制项 怎么实现的
地址簿加密 信封加密。每客户一个数据密钥,由 KMS 中该客户专属的密钥包裹。服务端持有的是密文,从不持有明文地址簿。
匹配无需解密 在客户密钥下计算 HMAC 索引,匹配对索引进行,因此回答一次查询不需要解开任何东西。
跨客户隔离 客户标识是每一张客户数据表的分区键与主键首列,由查询层强制注入。目标是一条跨客户的查询「写不出来」,而不是「被拒绝」。
证据不可篡改 每一次外部取数都按取回原样快照。快照内容寻址,存储启用版本化与对象锁。决策记录禁止更新与删除。派生结论可以重算,原始数据从不被改写。
审计日志 所有内部访问——含运维与支持查询——都追加写入一份独立日志。与你相关的部分你可以随时自行导出,不需要来问我们看了什么。
密钥管理 客户密钥托管在 KMS 中并定期轮换。在私有部署下,这个 KMS 是你的——也就是说,软件的运行方与密钥的持有方是同一方:你。
采集器凭证 只读,按端点分别授权。系统内不存在任何能签出交易的凭证,因此也不存在为此目的而值得被偷的凭证。
公共管线分离 产出公共记录的管线与持有客户数据的管线在物理上分离。不存在任何一条代码路径能让地址簿到达我们发布的东西。

部署形态

私有部署(默认)
软件跑在你的环境里。你的地址簿、决策记录与证据库从不离开它。只有在你选择发送时我们才会收到运行遥测,而遥测里不含任何地址。
托管部署
在私有部署不现实时提供。区域在接入时确定并写入合同。上述全部控制项同样适用,另加审计日志导出——它存在的意义就是让你不必依赖我们的口头断言。

漏洞披露

我们宁愿从你这里听到,也不想过后从别处读到。报告发往 security@4shock.xyz。

security@4shock.xyz

范围

在范围内

  • 4shock.xyz 及其子域
  • 已发布的客户端 SDK 与验证器代码仓库
  • 私有部署发行版及其默认配置
  • 任何可能让一个客户的数据暴露给另一个客户的问题——无论触发它有多难,我们都按最高等级处理

不在范围内

  • 不由我们运营的第三方服务
  • 针对员工、供应商或客户的社会工程,以及物理访问
  • 流量型拒绝服务与任何形式的压力测试
  • 没有实际影响演示的扫描器输出,包括没有利用路径的缺失响应头
  • 需要「终端已被攻陷」或「浏览器已装有恶意扩展」作为前提的结论

响应时限目标

确认收到
三个工作日内
定级与初步评估
十个工作日内
处理期间的进展同步
至少每十四天一次
协同披露
默认九十天,可协商提前,并在此页发布安全公告

目前没有现金奖励,我们也不会换个名字来暗示有。报告者如果愿意,会以姓名或代号致谢;不愿意就匿名致谢。如果将来设立奖励,会在动态里公布,而不是悄悄改这一页。

security.txt

按 RFC 9116 发布的机器可读联系方式,其中的策略链接指回本页。

/.well-known/security.txt

认证现状

我们目前不持有任何安全认证。把这句话直说出来,比被追问一份我们拿不出的报告要便宜。

SOC 2 Type II 计划中
计划中——因为机构采购会要。观察期尚未开始。开始之后,起始日期与预计出具报告的日期会发布在这一页。
ISO 27001
未持有、未在推进,也不在我们任何材料里被声称。
第三方渗透测试 计划中
计划在首个生产部署之前完成。摘要会公开发布,完整报告在 NDA 下提供。

在这几行发生变化之前,请把这一页当作全部的证据;也请把私有部署当作那个不依赖于这些证据的控制手段。

中立性说明