跳转到内容
HexaTransfer
返回博客
加密与安全

文件传输审计跟踪:追踪谁下载了什么

实施文件传输审计跟踪以满足合规和安全要求。追踪下载、访问时间、IP地址并生成报告。

文件传输审计跟踪将传输生命周期中的每一个有意义事件——上传、密码尝试、成功认证、已服务字节范围、IP 地址、User-Agent 以及最终删除——记录到只追加日志中,该日志能在磁盘故障中存活,并满足 GDPR 第 30 条、HIPAA 164.312(b)、SOC 2 CC7.2 以及 PCI DSS 4.0 要求 10。审计跟踪可回答每位事件响应者在凌晨两点都会被问到的问题:谁下载了那个 .pdf,什么时候,从哪里,用什么设备。没有它,一切都是猜测。

日志中应包含哪些事件

六类事件可覆盖大多数取证场景。第一,上传完成:发送方 IP、文件大小、密文的 SHA-256、声明的 MIME 类型。第二,链接创建:过期时间、最大下载次数、密码标志、2FA 标志。第三,访问尝试:时间戳、IP /24、密码是否正确、User-Agent 家族。第四,下载开始:会话 ID、第一个字节已服务。第五,下载完成:总字节数、时长、HTTP 2xx/4xx 代码。第六,删除:触发原因(过期、达到最大次数、手动撤销)、时间戳、清零确认。漏掉其中任何一类,审计师都会注意到。

防篡改的只追加存储

日志必须能抵御甚至是管理员的修改。一种方案:将事件写入开启了对象锁定(Governance 模式,HIPAA 用 Compliance 模式)并设置 90 天保留期的 AWS S3 存储桶。另一种方案:流式写入 ClickHouse(具有 MergeTree 的 FINAL 保证),每日对哈希值生成 Merkle 根并发布到公开公告板。通过 OpenTimestamps 将每日根锚定到 Bitcoin 区块链——每天约需 0.30 美元,可提供密码学证明无事件被伪造。对大多数团队而言,S3 对象锁定加 IAM 权限隔离已经足够。

审计师可解析的结构化格式

JSON 行格式可行,但审计师更偏好 RFC 5424 syslog 或更新的 OCSF(Open Cybersecurity Schema Framework)以便 SIEM 摄入。每个事件包含 activity_idseverity_idtimeactor.user.email_hashsrc_endpoint.ipfile.hashes.sha256 等字段。Splunk、Datadog 和 Elastic 均原生解析 OCSF。对于较小的团队,按季度将包含(timestamp_utc、event_type、transfer_id、ip_hash、outcome、bytes)列的 CSV 导出并存放在共享目录,即可满足证据要求而无需购买 SIEM 许可证。

GDPR 下的 IP 地址处理

根据 GDPR(由 Breyer 诉德国案于 2016 年确认),IP 地址属于个人数据。不能无限期记录完整 IP。应使用每日轮换密钥的 HMAC-SHA256 对其进行哈希,这样在保留当日取证能力的同时,24 小时后即中断关联。仅在有文件证明的第 6(1)(f) 条正当利益的活跃调查期间保留原始 IP。部分服务只存储 /24 前缀,保留地理位置信息但去除个人归因——这是免费层级的合理权衡。在隐私政策中记录您的选择,以便数据主体行使第 15 条权利。

在中国大陆,《个人信息保护法》(PIPL)对 IP 地址等可识别个人信息有明确的处理限制,建议参照 GDPR 的哈希化做法,并确保数据本地化要求得到满足。

时间同步与不可否认性

审计跟踪的可信度取决于时间戳的准确性。应运行 chrony 或 systemd-timesyncd 并同步至 NIST 或 Cloudflare 的 time.cloudflare.com,在每个事件中加入 clock_skew_ms 字段,让取证分析师知晓置信区间。为实现不可否认性,使用存储在 AWS KMS 或 YubiHSM 中的密钥以 Ed25519 对每个日志文件签名。签名证明日志事后未被篡改,且若无 HSM 泄露就无法伪造——法庭可接受的证据级别。

各法规的保留期要求

不同框架要求不同的保留窗口。HIPAA 要求从创建日期或最后使用日期(以较晚者为准)起保留 6 年(45 CFR 164.316(b)(2))。PCI DSS 4.0 要求 12 个月可即时访问,另加 12 个月的冷存储。SOC 2 以策略为准,但审计师对低于一年的保留期持负面态度。GDPR 第 5(1)(e) 条规定"不得超过必要期限"——解释为与日志所支持的业务记录的保留期相匹配。在数据库 schema 中设置每租户保留期,并运行每月清除作业对剩余数据段重新签名。

生成人类可读的报告

原始日志无法满足监管机构的要求。构建一个报告生成器,按传输 ID、日期范围或接收方邮箱哈希过滤,并生成带公司 logo、事件表格和 Ed25519 签名验证真实性的带时间戳 PDF。在封面页包含报告自身的 SHA-256 哈希,使接收方能检测到篡改。WeasyPrint 或 Typst 从 Jinja2 模板清晰地渲染此类内容。HexaTransfer 同时导出 PDF 和 CSV 格式,审计师通常两者都需要。

对异常行为发出告警

跟踪日志若无人阅读则毫无意义。定义触发告警的规则:10 分钟内超过 5 次密码错误、来自与发送方国家不符的 IP 段的下载、医疗文件在工作时间之外被访问,或单个链接上的 4xx 爆发。将告警路由至 PagerDuty(供 SOC 团队)或 Slack Webhook(供个人运营者)。每季度调整阈值——嘈杂的告警会被忽略,这与检测目标背道而驰。将规则集文档化,让审计师看到您不仅考虑了日志记录,也考虑了检测。

删除作为已记录事件

传输生命周期的最后一条记录是其擦除。记录触发原因(过期计时器、达到最大下载次数、手动撤销)、清零方法(覆盖次数、设备类型)以及删除后磁盘区域的 SHA-256(证明没有可识别内容残留)。这对于 GDPR 第 17 条被遗忘权确认以及 HIPAA 违规通知门槛认定都至关重要。删除日志的保留时间会比文件本身更长——有时长达数年——这正是合规系统应有的行为方式。

在 hexatransfer.com 上试试 — 免费、无需注册、最多 10 GB。

通过端到端加密安全发送大文件

通过端到端加密免费传输最大10GB的文件。无需注册账户。文件在上传前在浏览器中加密,其他人无法读取。

发送文件