Newtonsoft.Json 与 System.Text.Json 多态反序列化的安全性差异解析

thbcm阅读(518)

  Newtonsoft.Json 通过 TypeNameHandling 配置项控制是否在 JSON 中嵌入类型元数据。当设置 TypeNameHandling 支持多态时,JSON 会携带 $type 字段(包含类型的完全限定名和程序集信息),反序列化时直接根据该字段实例化对应类型。这种设计虽然灵活支持多态,但缺乏默认的类型校验机制,攻击者可构造包含恶意类型的 JSON,触发敏感类型实例化。

Django QuerySet filter 完全指南:高效查询数据的核心技巧

thbcm阅读(406)

filter() 的核心优势在于“惰性执行”——调用时不会立即访问数据库,只有当迭代结果、调用
len()
list() 等方法时,才会触发 SQL 查询。这种机制让链式调用成为可能,多个过滤条件会被合并为一条高效的 SQL 语句。

C++学习笔记 23 宏 Macro

thbcm阅读(362)

     模板和宏不一样,在实际的编译过程中,模板会评估的更晚些,运行期动态替换。而宏的处理是在预处理器处理阶段,是纯文本替换。没有什么东西是不能被替换的,因为是在编译之前。

你的代码正在腐烂:为什么我们都不敢碰那座“屎山”?

thbcm阅读(392)

你一定经历过这样的时刻:对着一个长达 800 行的
processUserRequest 方法发呆。逻辑像意大利面一样纠缠不清,变量名从
flag1
flag_final,到处是魔法数字。你想提取一个方法,通过一下变量名,但内心有个声音在尖叫:

联系我们