Review for Source Package: ruby-rack-session [Summary]
ruby-rack-session is a session implementation for Rack. It used to be part of ruby-rack but now it's split. The package is in a good shape apart from a couple of issues listed in TODOs. Portion of this soure code had gone under a security review during ruby-rack MIR (https://bugs.launchpad.net/ubuntu/+source/ruby-rack/+bug/1990575). However this was 3 years ago and rack-session has been developed since. In addition CVE-2025-46336 (https://ubuntu.com/security/CVE-2025-46336) has been reported. Therefore a security review is due. 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: ruby-rack-session Specific binary packages built, but NOT to be promoted to main: <None> Notes: Required TODOs: 1. Current release 2.1.1 is not packaged. Please bump to 2.1.1. It contains the fix for CVE-2025-46336. Recommended TODOs: 2. There are some warnings during build. Please address them if possible. Details in [Upstream red flags] section. 3. The package should get a team bug subscriber before being promoted [Rationale, Duplication and Ownership] This package is required in main to avoid future component-mismatches (ruby-sinatra). Server 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 Dependencies to MIR due to this - SRCPKG checked with `check-mir` - all dependencies can be found in `seeded-in-ubuntu` (already in main) - none of the (potentially auto-generated) dependencies (Depends and Recommends) that are present after build are not in main - no -dev/-debug/-doc packages that need exclusion - No dependencies in main that are only superficially tested requiring more tests now. Problems: None [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 Problems: None [Security] OK: - does not run a daemon as root - does not use webkit1,2 - does not use lib*v8 directly - does not expose any external endpoint (port/socket/... or similar) - 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: - History of CVEs: https://ubuntu.com/security/CVE-2025-46336 - does not parse data formats (files [images, video, audio, xml, json, asn.1], network packets, structures, ...) from an untrusted source. - does not process arbitrary web content - does not 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. - debian/watch is present and looks ok (if needed, e.g. non-native) - Upstream update history is good - promoting this does not seem to cause issues for MOTUs that so far maintained the package - no massive Lintian warnings - debian/rules is rather clean - It is not on the lto-disabled list Problems: - Debian/Ubuntu update history used to be sporadic but latetly is good. - the current release is not packaged [Upstream red flags] OK: - no incautious use of malloc/sprintf (the language has no direct MM) - no use of sudo, gksu, pkexec, or LD_LIBRARY_PATH (usage is OK inside tests) - no use of user nobody - no use of setuid / setgid - 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: - Warnings during build: dpkg-gencontrol: warning: Depends field of package ruby-rack-session: substitution variable ${shlibs:Depends} used, but is not defined dpkg-gencontrol: warning: package ruby-rack-session: substitution variable ${ruby:Versions} used, but is not defined WARNING: open-ended dependency on base64 (>= 0.1.0) is not recommended if base64 is semantically versioned, use: add_runtime_dependency "base64", "~> 0.1", ">= 0.1.0" WARNING: open-ended dependency on rack (>= 3.0.0) is not recommended if rack is semantically versioned, use: add_runtime_dependency "rack", "~> 3.0", ">= 3.0.0" WARNING: open-ended dependency on bundler (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on minitest-global_expectations (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on minitest-sprint (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: open-ended dependency on rake (>= 0, development) is not recommended use a bounded requirement, such as "~> x.y" WARNING: See https://guides.rubygems.org/specification-reference/ for help ** CVE added: https://cve.mitre.org/cgi-bin/cvename.cgi?name=2025-46336 ** Changed in: ruby-rack-session (Ubuntu) Assignee: Ioanna Alifieraki (joalif) => (unassigned) ** Changed in: ruby-rack-session (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/2106774 Title: [MIR] ruby-rack-session To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/ruby-rack-session/+bug/2106774/+subscriptions -- ubuntu-bugs mailing list [email protected] https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs
