CVE-2018-17205

NameCVE-2018-17205
DescriptionAn issue was discovered in Open vSwitch (OvS) 2.7.x through 2.7.6, affecting ofproto_rule_insert__ in ofproto/ofproto.c. During bundle commit, flows that are added in a bundle are applied to ofproto in order. If a flow cannot be added (e.g., the flow action is a go-to for a group id that does not exist), OvS tries to revert back all previous flows that were successfully applied from the same bundle. This is possible since OvS maintains list of old flows that were replaced by flows from the bundle. While reinserting old flows, OvS has an assertion failure due to a check on rule state != RULE_INITIALIZED. This would work for new flows, but for an old flow the rule state is RULE_REMOVED. The assertion failure causes an OvS crash.
SourceCVE (at NVD; CERT, LWN, oss-sec, fulldisc, Red Hat, Ubuntu, Gentoo, SUSE bugzilla/CVE, GitHub advisories/code/issues, web search, more)

Vulnerable and fixed packages

The table below lists information on source packages.

Source PackageReleaseVersionStatus
openvswitch (PTS)jessie, jessie (lts)2.3.0+git20140819-3+deb8u1fixed
stretch (security), stretch (lts), stretch2.6.10-0+deb9u1fixed
buster (security), buster, buster (lts)2.10.7+ds1-0+deb10u5fixed
bullseye (security), bullseye2.15.0+ds1-2+deb11u5fixed
bookworm (security), bookworm3.1.0-2+deb12u1fixed
sid, trixie3.4.0-1fixed

The information below is based on the following data on fixed versions.

PackageTypeReleaseFixed VersionUrgencyOriginDebian Bugs
openvswitchsourcewheezy(unfixed)end-of-life
openvswitchsourcejessie(not affected)
openvswitchsourcestretch(not affected)
openvswitchsource(unstable)2.10.0+2018.08.28+git.8ca7c82b7d+ds1-1

Notes

[stretch] - openvswitch <not-affected> (Vulnerable code introduced later)
[jessie] - openvswitch <not-affected> (Vulnerable code does not exist; no such function)
https://github.com/openvswitch/ovs/commit/9a0ac025de9303334688ff08f01fc08604d2f624 (master)
https://github.com/openvswitch/ovs/commit/638d406e3b647359f3d82189d7a6ee56b4a54928 (branch-2.8)
https://github.com/openvswitch/ovs/commit/0befd1f3745055c32940f5faf9559be6a14395e6 (branch-2.7)

Search for package or bug name: Reporting problems