Bug 1101533
Summary: | QMF opcode _query_request bypasses any ACL authorisation | ||
---|---|---|---|
Product: | Red Hat Enterprise MRG | Reporter: | Pavel Moravec <pmoravec> |
Component: | qpid-cpp | Assignee: | Pavel Moravec <pmoravec> |
Status: | CLOSED ERRATA | QA Contact: | Matej Lesko <mlesko> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | 3.0 | CC: | esammons, freznice, jross, mlesko, pmoravec |
Target Milestone: | 3.1 | Keywords: | TestCaseProvided |
Target Release: | --- | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
Fixed In Version: | qpid-cpp-0.30-2 | Doc Type: | Bug Fix |
Doc Text: |
It was discovered that the QMF query "_query_request" bypassed ACL authorization. This allowed any user with minimal privileges to successfully query any object within the broker, regardless of the ACL rule in place for the object. An enhancement adds ACL authorization for the query method, which prevents users from querying objects they do not have permissions for.
|
Story Points: | --- |
Clone Of: | Environment: | ||
Last Closed: | 2015-04-14 13:48:07 UTC | Type: | Bug |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Pavel Moravec
2014-05-27 12:38:10 UTC
All opcodes are: const string protocol::HEADER_OPCODE_EXCEPTION = "_exception"; const string protocol::HEADER_OPCODE_AGENT_LOCATE_REQUEST = "_agent_locate_request"; const string protocol::HEADER_OPCODE_AGENT_LOCATE_RESPONSE = "_agent_locate_response"; const string protocol::HEADER_OPCODE_AGENT_HEARTBEAT_INDICATION = "_agent_heartbeat_indication"; const string protocol::HEADER_OPCODE_QUERY_REQUEST = "_query_request"; const string protocol::HEADER_OPCODE_QUERY_RESPONSE = "_query_response"; const string protocol::HEADER_OPCODE_SUBSCRIBE_REQUEST = "_subscribe_request"; const string protocol::HEADER_OPCODE_SUBSCRIBE_RESPONSE = "_subscribe_response"; const string protocol::HEADER_OPCODE_SUBSCRIBE_CANCEL_INDICATION = "_subscribe_cancel_indication"; const string protocol::HEADER_OPCODE_SUBSCRIBE_REFRESH_INDICATION = "_subscribe_refresh_indication"; const string protocol::HEADER_OPCODE_DATA_INDICATION = "_data_indication"; const string protocol::HEADER_OPCODE_METHOD_REQUEST = "_method_request"; const string protocol::HEADER_OPCODE_METHOD_RESPONSE = "_method_response"; Worth checking what others do as well. Upstream review request: https://reviews.apache.org/r/22606/ Committed as r1603364. Verified for qpid-cpp-0.30-7. Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHEA-2015-0805.html |