漏洞概述 漏洞名称: Arbitrary Code Execution via Insecure Deserialization in datrie.Trie (#109) 描述: 类在使用 反序列化内部数据时存在漏洞。攻击者可以构造恶意的 文件,其中嵌入恶意的 pickle payload。当用户加载该文件时,会执行任意 Python 代码。 受影响的方法: 和 。 影响范围 受影响版本: 所有版本直至 0.8.3 (All versions through 0.8.3) CWE: CWE-502 — Deserialization of Untrusted Data (反序列化不可信数据) 严重性: Critical (严重) 影响: Arbitrary Code Execution (任意代码执行) 漏洞代码 以下代码片段展示了 中的三个易受攻击的入口点: 1. Trie.__setstate__() (Line 678) 2. Trie.read() (Line 730) 3. Trie.write() (Line 721) 概念验证 (POC) 以下是攻击者脚本 ( ) 和受害者脚本 ( ) 的完整代码。 1. 攻击者脚本 (create_evil.py) 此脚本用于创建恶意的 文件。 2. 受害者脚本 (victim_app.py) 此脚本模拟正常用户加载 trie 文件的行为。