lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20250917132625.61081-1-sj@kernel.org>
Date: Wed, 17 Sep 2025 06:26:25 -0700
From: SeongJae Park <sj@...nel.org>
To: Ethan Graham <ethan.w.s.graham@...il.com>
Cc: SeongJae Park <sj@...nel.org>,
	ethangraham@...gle.com,
	glider@...gle.com,
	andreyknvl@...il.com,
	andy@...nel.org,
	brauner@...nel.org,
	brendan.higgins@...ux.dev,
	davem@...emloft.net,
	davidgow@...gle.com,
	dhowells@...hat.com,
	dvyukov@...gle.com,
	elver@...gle.com,
	herbert@...dor.apana.org.au,
	ignat@...udflare.com,
	jack@...e.cz,
	jannh@...gle.com,
	johannes@...solutions.net,
	kasan-dev@...glegroups.com,
	kees@...nel.org,
	kunit-dev@...glegroups.com,
	linux-crypto@...r.kernel.org,
	linux-kernel@...r.kernel.org,
	linux-mm@...ck.org,
	lukas@...ner.de,
	rmoar@...gle.com,
	shuah@...nel.org,
	tarasmadan@...gle.com
Subject: Re: [PATCH v1 04/10] tools: add kfuzztest-bridge utility

On Tue, 16 Sep 2025 09:01:03 +0000 Ethan Graham <ethan.w.s.graham@...il.com> wrote:

> From: Ethan Graham <ethangraham@...gle.com>
> 
> Introduce the kfuzztest-bridge tool, a userspace utility for sending
> structured inputs to KFuzzTest harnesses via debugfs.
> 
> The bridge takes a textual description of the expected input format, a
> file containing random bytes, and the name of the target fuzz test. It
> parses the description, encodes the random data into the binary format
> expected by the kernel, and writes the result to the corresponding
> debugfs entry.
> 
> This allows for both simple manual testing and integration with
> userspace fuzzing engines. For example, it can be used for smoke testing
> by providing data from /dev/urandom, or act as a bridge for blob-based
> fuzzers (e.g., AFL) to target KFuzzTest harnesses.

Thank you for doing this great work, Ethan!  I think this will be very helpful
for finding bugs of DAMON.

> 
> Signed-off-by: Ethan Graham <ethangraham@...gle.com>
> 
> ---
> v3:
> - Add additional context in header comment of kfuzztest-bridge/parser.c.
> - Add some missing NULL checks.
> - Refactor skip_whitespace() function in input_lexer.c.
> - Use ctx->minalign to compute correct region alignment, which is read
>   from /sys/kernel/debug/kfuzztest/_config/minalign.
> ---
> ---
>  tools/Makefile                        |  15 +-
>  tools/kfuzztest-bridge/.gitignore     |   2 +
>  tools/kfuzztest-bridge/Build          |   6 +
>  tools/kfuzztest-bridge/Makefile       |  48 ++++
>  tools/kfuzztest-bridge/bridge.c       | 103 +++++++
>  tools/kfuzztest-bridge/byte_buffer.c  |  87 ++++++
>  tools/kfuzztest-bridge/byte_buffer.h  |  31 ++
>  tools/kfuzztest-bridge/encoder.c      | 391 +++++++++++++++++++++++++
>  tools/kfuzztest-bridge/encoder.h      |  16 ++
>  tools/kfuzztest-bridge/input_lexer.c  | 242 ++++++++++++++++
>  tools/kfuzztest-bridge/input_lexer.h  |  57 ++++
>  tools/kfuzztest-bridge/input_parser.c | 395 ++++++++++++++++++++++++++
>  tools/kfuzztest-bridge/input_parser.h |  81 ++++++
>  tools/kfuzztest-bridge/rand_stream.c  |  77 +++++
>  tools/kfuzztest-bridge/rand_stream.h  |  57 ++++
>  15 files changed, 1602 insertions(+), 6 deletions(-)
>  create mode 100644 tools/kfuzztest-bridge/.gitignore
>  create mode 100644 tools/kfuzztest-bridge/Build
>  create mode 100644 tools/kfuzztest-bridge/Makefile
>  create mode 100644 tools/kfuzztest-bridge/bridge.c
>  create mode 100644 tools/kfuzztest-bridge/byte_buffer.c
>  create mode 100644 tools/kfuzztest-bridge/byte_buffer.h
>  create mode 100644 tools/kfuzztest-bridge/encoder.c
>  create mode 100644 tools/kfuzztest-bridge/encoder.h
>  create mode 100644 tools/kfuzztest-bridge/input_lexer.c
>  create mode 100644 tools/kfuzztest-bridge/input_lexer.h
>  create mode 100644 tools/kfuzztest-bridge/input_parser.c
>  create mode 100644 tools/kfuzztest-bridge/input_parser.h
>  create mode 100644 tools/kfuzztest-bridge/rand_stream.c
>  create mode 100644 tools/kfuzztest-bridge/rand_stream.h

I'm wondering if it makes sense to put the files under tools/testing/ like
kselftest and kunit.


Thanks,
SJ

[...]

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ