【发布时间】:2019-04-30 15:31:44
【问题描述】:
静态安全扫描器在此行标记了我的 C# 代码:
var result = JsonConvert.DeserializeObject<dynamic>(response);
response 将包含来自 Web API 的 JSON 响应。
扫描器已将此标记为“不安全的反序列化”。
有人可以帮助我了解如何利用它吗? Web 示例并不清楚是否可以在 DeserializeObject 方法本身内或仅在反序列化之后发生漏洞利用。
【问题讨论】:
-
你考虑过
部分 -
它是哪款扫描仪?我只能假设它对反序列化为动态对象的响应不满意,这意味着您将反序列化发送给您的 anything 。我很确定这不会产生任何可执行文件
-
据我所知,该漏洞仅存在于非通用版本的 DeserializeObject 方法中(但也可能存在于动态类型中)。查看here了解更多详情。
-
虽然这样的分析器可以提供有用的分析,但我看到了没有明确指定标志的确切原因的情况。如果有人拒绝它,他们会更清楚地解释原因,但扫描仪的“思考”可能是不透明的,这意味着机器人霸主不会告诉我们它为什么不高兴。