DF-3811 / verdict.json
{ "finding_id": "DF-3811", "status": "untested", "reproduced": 0, "impact": "none", "confidence": "certain", "verdict": "intel_ddi_init() reaches its err: label (kfree of intel_dig_port, intel_ddi.c:3893-3895) after intel_ddi_init_dp_connector() has fully registered a DP connector that stores a pointer to the encoder inside intel_dig_port (drm_connector_init + intel_connector_attach_encoder at intel_dp.c:6620/6634). The err path neither destroys nor detaches that connector, leaving a DRM-core-listed object referencing freed memory (UAF on next HPD/probe/unload). The only trigger for the second goto err is intel_connector_alloc() failure inside intel_ddi_init_hdmi_connector() (intel_ddi.c:3694), so exploitation is gated on kernel memory exhaustion during driver probe — hence Low severity. Not executed: guest has no Intel GPU; code-path property is certain from source.", "exploit_chain": "", "evidence": "findings/poc/DF-3811/VERDICT.md (registration-before-failure proof with citations), findings/poc/DF-3811/env.txt", "kernel_refs": [ "sys/dev/drm/i915/intel_ddi.c:3863", "sys/dev/drm/i915/intel_ddi.c:3873", "sys/dev/drm/i915/intel_ddi.c:3893", "sys/dev/drm/i915/intel_ddi.c:3694", "sys/dev/drm/i915/intel_dp.c:6620", "sys/dev/drm/i915/intel_dp.c:6634" ], "poc_changes": "no PoC written; source-level analysis only (no trigger hardware)", "attempts": 0, "guest_uname": "DragonFly dfbsd 6.5-DEVELOPMENT #0 ... x86_64 (no i915)", "runtime_sec": 0, "guest_dirty": 0, "build_cmd": "", "run_cmd": "", "code_hash": "", "notes": "Pass-2 finding. Same file family as DF-3656 (amdgpu error-path UAF) but distinct driver/path. OOM-gated UAF; fix should demote the failure or fully unwind the DP connector.", "recommended_fix": "Do not kfree intel_dig_port when a DP connector is already registered - demote HDMI connector alloc failure to non-fatal or fully destroy the DP connector first", "fix_status": "not_testable", "fix_baseline_reproduced": 0, "fix_patched_reproduced": 0, "fix_verdict": "not_testable: baseline never reproduced (no hardware)", "fix_evidence": "" } |