7 Aug 10:07
setmqaut +PUT on DLQ [was: Re: Notes from Defcon 15]
From: Niklas Gustavsson <niklas@...>
Subject: setmqaut +PUT on DLQ [was: Re: Notes from Defcon 15]
Newsgroups: gmane.network.mq.devel
Date: 2007-08-07 08:07:26 GMT
Subject: setmqaut +PUT on DLQ [was: Re: Notes from Defcon 15]
Newsgroups: gmane.network.mq.devel
Date: 2007-08-07 08:07:26 GMT
T-Rob wrote: > Thanks for the kind words Kerry and Niklas. > > I have not yet been able to get the version of the presentation that has > the notes pages posted to the IBM web site so I've decided to make it > temporarily available on my own. > http://www.t-rob.net/Downloads/IMPACT2007-4224.zip Thanks T-Rob, the presentation is very interesting! Now, I have a few questions regarding some of the recommendations that I hope we could discuss. These are issues that we have previously discussed at work, sometimes without getting to a firm conclusion. I intend to write up the result of these threads if we get anywhereNow for the first. Your mention giving applications PUT authority to the DLQ, but to prefer application specific exception queues. To make it a bit easier to follow for those who haven't read the slides, here's the significant part: "Applications should always have PUT access to the DLQ but rarely should they have GET access since this would allow legitimate apps to delete other application’s DLQ messages or an attacker to wipe out traces of the attack. Remember, the Dead Letter Queue is a shared resource. It is usually better to set up application-specific exception queues than to use the DLQ as a default backout or exception queue. This altogether eliminates the need for applications to manage messages in the DLQ." If you were to give an application PUT authority on the DLQ in a shared environment, how would you then handle the case of that application (or an attacker using it's account) of faking some other applications messages? For example, application A could put a message looking like one on the way to application B on the DLQ. A DLQ handler or an administrator could then "re-insert" this message onto the correct application B queue (to which application A would not have any access). Are there legitimate cases where an application really needs PUT authority to the DLQ rather than its own exception queue? I suspect that there is (like COTS applications requiring the DLQ and not supporting configured exception queues), in which case one would have to figure out how to handle the attack described above. /niklas To unsubscribe, write to LISTSERV@... and, in the message body (not the subject), write: SIGNOFF MQSERIES
Now for the first. Your mention giving applications PUT authority to the
DLQ, but to prefer application specific exception queues. To make it a
bit easier to follow for those who haven't read the slides, here's the
significant part:
"Applications should always have PUT access to the DLQ but rarely should
they have GET access since this would allow legitimate apps to delete
other application’s DLQ messages or an attacker to wipe out traces of
the attack. Remember, the Dead Letter Queue is a shared resource. It is
usually better to set up application-specific exception queues than to
use the DLQ as a default backout or exception queue. This altogether
eliminates the need for applications to manage messages in the
DLQ."
If you were to give an application PUT authority on the DLQ in a shared
environment, how would you then handle the case of that application (or
an attacker using it's account) of faking some other applications
messages? For example, application A could put a message looking like
one on the way to application B on the DLQ. A DLQ handler or an
administrator could then "re-insert" this message onto the correct
application B queue (to which application A would not have any access).
Are there legitimate cases where an application really needs PUT
authority to the DLQ rather than its own exception queue? I suspect that
there is (like COTS applications requiring the DLQ and not supporting
configured exception queues), in which case one would have to figure out
how to handle the attack described above.
/niklas
To unsubscribe, write to
RSS Feed