Review for Source Package: uwsgi

[Summary]
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: uwsgi-core,
uwsgi, uwsgi-emperor

Specific binary packages built, but NOT to be promoted to main: uwsgi-
dev, uwsgi-extra, uwsgi-plugin-alarm-curl, uwsgi-plugin-alarm-xmpp,
uwsgi-plugin-curl-cron, uwsgi-plugin-emperor, uwsgi-plugin-geoip, uwsgi-
plugin-graylog2, uwsgi-plugin-ldap, uwsgi-plugin-router-access, uwsgi-
plugin-sqlite3, uwsgi-plugin-xslt, uwsgi-src

Required TODOs:
1. libzmq5 runtime dependency should be promoted to main 
  - https://bugs.launchpad.net/ubuntu/+source/zeromq3/+bug/1597439 
2. Companion MIR for uwsgi-plugin-python3 should land to main 
  - https://bugs.launchpad.net/ubuntu/+source/uwsgi-plugin-python/+bug/2152614
3. The package should get a team bug subscriber before being promoted
4. Server team which will be impacted by this should be made aware.

Recommendeda TODOs:
5. Assess whether systemd units could set NoNewPrivileges=,
   PrivateTmp=, ProtectSystem=, ProtectHome=, RestrictAddressFamilies= or
   CapabilityBoundingSet=. And whether to provide apparmor profile.


[Rationale, Duplication and Ownership]
There is no other package in main providing the same functionality.
  - mod-wsgi is in main but upstream OpenStack is dropping it.
Openstack team is committed to own long term maintenance of this package.
The rationale given in the report seems valid and useful for Ubuntu

[Dependencies]
OK:
- no other build-time Dependencies with active code in the final binaries
  to MIR due to this
- no -dev/-debug/-doc packages that need exclusion
- No dependencies in main that are only superficially tested requiring
  more tests now.

Problems:
- Further runtime dependencies to MIR due to this

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

Problems: None

[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 process arbitrary web content
- does not use centralized online accounts
- does not integrate arbitrary javascript into the desktop
- does not deal with security attestation (secure boot, tpm, signatures)
- PARTIALly this makes appropriate (for its exposure) use of established risk
  mitigation features (dropping permissions, using temporary environments,
  restricted users/groups, seccomp, systemd isolation features,
  apparmor, ...)

Problems:
- does not parse data formats (files [images, video, audio,
  xml, json, asn.1], network packets, structures, ...) from
  an untrusted source.
- does expose any external endpoint (port/socket/... or similar)
- does deal with system authentication (eg, pam), etc)
- does deal with cryptography (en-/decryption, certificates,
  signing, ...)

[Common blockers]
OK:
- does not FTBFS currently
- does have a test suite that runs at build time
  - test suite fails will fail the build upon error.
- does have a non-trivial test suite that runs as autopkgtest
- This does not need special HW for build or test
- no new python2 dependency

Problems: None

[Packaging red flags]
OK:
- Ubuntu does not carry a delta
- symbols tracking not applicable for this kind of code because it
  the shared objects are only used internally and no headers made
  available.
- debian/watch is present and looks ok (if needed, e.g. non-native)
- Upstream update history is slow
- Debian/Ubuntu update history is good
- 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
- debian/rules is reasonably clean
- It is not on the lto-disabled list

Problems: None

[Upstream red flags]
OK:
- no incautious use of malloc/sprintf (as far as we can check it)
- no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH
- no use of user 'nobody' outside of tests
- setuid/setgid usage is deliberate privilege-dropping code (core/uwsgi.c,
  core/gateway.c, core/daemons.c, core/utils.c). Tthis is how
  uwsgi drops from root to the configured uid/gid. It does not
  install suid/sgid binaries.
- no important open bugs (crashers, etc) in Debian or Ubuntu
- no dependency on webkit, qtwebkit or libseed
- not part of the UI for extra checks
- no translation present, but none needed for this case (user visible)?

Problems:
- A few warnings during build


** Changed in: uwsgi (Ubuntu)
     Assignee: Ioanna Alifieraki (joalif) => (unassigned)

** Changed in: uwsgi (Ubuntu)
     Assignee: (unassigned) => 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/2151202

Title:
  [MIR] uwsgi

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


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to