⬢ DragonFlyBSD Kernel Audit
DF-3750 / manifest.json
← back to finding ↓ download raw
{
  "finding_id": "DF-3750",
  "title": "rt2860: raw-xmit path lacks TXWI pool-empty guard -> NULL deref panic under Tx saturation",
  "verdict": "not_reproduced (guest lacks Ralink hardware; capacity math exact)",
  "impact_class": "local/remote-assisted DoS (NULL-pointer write panic)",
  "reproduce": {
    "precondition": "ral(4) interface under downlink congestion + mgmt traffic (probe responses)",
    "steps": [
      "fill >=2 TX rings with unacked frames (128+ pool entries consumed)",
      "trigger a management frame via raw path (client probe request)",
      "SLIST_FIRST returns NULL -> txwi = data->txxi NULL write -> panic"
    ],
    "expected": "Fatal trap 12 in rt2860_tx / rt2860_tx_raw"
  },
  "kernel_refs": [
    "sys/dev/netif/ral/rt2860.c:1536",
    "sys/dev/netif/ral/rt2860.c:1824",
    "sys/dev/netif/ral/rt2860.c:2058",
    "sys/dev/netif/ral/rt2860var.h:23"
  ],
  "artifacts": ["README.md", "VERDICT.md", "fix.diff", "verdict.json", "env.txt", "manifest.json"]
}