DF-1164 / run.sh
#!/bin/sh # DF-1164 runtime test — NOT EXECUTABLE ON THIS GUEST (no AMD Sea Islands GPU). # The bug requires amdgpu to attach to a CIK-era AMD GPU and then attempt to # load a crafted firmware blob whose header declares ucode_size_bytes larger # than the blob actually contains. The QEMU guest has no AMD GPU. set -e echo "DF-1164: gfx_v7_0 CP/MEC/RLC firmware loader OOB read" echo "------------------------------------------------------" echo "PREREQ: AMD Sea Islands (CIK) GPU + crafted firmware with oversized" echo " ucode_size_bytes in the common firmware header." echo pciconf -lv 2>/dev/null | grep -i 'amd.*display\|radeon\|amdgpu' || true if ! pciconf -lv 2>/dev/null | grep -q -i 'amd.*display\|radeon'; then echo "no AMD GPU present — cannot trigger" exit 0 fi echo "On a vulnerable kernel with an AMD CIK GPU + crafted firmware blob," echo "the PFP/CE/ME/MEC1/MEC2/RLC loader loops would read past the blob" echo "into adjacent kernel heap." |