Re: F36 Change: Package information on ELF objects (System-Wide Change proposal)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mo, 08.11.21 13:54, David Cantrell (dcantrell@xxxxxxxxxx) wrote:

> > > One of the reasons we are sticking to JSON here is so that we can use
> > > battle-tested parsers we already use for other stuff. you want a
> > > parser that is already used, verified, tested elsewhere, and JSON
> > > makes that easy. A homegrown parser of an entirely new special purpose
> > > format is a lot more problematic security-wise.
> >
> > In particular, the implementation in systemd is undergoing continuous
> > fuzzing in oss-fuzz, so we hope any simple issues have been already
> > caught.
>
> I wasn't really concerned with the reliability of the parser, but
> rather the necessity of JSON in the first place.  The more layers
> anything has, the higher the risk.

JSON is truly universal. We use it *everywhere* already, including in
trusted, security-sensitive areas.

Most prominently, LUKS2 uses JSON to encode most of its metadata in
the LUKS2 superblock. It doesn't get much more security-sensitive than
that.

And I think that's a *good* thing: JSON might not be perfect — because
nothing is —, but it's certainly one of the better designed generic
data formats around, and it's complexity is absolutely managable. I am
pretty sure *more* subsystems should use that to store their data, and
that we'd unify *more* on it, rather then *less*. Homegrown, manual,
application-specific formats and parsers are a *bad* thing, and not
something to strive for.

Sharing data formats, unifying behaviour and parsers is a way to
*minimize* components both on the conceptual level and in code. Thus
one shouldn't see the reuse of JSON here as "yet another layer", but
instead as "reuse existing infra" to *reduce* the number of layers.

So yes, the fact that the JSON parser used here is a layer that is
already deployed widely (though in other contexts) and has been
thoroughly fuzzed is a *good* thing, and putting together a new parser
here for a new format woudn't be.

Lennart

--
Lennart Poettering, Berlin
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux