Bug 1173543
| Summary: | ACL QMF engine resolves queueRedirect call before ACL application | ||
|---|---|---|---|
| Product: | Red Hat Enterprise MRG | Reporter: | Zdenek Kraus <zkraus> |
| Component: | qpid-cpp | Assignee: | messaging-bugs <messaging-bugs> |
| Status: | CLOSED UPSTREAM | QA Contact: | Messaging QE <messaging-qe-bugs> |
| Severity: | high | Docs Contact: | |
| Priority: | medium | ||
| Version: | Development | CC: | jross |
| Target Milestone: | 3.3 | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | Doc Type: | Bug Fix | |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2025-02-10 03:43:45 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
Zdenek Kraus
2014-12-12 11:54:47 UTC
Chuck, you took a look at this. Could you explain what you found? The code checks for the queues to be in the proper sate before checking the ACL for user permission. A better security model would be to check the ACL user permission first and then the queue states. That would prevent information about the queues being exposed to unauthorized users. Moving the ACL check up to beginning of the management method appears trivial. Actually although the user permission is checked last there in no information leak about why the user could not redirect the queue when one of the queue state checks fails.
ACL FILE
========
acl deny zig@QPID redirect queue
acl allow all all
CONSOLE
=======
1 > qpid-config add queue a
2 > qpid-config add queue b
3 > qpid-ctrl -b zag/zag@localhost:5672 --class broker --id amqp-broker \
queueRedirect sourceQueue=a targetQueue=b
4 > qpid-ctrl -b zag/zag@localhost:5672 --class broker --id amqp-broker \
queueRedirect sourceQueue=a targetQueue=b
Error: error_code=65536 error_text=
5 > qpid-ctrl -b zig/zig@localhost:5672 --class broker --id amqp-broker \
queueRedirect sourceQueue=a targetQueue=b
Error: error_code=65536 error_text=
The log message for commands 4 and 5 is the same:
[Broker] error Queue redirect source queue: a is already redirected
but neither user sees that. The errors are masked by bz1173544 where the user sees 'error_code=65536' and no text.
This product has been discontinued or is no longer tracked in Red Hat Bugzilla. |