Review for Package: src:wireguard

[Summary]
Thank you for all the comments and input on this MIR! I've revisited my initial
opinion after consulting with the rest of the MIR team and came to the
conclusion that we should accept a certain degree of duplicated maintenance here
in order to be able to have the low-level WireGuard standard tools in the
supported set of packages and especially to be able to have the full stack of
tools supported to create a WireGuard connection, that includes key generation.


MIR team ACK under the constraint to resolve the below listed
required TODOs and as much as possible having a look at the
recommended TODOs.

This does need a security review, so I'll assign ubuntu-security

List of specific binary packages to be promoted to main: wireguard-tools
Specific binary packages built, but NOT to be promoted to main: wireguard-dkms

Notes:
I suggest the server team to reach out to @unit193 as the MOTU who maintained
this package previously, to coordinate the next steps with him and keep him in
the loop.

Required TODOs:
- does NOT have a test suite that runs at build time, we should add at least
  the trivial autopkgtest generating and checking keys, as suggested
- does NOT have a non-trivial test suite that runs as autopkgtest, we should
  integrate more testing (LP: #1952102) as suggested by adding the new "vpn"
  test and/or copying the non-trivial autopkgtest from wireguard-linux-compat
- Resolve MIR dependencies:
  + nftables: we could switch Recommends to iptables, but nftables is the future
    please refer to (LP: #1887187)
  + wireguard-dkms: recommended by wireguard-tools, it's part of the same source
    package, but we probably want to drop that, as we have the WireGuard modules
    in the kernel. Or at least we'd want to change Recommends: wireguard-dkms to
    Suggests: wireguard-dkms (LP: #1873288)

Recommended TODOs:
- improve integration with Ubuntu's default networking stack (LP: #1892798)
- The package should get a team bug subscriber before being promoted
- Ubuntu does carry a delta, but it is reasonable and maintenance under
  control, LP: #1890201 should be revisited to check if we still need this
  delta now that our kernels support WireGuard natively

[Duplication]
There is netplan.io in main providing some of the same functionality, especially
for configuring and setting up wireguard tunnels. But it is lacking the others
like generating the key material and inspection of low level dynamic config.
Furthermore, most documentation that can be found online points to using the 
"wg"
and "wg-quick" tools, so we want to support those, too.

[Dependencies]
OK:
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring
  more tests now.

Problems:
- Other dependencies to MIR due to this:
  - checked with check-mir
  - not listed in seeded-in-ubuntu
  - none of the (potentially auto-generated) dependencies (Depends
    and Recommends) that are present after build are not in main
  + nftables: we could switch Recommends to iptables, but nftables is the future
    please refer to (LP: #1887187)
  + wireguard-dkms: recommended by wireguard-tools, it's part of the same source
    package, but we probably want to drop that, as we have the WireGuard modules
    in the kernel. Or at least we'd want to change Recommends: wireguard-dkms to
    Suggests: wireguard-dkms (LP: #1873288)

[Embedded sources and static linking]
OK:
- no embedded source present
- no static linking
- does not have odd Built-Using entries
- not a go package, no extra constraints to consider in that regard

Problems: None

[Security]
OK:
- history of CVEs does not look concerning (Andreas gave a great summary above)
- does not run a daemon as root (but controls a kernel module)
- does not use webkit1,2
- does not use lib*v8 directly
- does not open a port/socket (the controlled kernel module does, tho)
- 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)
- does not deal with security attestation (secure boot, tpm, signatures)

Problems:
- does parse data formats (ini config files, doesn't look worrying)

[Common blockers]
OK:
- does not FTBFS currently
- no new python2 dependency

Problems:
- does NOT have a test suite that runs at build time, we should add at least
  the trivial autopkgtest generating and checking keys, as suggested
- does NOT have a non-trivial test suite that runs as autopkgtest, we should
  integrate more testing (LP: #1952102) as suggested by adding the new "vpn"
  test and/or copying the non-trivial autopkgtest from wireguard-linux-compat

[Packaging red flags]
OK:
- symbols tracking not applicable for this kind of code.
- d/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is good
- Debian/Ubuntu update history is good
- the current release is packaged
- no massive Lintian warnings
- d/rules is rather clean
- It is not on the lto-disabled list

Problems:
- Ubuntu does carry a delta, but it is reasonable and maintenance under
  control, LP: #1890201 should be revisisted to check if we still need this
  delta now that our kernels support WireGuard natively
- promoting this does to cause issues for MOTUs (@unit193) that so far
  maintained the package, but with the server team taking care of it we should
  be fine

[Upstream red flags]
OK:
- no Errors/warnings during the build
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of user nobody
- no use of setuid
- no important open bugs (crashers, etc) in Debian or Ubuntu
- no dependency on webkit, qtwebkit, seed or libgoa-*
- not part of the UI for extra checks
- no translation present, but none needed for this case

Problems:
- use of sudo in src/wg-quick/linux.bash, but that looks sane

** Changed in: wireguard (Ubuntu)
     Assignee: Lukas Märdian (slyon) => Ubuntu Security Team (ubuntu-security)

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1950317

Title:
  [MIR] Wireguard

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/wireguard/+bug/1950317/+subscriptions


-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to