安全声明

做了什么、没做什么。

已实施

  • 公开页面不写 cookie、不加载第三方脚本。所以浏览榜单和异动流这条路径上没有可被第三方脚本读取的会话数据。
  • 需要登录的部分才有会话。会话 cookie 是 HttpOnly 的(JavaScript 读不到),受保护路径在服务端校验会话, 不是靠前端隐藏入口。
  • API Key 只存散列。生成时展示一次原文,之后无法取回;验证时只比对散列。控制台的 API key 只对账号 自己的数据可见。
  • 登录与短信接口有限流。登录类接口按 IP 限流(每分钟 100 次),短信验证码按手机号与 IP 双维度限流,并 要求先通过滑块验证码,以阻断批量注册和短信轰炸。
  • 角色不从注册请求里读。平台角色是账号表上的字段,注册时忽略请求体里的同名参数,避免把自己注册成 管理员。
  • 采集不走带凭据的接口。数据来自匿名可访问的公开接口,不需要你的 GitHub token,也读不到私有仓库。

没有做的事

  • 没有做过第三方渗透测试,也没有公开的安全审计报告。
  • 没有 SOC 2、ISO 27001 或等保之类的认证。谁采购谁都会问,所以 直接写在这里。
  • 没有漏洞赏金计划。报告仍然欢迎,但目前不会有钱。
  • 没有多因素认证。控制台是单因子(密码 / 短信 / GitHub), 账号里也没有 API Key 之外的第二道锁。
  • 公开接口没有鉴权,也没有速率限制。它们本来就是为了公开数据而开放的,但「无限制」意味着一次脚本可以把整份榜单 拉走,请不要这么用。

怎么报告一个问题

通过 联系我们 那个微信渠道发消息,说清是哪个页面或哪个接口、怎么复现、影响面是什么。请不要 把可用的利用细节发在公开的 issue、评论区或聊天群里——那些地方不私密,而且一旦 贴出来就等于公开了。

我们不承诺响应时限,也不会在修复前公开讨论细节。但如果确实存在用户数据被他人 访问的情况,请在那条消息里写明「涉及数据泄露」四个字,我们会优先处理并如实 告知进展。

你能自己做的事

退出登录会清掉会话;撤销 API Key 会立刻让它失效,不需要等任何缓存过期。账号 本身要删,走 联系我们 即可;删除范围和保留期写在 隐私政策 里。

最后更新 2026-10-02。发现漏洞请走 联系我们,细节不要发在公开渠道。