天才一秒记住【狂风中文网】地址:https://www.kfzw.net
而那个说“宁可错杀”
的总监,早已调离项目组。
路容深吸一口气。
继续写代码。
但这一次,她的思路变了。
她开始设计一个“激进”
的规则——表面上是为了最大化过滤重复和异常数据,实际上,她在规则里埋下了一个微妙的漏洞。
漏洞的核心,在于对加密负载格式的判定。
现有文档描述,payload字段解密后应该是标准JSON格式,包含固定的几个嵌套字段。
但路容知道,在实际传输过程中,可能因为加密算法、网络编码、第三方接口等各种原因,产生一些非标准但依然可解析的变体。
比如,JSON字符串的开头或结尾多了一个空格。
比如,某个字段的值是空数组[],但被编码成了空字符串““。
比如,时间戳字段的值是整数,但被错误地传成了字符串。
这些变体,在严格的JSON解析器里会报错,但在一些宽松的解析器里可以正常处理。
路容设计的规则是:只要payload解密后不能通过严格JSON解析验证,就标记为“格式异常”
,暂时搁置,触发人工审核。
这听起来很合理。
但她在规则里加了一个细节:对于AES-256-GCM加密的数据包,解密过程会生成一个“认证标签”
,用于验证数据完整性。
如果认证标签验证失败,解密工具会直接报错,不会输出任何内容。
而她的规则,在处理“认证标签验证失败”
的情况时,设计了一个特殊的逻辑分支。
这个分支会检查数据包的元数据——device_id、timestamp、来源IP——然后与最近一小时内的其他数据包进行模糊匹配。
如果找到相似的数据包,就假设这个解密失败的数据包是重复发送的版本,直接丢弃,不触发告警。
但如果找不到相似数据包呢?
规则会将其标记为“加密负载格式错误”
,进入异常队列。
然后——关键在这里——路容在代码里设置了一个阈值:同一来源IP在五分钟内,如果出现超过三个“加密负载格式错误”
的数据包,就触发系统级告警。
为什么?
因为正常的数据传输,不会在短时间内产生大量解密失败的数据包。
如果出现,要么是源头数据有问题,要么是加密密钥错误,要么是——有人故意发送了无法解密的测试数据。
而“深蓝计划”
的数据来源,周哲说涉密。
路容不知道具体是什么来源。
但她知道,李剑三年前构陷她时,用的就是伪造的数据包,伪装成她从公司服务器泄露出去的加密文件。
那些文件,表面上是AES加密,实际上内部结构被篡改过,解密后会得到错误的内容。
当时的加密方式,也是AES-256。
本章未完,请点击下一章继续阅读!若浏览器显示没有新章节了,请尝试点击右上角↗️或右下角↘️的菜单,退出阅读模式即可,谢谢!