Bugzilla – Bug 1222495
VUL-0: CVE-2024-28732: python-ryu: infinite loops in OpenFlow parsers
Last modified: 2024-04-12 13:42:56 UTC
An issue was discovered in OFPMatch in parser.py in Faucet SDN Ryu version 4.34, allows remote attackers to cause a denial of service (DoS) (infinite loop). References: http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2024-28732 https://www.cve.org/CVERecord?id=CVE-2024-28732 https://gist.github.com/ErodedElk/1133d64dde2d92393a065edc9b243792 https://github.com/faucetsdn/ryu/issues/188
No patch for this issue seems to be available as of 2024-04-08. In the upstream README file it is possible to confirm that there are no current maintainers for this package ('PLEASE READ: RYU NOT CURRENTLY MAINTAINED').
Can't reproduce on devstack rocky. The openflow controller is the neutron-openvswitch-agent and it listens on 127.0.0.1:6633 - so not accessible to remote attackers. The packet in the reproducer causes a parse exception which causes the loop to exit. There is a bug in the exception handler, but no infinite loop.
Created attachment 874160 [details] parse error exception Note: the neutron-openvswitch-agent continues to work fine after this. There is no denial of service, and no pegged cpus.
Checked soc8 and soc9. Both listen on localhost:6633. The reproducer in https://github.com/faucetsdn/ryu/issues/188 does not cause an infinite loop or denial of service of the neutron-openvswitch-agent openflow controller.