From: Yu Watanabe Date: Tue, 15 Dec 2020 19:44:31 +0000 (+0900) Subject: journal: refuse data which contain invalid fields X-Git-Tag: v248-rc1~488^2~1 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f2bd032044ca3cd4b454dd0ba86719effcf34dc0;p=thirdparty%2Fsystemd.git journal: refuse data which contain invalid fields Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=25353. --- diff --git a/src/journal/journal-file.c b/src/journal/journal-file.c index 18dc3072b48..fa117ab63c8 100644 --- a/src/journal/journal-file.c +++ b/src/journal/journal-file.c @@ -1572,6 +1572,9 @@ static int journal_file_append_field( assert(f); assert(field && size > 0); + if (!journal_field_valid(field, size, true)) + return -EBADMSG; + hash = journal_file_hash_data(f, field, size); r = journal_file_find_field_object_with_hash(f, field, size, hash, &o, &p); diff --git a/test/fuzz/fuzz-journal-remote/oss-fuzz-25353 b/test/fuzz/fuzz-journal-remote/oss-fuzz-25353 new file mode 100644 index 00000000000..94e5fbb93e6 Binary files /dev/null and b/test/fuzz/fuzz-journal-remote/oss-fuzz-25353 differ