{
  "added_at": "2026-11-09",
  "category": "dynamic-analysis",
  "description_en": "Trace how parser functions consume input bytes by rebuilding programs with LLVM data-flow instrumentation and inspecting the resulting trace.",
  "description_zh": "通过 LLVM 数据流插桩重新构建程序，跟踪解析器函数如何使用输入字节，并检查产生的跟踪数据。",
  "entry_url": "https://awesomerea.org/resources/polytracker/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/polytracker/",
  "evidence_url": "https://github.com/trailofbits/polytracker/blob/ae7b5f12e608f0c9a896cf1af797e4588c7624f9/README.md",
  "group": "tools",
  "id": "polytracker",
  "json_url": "https://awesomerea.org/resources/polytracker/record.json",
  "kind": "tool",
  "markdown_url": "https://awesomerea.org/resources/polytracker/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/polytracker/index.md",
  "name": "PolyTracker",
  "name_zh": "PolyTracker",
  "record_type": "resource",
  "relationship": "foundation",
  "requirements": [
    "Needs a target that can be built and instrumented, typically C/C++, plus the specialized LLVM environment. The documented quickstart uses Python tooling and Docker.",
    "Tracing requires rebuilding the target with LLVM instrumentation. Grammar extraction is experimental; host-mounted trace databases can cause severe virtual-machine/container slowdown."
  ],
  "requirements_zh": [
    "需要能重新构建和插桩的目标，通常为 C／C++，以及专门的 LLVM 环境。文档中的快速入门使用 Python 工具和 Docker。",
    "它采用构建时插桩，不能直接跟踪任意闭源二进制。文法提取仍是实验功能；将跟踪数据库放在宿主挂载目录可能使虚拟机／容器明显变慢。"
  ],
  "targets": [
    "binary"
  ],
  "url": "https://github.com/trailofbits/polytracker",
  "verification": "source-reviewed",
  "verified_at": "2026-10-29"
}
