LabHub
学习 学习路径 课程

处理客户数据

有权限,不等于就可以看

在 LabHub 中继续学习

一句话总结

FDE是接触客户实际数据的地方。比技术更应该先学习 这是至少看一眼,至少搬走,留下痕迹的习惯。

概念图: 至少看一眼,至少搬走,留下痕迹 · 出于方便 · 1.只带必要的热量 · 2. 识别者根据目的进行匿名处理

为什么需要这个?

调查的话会自然而然地发出这样的命令。

SELECT * FROM orders WHERE status = 'FAILED' LIMIT 100;

这里不仅有订单号码,还有姓名、电话号码、地址,有时还有结算。 信息一起出现。而且那个结果在终端滚动后退中,在截图中, 在Slack消息中,留在了大家笔记本电脑的临时文件夹里。

事故比起恶意更出于方便而发生。“为了快点看,用CSV提取出来 通过邮件发送了”是实际事故报告中出现次数最多的句子。

四个原则

1.只带必要的热量 SELECT *相反,只指定调查所需的十个字段。在原因分析中,名字和地址 几乎没有必要的情况。

-- 나쁨
SELECT * FROM orders WHERE status='FAILED';
-- 좋음
SELECT id, created_at, status, error_code FROM orders WHERE status='FAILED';

2. 识别者根据目的进行匿名处理 如果必须连接同一人,则使用了针对目的的秘密密钥在标准化的标识符中。 应用HMAC-SHA-256,保持足够的长度输出。

uid = HMAC_SHA256(secret_from_kms, normalize(email))

这个值不是匿名的值,而是伪名化的标识符。秘密密钥或周边 如果数据暴露的话,可能会再次连接,所以要达到和原始数据一样高的水平。 控制。只有在系统间连接被批准的情况下才共享相同的目的密钥, 对于不能相互连接的分析,根据目的使用不同的键。

3.不外放 数据在原地处理。在本地下载或通过短信发送的瞬间 超出控制范围。如果不得已,只能以统计的形式转移——代替原始100行 一张按失败原因划分的件数表。

4. 留下 记录什么时候查询了什么。以后会有“谁看了这个”这样的问题。 这是来的时候自我防御的唯一手段。大多数系统都有感谢日志。 有的话,如果没有的话,大家的工作笔记会起那个作用。

遮盖分为可以撤销的和不能撤销的。

方式 撤销 什么时候
删除 不可 调查中不需要的列
根据目的使用足够长的HMAC 没有密钥很麻烦 在授权范围内需要相同人的绑定时
部分遮蔽(010-****-1234) 虽然不可,但可以推断 需要肉眼确认时
代币化(存储映射) 可行 以后需要原始文件时
加密 可能 不可避免地需要移动·保管时

仅使用普通的哈希或公开盐是不安全的。电话号码和电子邮件将候选人 制作后很容易传授入学,如果像8位一样截断输出的话,冲突的危险性也会增加。 因为每个记录不同的盐不能以相同的价格绑定同一个人,所以是可重复的 需要连接时,使用针对特定目的的访问受控的秘密密钥和足够长的HMAC。

制作测试数据时

复制运营数据用于测试是最常见和最危险的做法。 如果绝对需要的话,用保持结构,更换价格的方式制作——名字是 在字典中,电子邮件的域名是example.com,金额保持分布,噪音 追加。这样做的话,再现所需的性质(长度分布、重复、缺失)就会留下。 个人信息会消失。

在现场相遇的样子

日志和错误报告是最常见的泄露途径

个人信息事故不只是因为数据库被盗才发生的。正常运行的 在系统诚实留下来的记录中更频繁地出现。

**拍摄整个请求的习惯是最危险的。**为了调试而放进去的一行代码在运营中 剩下的,居民登记号码和卡号会流入日志存储器。日志一般 不加密,保存时间长,查询权限广。

# 이렇게 두면 어느 날 반드시 샌다
log.info("요청: %s", request.json())

# 필요한 것만, 식별자는 해시로
log.info("결제 요청 user=%s amount=%s", hash_id(user.id), amount)

错误跟踪工具会一起发送区域变量。 包含异常发生帧的变量 发送是那个工具的优点,如果那个框架上有密码或令牌的话,就保持原样。 跟着走。发之前一定要留出跳过的位置。

def before_send(event, hint):
    for k in ("password", "token", "authorization", "ssn", "card"):
        _scrub(event, k)
    return event

**不在URL中输入个人信息。**查询字符串是访问日志、代理日志, 浏览器记录,Referer留在标题上。即使是相同的值,如果放在正文中,在这四个地方 不留。

第三个泄露途径是人。调查障碍时,将运营数据用笔记本电脑 下载后,在内部邮件中贴上票据,将截图放入文件中。技术性 因为很难通过控制来阻止,所以从一开始就消除接受理由的一方更有实效: 仅读查询画面、遮蔽的管理者画面、自动删除查询结果的分析 环境。

**留下的记录总有一天会被要求。**以列表的形式列出哪些日志中包含什么。 设定管理和保存期限。收到删除请求时,**只删除数据库 如果在日志和备份中留下的话,不是删除。**从一开始就不留下才是删除。 总是比便宜。

在接下来的实习中要做的事情

收到混有个人信息的200行订单,直到制作一张要外出的纸。 走了。把您的原则分别保存为文件,最后出库前检查器 亲自制作。

评分机将那个检查器分别转发到泄露本和干净的文件中。全部阻止 检查仪,全部通过的检查仪也会坏掉——出现误差的话,没有人 因为不使用的话,错过的话就会很可惜。