[Summary]
MIR Team Ack for exactly the specified binaries, not more.
List of specific binary packages to be promoted to main: debugedit, librpmio9
This does not need a security review, but we want an ack to promote the defined
subset of binaries. Those binaries are rather safe, but e.g. the rpm package
manager is part of the same src and had quite some CVEs over the years. So
tracking CVEs on the source level will be flagged and then on triage rated as
"no problem". We have done promotions of a subset of binaries before, but IIRC
we always got an "ack we are ok to do so" from security. That is what I'd like
to see here as well. Therefore I'm assigning ubuntu-security now.
@Matthias - there are a few TODOs below you could look at until security
replies
Required TODOs:
- Subscribe foundation-bugs to the package
- librpm-dev needs an extra-exclude before promotion of src:rpm
Recommended TODOs:
- pick up upstream unit tests at build time test execution to cover debugedit
[Special Case]
I was reviewing this and it indeed seems to be a special case - thanks
for bringing it up Matthias!
It is special for multiple reasons:
- in terms of the purpose the "debugedit" tool is not strictly tied to rpm
usage, rpm* functionality or anything like it. It just happens to be part of
that upstream source and was never split.
=> Yet we do MIR reviews on src-packages :-/
- The dependencies debugedit has to librpmio9 are all isolated to just one
function "handle_build_id" and really just for a few basic things like the
pgpHashAlgo types and rpmDigest* functions. This - again - isn't very RPM
specific.
=> So it would pull in a lib for a small fraction of it's features that
likely also could come from elsewhere
- Strictly speaking, for the use case you are after, this is due build time
dependency. These days those no more have to be in main. But since we have
promoted the core dev tools into main, adding that dependency to debhelper
would be a component mismatch still.
=> So it has to be promoted even thou it would only be used to build and
not at runtime
- librpmio9 has not much use outside of the rpm source package
=> so there is no further gain in promoting it
That explains why you started directly listing alternative options which
would eliminate some or all of the above problems, but at different levels
of extra maintenance effort.
But TBH - splitting the source or applying Delta just for the sake of the
MIR process (but no other gain) is a bad thing. Depending on what alternative
we pick we'd loose the help of upstream and/or Debian maintaining it on their
end. So while I see the reason to be tempted I don't think we should do it.
After all the process does not exist to make things hard, but to ensure a
certain quality level and maintenance/security feasibility.
A while ago we started to explicitly list the to-be-promoted binaries in
such cases and explicitly mention the limited-ack. That would
here likely be the best choice for Ubuntu as a whole (in regard to effort
vs gain and for not adding complexity artificially).
[Duplication]
There is no other package in main providing the same functionality.
[Dependencies]
OK:
- no other Dependencies to MIR due to this
Problems:
- librpm-dev exists and should not be promoted, this will need an entry to
extra-excludes before promotion
[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking
[Security]
OK:
- history of CVEs does not look concerning
- does not run a daemon as root
- does not use webkit1,2
- does not use lib*v8 directly
- does not open a port
- does not process arbitrary web content
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with system authentication (eg, pam), etc)
Problems:
- does parse data formats
But the risk of that is low, it will run in build environments where more
often than not the build process has root anyway. Not much to exploit further
from there.
- We will want an ack from security to promote only the subset of binaries.
As the rpm package manager being part of the same source isn't as calm, there
are some CVEs for that which we'd NOT be affected in main.
[Common blockers]
OK:
- does not FTBFS currently
- no translation present, but none needed for this case (user visible)?
- not a python/go package, no extra constraints to consider int hat regard
- no new python2 dependency
Problems:
- does not have a test suite that runs at build time
Here I think we should improve, upstream ships a testsuite, but dh_auto_test
runs make check which doesn't do much. ./test/rpmtests seems extensive,
if that could be enabled that would help to ensure no stray update breaks
things.
- does not have a test suite that runs as autopkgtest
There isn't much functionality out of libs or dependencies, so the build-time
tests should be sufficient - but if (while implementing build time tests) it
seems trivial one might add the same as autopkgtest as well to get rechecked
on dependency updates.
- The package has no team bug subscriber yet (Foundations is the one planned)
[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking is in place
- d/watch is present and looks ok
- Upstream update history is slow, but ok (nothing bad on being stable)
- Debian/Ubuntu update history is ok (a lot of NMUs, but ok)
- the current release is packaged
- promoting this does not seem to cause issues for MOTUs that so far
maintained the package
- no massive Lintian warnings
- d/rules is rather clean
- Does not have Built-Using
[Upstream red flags]
OK:
- no Errors/warnings during the build
- no incautious use of malloc/sprintf (as far as I can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH
- no use of user nobody
- no use of setuid
- no important open bugs (crashers, etc) in Debian or Ubuntu
Note: for a tool not usually installed there is a high amount of "this
pkg is in a broekn state" bugs, but reading through those I didn't find the
package to be guilty.
Even [1] is not having a lot for debugedit.
- no dependency on webkit, qtwebkit, seed or libgoa-*
- not part of the UI for extra checks
[1]: https://github.com/rpm-software-
management/rpm/issues?q=is%3Aissue+is%3Aopen+debugedit
** Changed in: rpm (Ubuntu)
Assignee: Christian Ehrhardt (paelzer) => Ubuntu Security Team
(ubuntu-security)
** Summary changed:
- [MIR] debugedit (binary package built from rpm)
+ [MIR] debugedit + librpmio9 (binary packages built from src:rpm)
--
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1913871
Title:
[MIR] debugedit + librpmio9 (binary packages built from src:rpm)
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/rpm/+bug/1913871/+subscriptions
--
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs