ASG
IBM
Zystems
Cressida
Icon
Netflexity
 
  MQSeries.net
Search  Search       Tech Exchange      Education      Certifications      Library      Info Center      SupportPacs      LinkedIn  Search  Search                                                                   FAQ  FAQ   Usergroups  Usergroups
 
Register  ::  Log in Log in to check your private messages
 
RSS Feed - WebSphere MQ Support RSS Feed - Message Broker Support

MQSeries.net Forum Index » General Discussion » Is my MQ secure ?

Post new topic  Reply to topic Goto page 1, 2  Next
 Is my MQ secure ? « View previous topic :: View next topic » 
Author Message
AkankshA
PostPosted: Tue Apr 14, 2009 8:30 pm    Post subject: Is my MQ secure ? Reply with quote

Grand Master

Joined: 12 Jan 2006
Posts: 1494
Location: Singapore

Hi,

Ever since i was using MQ i was told that i should not have any of the svrconn channel with MCAUSER as mqm as that will make anyone to connect to my MQ server, but recently i figured that, if i want to keep my MQ completely secure from outside world, then i shall keep all SVRCONN channel's MCAUSER as NOBODY but how will my application connect then

Ok, giving you a brief of what i di, while adding a remote queue manager to my mq explorer, i gave user id as mqm. when it prompted for password, i gave any junk value and i got connected. Now i can do anything with that remote queue manager.... create delete.. anything

so all i need is normal information which any client application would require and which i used to give out freelly and happily...

Isn't this a huge loophole in our so called MQ security


_________________
Cheers
Back to top
View user's profile Send private message Visit poster's website
exerk
PostPosted: Tue Apr 14, 2009 11:13 pm    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

Have a look at these links:

http://www.ibm.com/developerworks/websphere/techjournal/0701_col_wyatt/0701_col_wyatt.html

http://www.prolifics.com/demos/impact2008/MQSecurityStrategyImpact2008_rfs.pdf
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Wed Apr 15, 2009 5:42 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

You give AppA a SVRCONN channel called APPA_CHANNEL. You make the MCAUSER of that channel APPA_ID. You use setmqaut to grant APPA_ID the minimum rights it needs. You install SSL or a Security Exit on APPA_CHANNEL to insure only AppA can use that channel.

Repeat for AppB.
Repeat for AppC.
.
.
.
Repeat for channels used by MQ Admin tools like MO71 and MQExplorer.


Then look at the other incoming channels like CLUSRCVRs and RCVRs, and secure them as well, so that people can't admin your QM remotely.

Any channels not meant to be used, like the SYSTEM.* ones, tag with a bogus ID, set the max message size to 1.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
bruce2359
PostPosted: Wed Apr 15, 2009 5:54 am    Post subject: Reply with quote

Poobah

Joined: 05 Jan 2008
Posts: 9469
Location: US: west coast, almost. Otherwise, enroute.

Quote:
set the max message size to 1

Devious, yet simple and elegant. I like it.
_________________
I like deadlines. I like to wave as they pass by.
ב''ה
Lex Orandi, Lex Credendi, Lex Vivendi. As we Worship, So we Believe, So we Live.
Back to top
View user's profile Send private message
AkankshA
PostPosted: Wed Apr 15, 2009 6:52 am    Post subject: Reply with quote

Grand Master

Joined: 12 Jan 2006
Posts: 1494
Location: Singapore

PeterPotkay wrote:
You give AppA a SVRCONN channel called APPA_CHANNEL. You make the MCAUSER of that channel APPA_ID. You use setmqaut to grant APPA_ID the minimum rights it needs. You install SSL or a Security Exit on APPA_CHANNEL to insure only AppA can use that channel.

Repeat for AppB.
Repeat for AppC.
.
.
.
Repeat for channels used by MQ Admin tools like MO71 and MQExplorer.


Then look at the other incoming channels like CLUSRCVRs and RCVRs, and secure them as well, so that people can't admin your QM remotely.

Any channels not meant to be used, like the SYSTEM.* ones, tag with a bogus ID, set the max message size to 1.



sounds good but obviously i need to maintain application's id, n gotta create so many channels...
_________________
Cheers
Back to top
View user's profile Send private message Visit poster's website
mqjeff
PostPosted: Wed Apr 15, 2009 6:53 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

AkankshA wrote:
sounds good but obviously i need to maintain application's id, n gotta create so many channels...


The other choice is to leave your queue manager wide open to all hackers (and even worse, well meaning developers) who can reach the network address of any listener port.
Back to top
View user's profile Send private message
Sam Uppu
PostPosted: Wed Apr 15, 2009 7:15 am    Post subject: Reply with quote

Yatiri

Joined: 11 Nov 2008
Posts: 610

PeterPotkay wrote:
You give AppA a SVRCONN channel called APPA_CHANNEL. You make the MCAUSER of that channel APPA_ID. You use setmqaut to grant APPA_ID the minimum rights it needs. You install SSL or a Security Exit on APPA_CHANNEL to insure only AppA can use that channel.

Repeat for AppB.
Repeat for AppC.
.
.
.
Repeat for channels used by MQ Admin tools like MO71 and MQExplorer.


Then look at the other incoming channels like CLUSRCVRs and RCVRs, and secure them as well, so that people can't admin your QM remotely.

Any channels not meant to be used, like the SYSTEM.* ones, tag with a bogus ID, set the max message size to 1.


Peter,
I am also following the same thing what you mentioned above but not using SSL for the SVRCONN channels. Do we really need to use SSL when we have MQ used internal to our organization?. We are using a seperate SVRCONN channel for each app and providing the app id in MCAUSER of SVRCONN channel and granting the authorities via OAM for the MQ objects.

Thanks.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Wed Apr 15, 2009 7:23 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

Or you OK with AppA using AppB's channels? If yes, no need for SSL or a Security Exit for authentication.

Or you OK with the data flowing in clear text from AppA's client server to the Queue Manager? If yes, then no need for SSL.

If AppA can use AppB's channel, there is no benefit, other than extra work, in making seperate IDs for each channel. You should still have seperate SVRCONN channels regardless.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
Sam Uppu
PostPosted: Wed Apr 15, 2009 7:33 am    Post subject: Reply with quote

Yatiri

Joined: 11 Nov 2008
Posts: 610

Quote:
Or you OK with AppA using AppB's channels? If yes, no need for SSL or a Security Exit for authentication.


Lets say, the app id for AppA is AppA_id1
The SVRCONN channel will be AppA.SVRCONN with MCAUSER('AppA_id1')

&
the app id for AppB is AppB_id2.
The SVRCONN channel will be AppB.SVRCONN with MCAUSER('AppB_id2')

The AppA will fail to access the QMgr objects when it uses the channel AppB's channel- AppB.SVRCONN with MCAUSER('AppB_id2') as the AppA's id (AppA_id1) is not in the MCAUSER of AppB.SVRCONN, correct?.

Thanks.
Back to top
View user's profile Send private message
mqjeff
PostPosted: Wed Apr 15, 2009 7:35 am    Post subject: Reply with quote

Grand Master

Joined: 25 Jun 2008
Posts: 17447

Sam Uppu wrote:
The AppA will fail to access the QMgr objects when it uses the channel AppB's channel- AppB.SVRCONN with MCAUSER('AppB_id2') as the AppA's id (AppA_id1) is not in the MCAUSER of AppB.SVRCONN, correct?.


It will fail to access any objects that are restricted to AppA_id1. It will have full access to all objects that are restricted to AppB_id2.

And there's nothing that tells you that it's AppA connecting tot AppB.SVRCONN or AppB.

Unless you use SSL.
Back to top
View user's profile Send private message
gbaddeley
PostPosted: Wed Apr 15, 2009 6:33 pm    Post subject: Reply with quote

Jedi Knight

Joined: 25 Mar 2003
Posts: 2538
Location: Melbourne, Australia

PeterPotkay wrote:
You give AppA a SVRCONN channel called APPA_CHANNEL. You make the MCAUSER of that channel APPA_ID. You use setmqaut to grant APPA_ID the minimum rights it needs. You install SSL or a Security Exit on APPA_CHANNEL to insure only AppA can use that channel.

Repeat for AppB.
Repeat for AppC.
.
.
.
Repeat for channels used by MQ Admin tools like MO71 and MQExplorer.


Agree.

Quote:
Then look at the other incoming channels like CLUSRCVRs and RCVRs, and secure them as well, so that people can't admin your QM remotely.

Any channels not meant to be used, like the SYSTEM.* ones, tag with a bogus ID, set the max message size to 1.


Setting MCAUSER to 'nobody' is sufficient, assuming this userid doesn't exist on the system. There is no need to set MAXMSGL.
_________________
Glenn
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Thu Apr 16, 2009 5:33 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

gbaddeley wrote:
Quote:
Then look at the other incoming channels like CLUSRCVRs and RCVRs, and secure them as well, so that people can't admin your QM remotely.

Any channels not meant to be used, like the SYSTEM.* ones, tag with a bogus ID, set the max message size to 1.


Setting MCAUSER to 'nobody' is sufficient, assuming this userid doesn't exist on the system. There is no need to set MAXMSGL.


As long as you are at MQ 6.0.2.5 or better.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
Sam Uppu
PostPosted: Thu Apr 16, 2009 7:47 am    Post subject: Reply with quote

Yatiri

Joined: 11 Nov 2008
Posts: 610

mqjeff wrote:
Sam Uppu wrote:
The AppA will fail to access the QMgr objects when it uses the channel AppB's channel- AppB.SVRCONN with MCAUSER('AppB_id2') as the AppA's id (AppA_id1) is not in the MCAUSER of AppB.SVRCONN, correct?.


It will fail to access any objects that are restricted to AppA_id1. It will have full access to all objects that are restricted to AppB_id2.

And there's nothing that tells you that it's AppA connecting tot AppB.SVRCONN or AppB.

Unless you use SSL.


It sounds like the AppA can use the application id as AppB and can access the AppB's svrconn channel - AppB.SVRCONN MCAUSER('AppB_id2)?. Correct.

Can an application override the Application id of a message with a different id whichever it wants?.
Quote:
** Identity Context
UserIdentifier : 'AppB_id2 '


Is it possible for the application - AppA to override the 'UserIdentifier' filed in MQMD to 'AppB_id2'?.

Thanks.
Back to top
View user's profile Send private message
PeterPotkay
PostPosted: Thu Apr 16, 2009 8:17 am    Post subject: Reply with quote

Poobah

Joined: 15 May 2001
Posts: 7722

It could be possible.

+altusr

An ID with +altusr means you have no MQ Security for anyone allowed to connect as that ID.
_________________
Peter Potkay
Keep Calm and MQ On
Back to top
View user's profile Send private message
exerk
PostPosted: Thu Apr 16, 2009 1:41 pm    Post subject: Reply with quote

Jedi Council

Joined: 02 Nov 2006
Posts: 6339

Sam Uppu wrote:
It sounds like the AppA can use the application id as AppB and can access the AppB's svrconn channel - AppB.SVRCONN MCAUSER('AppB_id2)?. Correct.


Which is what SSL is for...
_________________
It's puzzling, I don't think I've ever seen anything quite like this before...and it's hard to soar like an eagle when you're surrounded by turkeys.
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic  Reply to topic Goto page 1, 2  Next Page 1 of 2

MQSeries.net Forum Index » General Discussion » Is my MQ secure ?
Jump to:  



You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
Protected by Anti-Spam ACP
 
 


Theme by Dustin Baccetti
Powered by phpBB © 2001, 2002 phpBB Group

Copyright © MQSeries.net. All rights reserved.