Bug 1744994 - ovn-controller crashes when DNS is configured and a (specific/malformed) DNS packet is received
Summary: ovn-controller crashes when DNS is configured and a (specific/malformed) DNS ...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openvswitch
Version: 13.0 (Queens)
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: z9
: 13.0 (Queens)
Assignee: Dumitru Ceara
QA Contact: Eran Kuris
URL:
Whiteboard:
Depends On: 1744991 1746198
Blocks:
TreeView+ depends on / blocked
 
Reported: 2019-08-23 12:53 UTC by Dumitru Ceara
Modified: 2020-03-26 12:58 UTC (History)
10 users (show)

Fixed In Version: openvswitch-2.9.0-117.el7fdp
Doc Type: If docs needed, set a value
Doc Text:
Clone Of: 1744991
Environment:
Last Closed: 2020-03-26 12:58:47 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Dumitru Ceara 2019-08-23 12:53:58 UTC
+++ This bug was initially created as a clone of Bug #1744991 +++

Description of problem:
When DNS is configured in OVN for a Logical Switch ovn-controller crashes when certain DNS packets are received.

Version-Release number of selected component (if applicable):


How reproducible:

Steps to Reproduce:
1. Configure a Logical Switch and a VIF
2. Configure a DNS entry for the Logical Switch.
3. Inject a specific DNS packet from the VIF. For example, with Scapy:

    >>> p = IP(dst='10.0.0.2',src='10.0.0.3')/UDP(dport=53)/('a'*364)
    >>> send(p)

Actual results:
ovn-controller stays stuck in an infinite loop and keeps allocating memory until it aborts.

Expected results:
The packet should be processed without issues.


Additional info:

Comment 3 Roman Safronov 2019-10-29 16:06:04 UTC
Verified on 13.0-RHEL-7/2019-10-23.1 with openvswitch-2.9.0-117.bz1733374.1.el7ost.x86_64 

Scenario:
Created external network, subnet, router, connected router to the external network.
Created internal network with a DNS entry, connected to the router.
Created security group with rules allowing ssh, icmp and dns.
Spawned 2 VMs connected to the the internal network and assigned FIPs.
From one VM sent a malformed DNS packet (see description) with src set to the VM FIP and dst set to the FIP of the second VM.
Verified that ovn-controller remains stable, no stuck, no high memory consumption or CPU usage.


Note You need to log in before you can comment on or make changes to this bug.