DragonFlyBSD Kernel Audit
DF-1127 / run.log
← back to finding ↓ download raw
=== BUILD OK ===
non_clock_info_array @ 0x401220, ucNumEntries=4, ucEntrySize=16

[buggy path] si_dpm.c:7253-7255 -- NO bounds check
  nonClockInfoIndex = 42 (ucNumEntries = 4)
  accesses bios_mapping[674] (mapping size = 256)
  -> READ PAST MAPPING BOUNDARY -> kernel OOB read

[fixed path] sibling clock loop si_dpm.c:7269 DOES check:
  if (clock_array_index >= clock_info_array->ucNumEntries) continue;
  -> the fix is to apply the same check to nonClockInfoIndex.
RUN_EXIT=0