漏洞总结 漏洞概述 漏洞名称: sharkd: NULL pointer dereference in setcomment when comment parameter is omitted 漏洞类型: 空指针解引用 触发条件: 当发送一个格式错误的 JSON-RPC 请求给 sharkd 时,如果省略了 参数,会导致程序崩溃。 根本原因: 方法的 参数被标记为 ,因此当客户端省略该参数时, 返回 。这个 值随后被直接传递到 等函数中,而没有进行任何空指针检查。 影响范围 受影响组件: 守护进程 潜在后果: 程序崩溃(段错误),可能导致拒绝服务(DoS)。 修复方案 修复状态: 已关闭 (Closed) 修复方式: 在 的 行附近,在调用 等函数之前,添加对 的检查。 复现步骤 (Steps to reproduce) 1. 使用以下命令运行带有 AddressSanitizer 的 : 2. 使用提供的 POC 文件 发送请求。 POC 代码 页面中提到了一个 POC 文件 ,并指出任何 pcap 文件都可以用于此测试(例如 )。虽然 POC 文件的具体内容未在截图中直接显示,但根据漏洞描述,其内容应是一个省略了 参数的 JSON-RPC 请求。 根据漏洞描述,POC 的大致结构如下: (注意:以上 JSON 结构是根据漏洞描述和常见 JSON-RPC 格式推断的,实际 POC 文件内容可能略有不同,但核心是省略了 参数。)