TYO Reach 的安全性
安全性是 Reach 的基石 — 您通过我们的基础设施路由流量,因此您有权确切了解它是如何被处理的。
您的流量如何通过 Reach 移动
了解数据路径有助于您评估我们能看到什么、不能看到什么 — 以及为什么设计是这样的。
当 Reach 处于活动状态时,来自您设备的选定流量会通过加密的 HTTPS 连接传输到 TYO Reach 的网关。该网关(运行在悉尼的 Google Cloud Run 上)会代表您将请求转发到目标服务器。目标服务器看到的是网关的 IP 地址,而不是您的。TLS 在每一跳都强制执行:从您的设备到网关,以及从网关到目标。
TYO Reach 使用 mitmproxy 作为其底层代理引擎。“中间人”(mitm)是对代理如何拦截连接的技术描述,而非意图描述。这种拦截对于以下两个特定目的而言是必要的:
- 身份验证。 Reach 添加了一个
Proxy-Authorisation头部,以便网关识别请求属于哪个账户并强制执行您的流量额度。 - 策略执行。 路由规则(哪些域名通过哪个网关出口)是在这一层应用的。
代理会终止您的 TLS 会话,检查 HTTP 元数据(主机名和方法),应用策略,并在转发前重新加密请求。目标 TLS 证书由网关正常验证。这与企业 Web 安全网关使用的模型相同。
我们记录什么 — 以及我们刻意不记录什么
Reach 会测量您使用了多少数据。默认情况下,它不会记录您用这些数据做了什么——唯一的例外是一项可选的连接日志,除非您或您的组织将其启用,否则它处于关闭状态。
我们默认记录的内容
我们记录每个计费周期内通过您账户传输的数据总量(字节)。这是强制执行每月流量额度所需的唯一信息,也是除非您开启可选的连接日志、否则我们唯一会记录的内容。
我们不记录的内容
我们绝不记录 URL 路径、查询字符串、搜索词或页面内容。除非您(或您的组织)开启可选的连接日志,否则我们不会记录您访问的域名历史;即便开启,也仅存储主机名和连接时间,绝不存储路径或内容。我们不构建浏览配置文件,也不与广告商或分析提供商共享流量数据。
可选的连接日志与保留期限
字节计数计量数据将保留至您当前的计费周期,并额外保留一段短时间以用于争议解决。可选的连接(访问)日志默认处于关闭状态;当您或您的组织启用它时,连接级元数据(主机、时间、持续时长)最多保留 30 天,然后删除。所有日志均存储在悉尼地区的 Google Cloud 中。
由 TYO ID 支持的身份验证
TYO Reach 的身份验证由 id.tyo.com.au(TYO 自己的身份服务)处理,而不是我们无法控制的第三方平台。
澳大利亚托管身份
TYO ID 运行在澳大利亚的 Google Cloud 上。您的账户凭据绝不会传输到我们无法控制的美国或欧盟身份平台。登录流程使用带有短期会话令牌的 OAuth 2.0 — 长期凭据绝不会存储在客户端应用中。
MFA 和 TOTP
多因素身份验证可通过 TOTP(基于时间的一次性密码 — 兼容任何 RFC 6238 身份验证器应用)实现。团队管理员可以要求所有团队成员使用 MFA;用户无法选择退出团队强制执行的 MFA 策略。
Google 和 Microsoft 登录
团队可以使用 Google 或 Microsoft 登录。对于有需要的组织,可按需提供企业 Azure AD / OIDC 目录联合身份验证。
网关的构建与运营方式
网关运行在托管的无服务器基础设施上 — 没有持久的虚拟机,没有 SSH 访问,环境中没有长期存在的密钥。
Google Cloud Run
Reach 代理网关运行在 Cloud Run 上 — 这是 Google 的托管无服务器容器平台。Cloud Run 可自动扩展,应用 Google 的底层基础设施安全性,这意味着我们无需修补持久虚拟机,攻击者也无法在部署之间持久存在。
无生产环境 SSH 访问
无法通过 SSH 或 Shell 访问正在运行的网关。所有部署都通过 Google Cloud 的部署流水线进行。回滚通过重新部署执行,而非控制台访问。
GCP Secret Manager
敏感凭据(API 密钥、服务令牌、数据库连接字符串)存储在 GCP Secret Manager 中,而不是环境变量文件或代码中。网关在启动时通过经过身份验证的内部 API 检索密钥。
自动平台修补
Cloud Run 自动处理操作系统和运行时修补。我们维护应用层;Google 维护平台。不存在未修补的虚拟机攻击面。
发现了安全漏洞?
如果您发现了 TYO Reach 中的问题,我们希望在公开披露之前了解它。
请将问题描述发送至 [email protected]。请包含:
- 漏洞的清晰描述及其潜在影响。
- 重现步骤(概念验证有助于我们更快地进行分类)。
- 截图、日志或任何支持证据。
我们力求在一个工作日内确认所有安全报告,并在确认问题后的三个工作日内提供解决方案时间表。请在任何公开披露之前给我们合理的修复时间。
我们要求您:
- 不要访问或修改属于其他用户的数据。
- 不要对生产系统执行拒绝服务测试。
- 本着诚信原则行事。
我们目前不运行付费漏洞赏金计划,但经许可后,我们会在发布说明中对研究人员表示感谢。
Reach 能看到我的密码吗?
如果您通过 HTTPS 登录网站(几乎所有登录页面都使用 HTTPS),登录表单的内容(包括您的密码)会在您的浏览器和目标网站之间进行端到端加密。Reach 网关可以看到连接的主机名,但无法读取请求的内容,包括密码字段。作为一般规则:在任何网络上都应避免通过未加密的 HTTP 发送凭据。
Reach 能读取我的 HTTPS 浏览内容吗?
对于 HTTPS 连接,网关可以看到主机名(例如 example.com),但无法看到 URL 路径、查询字符串或页面内容。默认情况下,我们完全不记录主机名;只有当您或您的组织启用可选的连接日志时,才会记录主机名(仅限主机名和连接时间,保留 30 天)。对于互联网上仍然存在的极少数未加密 HTTP 流量,网关在技术上有能力读取请求,但我们不会审查或存储其内容。
我的数据存储在哪里?
账户数据、计量记录和任何日志都存储在悉尼地区的 Google Cloud 中。除非 Google 的标准基础设施运营有要求,否则我们不会将个人数据复制到澳大利亚以外的司法管辖区。详情请参阅我们的隐私政策。
如何报告漏洞?
发送电子邮件至 [email protected],描述问题、重现步骤及任何支持材料。我们力求在一个工作日内确认所有报告。请在公开披露之前给我们时间解决问题。