Bug 1711722 (CVE-2019-10141)

Summary: CVE-2019-10141 openstack-ironic-inspector: SQL Injection vulnerability when receiving introspection data
Product: [Other] Security Response Reporter: Summer Long <slong>
Component: vulnerabilityAssignee: Red Hat Product Security <security-response-team>
Status: CLOSED ERRATA QA Contact:
Severity: high Docs Contact:
Priority: high    
Version: unspecifiedCC: bfournie, dbecker, dtantsur, jjoyce, jkreger, jschluet, kbasil, lhh, lpeer, mburns, rhos-maint, sclewis, slinaber, zbitter
Target Milestone: ---Keywords: Security
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: openstack-ironic-inspector 5.0.2, openstack-ironic-inspector 6.0.3, openstack-iron-inspector 7.2.4, openstack-ironic-inspector 8.0.3, openstack-ironic-inspector 8.2.1 Doc Type: If docs needed, set a value
Doc Text:
A SQL-injection vulnerability was found in openstack-ironic-inspector's node_cache.find_node(). This function makes a SQL query using unfiltered data from a server reporting inspection results (by a POST to the /v1/continue endpoint). Because the API is unauthenticated, the flaw could be exploited by an attacker with access to the network on which ironic-inspector is listening. Because of how ironic-inspector uses the query results, it is unlikely that data could be obtained. However, the attacker could pass malicious data and create a denial of service.
Story Points: ---
Clone Of: Environment:
Last Closed: 2019-07-12 13:07:11 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On: 1710402, 1712181, 1712182, 1712183, 1712184, 1712185, 1712186    
Bug Blocks: 1711459    

Description Summer Long 2019-05-19 23:24:47 UTC
There is an SQL-injection vulnerability in the inpector's node_cache.find_node(). This function makes an SQL query using unescaped data received on the wire from a server reporting inspection results (specifically, via a POST to the /v1/continue endpoint).

The unescaped data should not be trusted - the API is unauthenticated and it's likely that anything with access to the network on which ironic-inspector is listening could exploit the vulnerability.

Because of how the results of the query are used, there appears to be no way to exploit this vulnerability to exfiltrate data. It could be exploited for destructive ends by passing malicious data (e.g. "\'; DROP DATABASE;\'").

Every release from RHOS 8 on is affected.

Comment 1 Summer Long 2019-05-19 23:31:17 UTC
Acknowledgments:

Name: Zane Bitter (Red Hat)

Comment 7 Summer Long 2019-05-21 00:31:57 UTC
Created openstack-ironic-inspector tracking bugs for this issue:

Affects: openstack-rdo [bug 1712186]

Comment 8 Summer Long 2019-05-21 00:49:44 UTC
Upstream patch: https://review.opendev.org/660234

Comment 13 errata-xmlrpc 2019-07-02 19:45:18 UTC
This issue has been addressed in the following products:

  Red Hat OpenStack Platform 14.0 (Rocky)

Via RHSA-2019:1669 https://access.redhat.com/errata/RHSA-2019:1669

Comment 15 errata-xmlrpc 2019-07-10 09:18:12 UTC
This issue has been addressed in the following products:

  Red Hat OpenStack Platform 10.0 (Newton)

Via RHSA-2019:1722 https://access.redhat.com/errata/RHSA-2019:1722

Comment 16 errata-xmlrpc 2019-07-10 13:02:24 UTC
This issue has been addressed in the following products:

  Red Hat OpenStack Platform 13.0 (Queens)

Via RHSA-2019:1734 https://access.redhat.com/errata/RHSA-2019:1734

Comment 17 Product Security DevOps Team 2019-07-12 13:07:11 UTC
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):

https://access.redhat.com/security/cve/cve-2019-10141

Comment 19 errata-xmlrpc 2019-08-15 14:06:27 UTC
This issue has been addressed in the following products:

  Red Hat OpenStack Platform 9.0 (Mitaka) director

Via RHSA-2019:2505 https://access.redhat.com/errata/RHSA-2019:2505