[v247] backport routing policy rule fix

Bug #1925827 reported by Zhang Youfu
14
This bug affects 1 person
Affects Status Importance Assigned to Milestone
systemd (Ubuntu)
Fix Released
Undecided
Unassigned
Hirsute
Fix Released
Low
Zhang Youfu

Bug Description

[impact]

routing policy rules not correctly configured

[test case]

more detail in upstream bug linked from original description.

configure interface with:

[Match]
Name = ens3

[Network]
Address = 10.0.0.1/32

[RoutingPolicyRule]
Family = both
IncomingInterface = ens3
Table = 42
Priority = 42

then networkctl reload. then update the network file with:

[Route]
Table = 42
Destination = 10.0.0.0/24
Gateway = 0.0.0.0

and run networkctl reload again, checking systemd-networkd for error.

[regression potential]

failure to properly configure networking in general, or policy routes.

[scope]

this is needed only for h.

this is fixed already in i, and this is not reproducable in g.

see original descrption for link to specific upstream issue and pr.

[original description]

The original issue can be found at https://github.com/systemd/systemd/issues/18107.
I filed a backport PR (https://github.com/systemd/systemd-stable/pull/96) against v247-stable branch, which got merged and released in v247.4.
However due to the freezing state of Debian bullseye, upstream systemd package is frozen at v247.3.
Please apply this patchset for Ubuntu if possible.
Thanks.

CVE References

Revision history for this message
Zhang Youfu (zhangyoufu) wrote :
description: updated
Revision history for this message
Ubuntu Foundations Team Bug Bot (crichton) wrote :

The attachment "96.patch" seems to be a patch. If it isn't, please remove the "patch" flag from the attachment, remove the "patch" tag, and if you are a member of the ~ubuntu-reviewers, unsubscribe the team.

[This is an automated message performed by a Launchpad user owned by ~brian-murray, for any issues please contact him.]

tags: added: patch
Revision history for this message
Dan Streetman (ddstreet) wrote :

I'm able to reproduce this on hirsute, but not groovy, so this seems to affect only hirsute; please correct me if that's wrong.

Due to the rather large size of the patch to fix this, and the very low impact (only 'networkctl reload' doesn't work, normal systemd-networkd startup works), I think it's unlikely this will make it into hirsute before its EOL.

However I'll leave it open for now.

Changed in systemd (Ubuntu):
status: New → Fix Released
Changed in systemd (Ubuntu Hirsute):
importance: Undecided → Low
status: New → Triaged
Revision history for this message
Zhang Youfu (zhangyoufu) wrote :

> I'm able to reproduce this on hirsute, but not groovy, so this seems to affect only hirsute; please correct me if that's wrong.
That’s correct.

> only 'networkctl reload' doesn't work, normal systemd-networkd startup works
`systemctl restart systemd-networkd` doesn’t work either.

Dan Streetman (ddstreet)
Changed in systemd (Ubuntu Hirsute):
assignee: nobody → Zhang Youfu (zhangyoufu)
status: Triaged → In Progress
Dan Streetman (ddstreet)
description: updated
Revision history for this message
Dan Streetman (ddstreet) wrote :

I have this queued up for hirsute, with a test build here:
https://launchpad.net/~ddstreet/+archive/ubuntu/systemd

it seems to fix the issue for me, please let me know if it doesn't work for you, I plan to upload systemd either this week or early next week

Revision history for this message
Brian Murray (brian-murray) wrote : Please test proposed package

Hello Zhang, or anyone else affected,

Accepted systemd into hirsute-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/systemd/247.3-3ubuntu3.2 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-hirsute to verification-done-hirsute. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-hirsute. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in systemd (Ubuntu Hirsute):
status: In Progress → Fix Committed
tags: added: verification-needed verification-needed-hirsute
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (systemd/247.3-3ubuntu3.2)

All autopkgtests for the newly accepted systemd (247.3-3ubuntu3.2) for hirsute have finished running.
The following regressions have been reported in tests triggered by the package:

umockdev/0.15.4-1 (armhf)
initramfs-tools/0.139ubuntu3 (amd64)
apt/2.2.4ubuntu0.1 (armhf)
netplan.io/0.102-0ubuntu3 (amd64)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/hirsute/update_excuses.html#systemd

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Zhang Youfu (zhangyoufu) wrote :

Tested systemd 247.3-3ubuntu3.2 on hirsute, without problem.

Revision history for this message
Dan Streetman (ddstreet) wrote :

thanks, marking verified

tags: added: verification-done verification-done-hirsute
removed: verification-needed verification-needed-hirsute
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package systemd - 247.3-3ubuntu3.4

---------------
systemd (247.3-3ubuntu3.4) hirsute-security; urgency=medium

  * SECURITY UPDATE: DoS via DHCP FORCERENEW
    - debian/patches/CVE-2020-13529.patch: tentatively ignore FORCERENEW
      command in src/libsystemd-network/sd-dhcp-client.c.
    - CVE-2020-13529
  * SECURITY UPDATE: denial of service via stack exhaustion
    - debian/patches/CVE-2021-33910.patch: do not use strdupa() on a path
      in src/basic/unit-name.c.
    - CVE-2021-33910

 -- Marc Deslauriers <email address hidden> Tue, 20 Jul 2021 07:38:18 -0400

Changed in systemd (Ubuntu Hirsute):
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.