Skip to content

Conversation

@ethangraham2001
Copy link
Owner

@ethangraham2001 ethangraham2001 commented Jul 25, 2025

Includes all kernel code for the KFuzzTest module. Does not include any fuzz targets.

Ethan Graham added 28 commits June 18, 2025 10:02
binary representation down. Correctly causes a KASAN repot when passing a
buggy input to it.
Added support for this for x86 arch, but it is probably fragile because
we aren't guarding with a #ifdef yet
the argument type that the function takes so that the user can use tools
like pahole to generate a syzkaller definition of the argument and thus
fuzz the function more easily.
files. It works, and the function is exposed correctly!
pointer to function argument type. This should remove the need for a
mutex guarding a shared buffer entirely, and ultimately will likely
perform better.
variable, and extract common input reading functionality into a separate
function.
these via sysfs, and how they can be parsed from the vmlinux binary as
well.
constraints to avoid weird errors occurring during parsing.
strings) and a field being the length of another.
There was not any mechanism in place in the KFuzzTest for distinguishing
between value pointers and array pointers in fuzz test inputs. This
information is difficult to parse without additional semantic
information on the context.

We introduce a new KFTF_ANNOTATE_ARRAY macro that annotates a field in a
KFuzzTest input struct as an array, removing this ambiguity.
Ethan Graham added 3 commits July 25, 2025 09:49
Iterating through a section where structures aren't aligned to a power-of-2
boundary leads to incorrect memory accesses.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants