β¬’ DragonFlyBSD Kernel Audit
← triage Β· dashboard
DF-1952

Unbounded loop over displays[] in phm_store_dal_configuration_data (latent OOB read)

Summary

phm_store_dal_configuration_data L294 for(index=0;index<display_config->num_path_including_non_display;index++) iterates over displays[MAX_NUM_DISPLAY=32] dm_pp_interface.h:71/89 without bounding count. Producer amdgpu_dm_pp_smu.c:64-65 copies display_count verbatim no clamp; amd_powerplay.c:1022 forwards untouched. No demonstrable attacker path: DC display layer populates from hardware streams <=6 pipes. OOB read of adjacent struct fields if count>32 from separate bug or future hardware. Impact: info leak or SMU misprogram/panic. Fix: clamp num_paths to MAX_NUM_DISPLAY.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-1952 Β· 1 files
FileTypeDescriptionSize
manifest.json file 419 B view raw

Fix verification

not_testable
baseline reproduced→ patch + rebuild →patched clean

recommended fix identified; fix.diff not authored/validated in this batch

recommended fix identified; fix.diff not authored/validated in this batch
combined build rc=0

Confirmed kernel references

β€”

Detail

Exploit chain

none (Info severity)

Evidence (decisive lines)

Source-confirmed at sys/dev/drm/amd/powerplay/hwmgr/hardwaremanager.c:294: unbounded loop over displays[] (latent OOB read)

Verified recommended fix

Source-confirmed at sys/dev/drm/amd/powerplay/hwmgr/hardwaremanager.c:294: unbounded loop over displays[] (latent OOB read)

Verdict

Source-confirmed at sys/dev/drm/amd/powerplay/hwmgr/hardwaremanager.c:294: unbounded loop over displays[] (latent OOB read)