<feed xmlns='http://www.w3.org/2005/Atom'>
<title>amd-psp-re.git/hw/image_parser_fuzz.py, branch main</title>
<subtitle>AMD PSP reverse engineering, emulator and vulnerability research</subtitle>
<id>https://git.sl0p.foo/amd-psp-re.git/atom/hw/image_parser_fuzz.py?h=main</id>
<link rel='self' href='https://git.sl0p.foo/amd-psp-re.git/atom/hw/image_parser_fuzz.py?h=main'/>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/amd-psp-re.git/'/>
<updated>2026-09-30T00:44:46Z</updated>
<entry>
<title>hundred-and-third pass: the pre-authentication image parser is clean</title>
<updated>2026-09-30T00:44:46Z</updated>
<author>
<name>user</name>
<email>user@clank</email>
</author>
<published>2026-09-30T00:44:46Z</published>
<link rel='alternate' type='text/html' href='https://git.sl0p.foo/amd-psp-re.git/commit/?id=487df1049aa0f758f634df74b5f2b8a5169e16f2'/>
<id>urn:sha1:487df1049aa0f758f634df74b5f2b8a5169e16f2</id>
<content type='text'>
One surface really was untried, since every load in this audit used a well-formed signed
image while the header parse runs before authentication completes and is therefore
reachable by any host without a valid signature. Fuzzing truncations, header dwords set to
zero and to extreme values, and length mismatches, with the unmodified image as control,
every malformed case returns a clean error status with no stall and no crash.

One result looked like a signature-coverage gap: four header dwords zeroed still loaded
successfully. Two were already zero so those are no-ops, but two hold real address-shaped
values and zeroing them still authenticated, which would matter if those fields steer
anything. A follow-up settles it: only zero is accepted, and any other substitution fails
authentication, so the signature does cover these fields and zero is special-cased as
field-unused. An attacker can switch an optional pointer off rather than redirect it,
which is not a primitive.

The objective is not met.
</content>
</entry>
</feed>
