Michael, Great question!
cc'ing cas-dev as this relates to on-going work regarding attribute release in cas protocol. cc'ing newly spun up cas-appsec as this relates to on-going threat modeling work. If you have a compromised user-agent, mobile or otherwise, you likely have more pressing issues to worrying about than attributes leaking out of samlValidate. After all, at that point the user's credentials are available as well as any data or services they might have access to. That said, the issue of how the CAS server authenticates (and authorizes) services is an important one. As you point out, currently none of the "normal" validate endpoints authenticate the calling service. Back in the good ol' days before attributes (and proxy granting tickets), the only thing a malicious validate caller could get its hands on was the principal identifier. When PGTs came on-board (around 2003) for the portal use case, mutual service authentication was added via the SSL callback. Here the CAS server does authenticate (and authorize) the calling service for PGT access. Which is a good thing given the power of the PGT. It is interesting to note that under the current protocol...a malicious portal poses the same attack vector as a comprised user-agent regarding attribute leakage (all the same caveats regarding bigger issues apply of course). Now that attributes are common practice both via samlValidate and the custom (soon to be standard) CAS validate, it probably is time to give service authentication deeper consideration. Service validation would allow one to have more confidence regarding attribute release and potentially would allow us to simplify PGT and ClearPass mechanisms. Best, Bill On Tue, Mar 19, 2013 at 5:32 PM, Michael Easthope <michael.easthope+ja...@gmail.com> wrote: > That's basically it. Remember that the redirect is a request being sent to > the users device. If they are running a malicious app then the app can > choose not to honor that request. > > At that point, the app has all the information it needs to generate a > samlValidate call. There can be SSL between the original site and the > device; and between the device and the cas server - but on the device itself > the information is not protected. > > The service registry doesn't help because from the point of view of the cas > server, everything looks normal. > > On 20 Mar 2013 03:23, "Andrew Morgan" <mor...@orst.edu> wrote: >> >> On Tue, 19 Mar 2013, Michael Easthope wrote: >> >>> Its an edge case but if you can trick a user into logging in AND you >>> control the http flow (eg if you are running a malicious mobile >>> application >>> that pretends to be a legitimate app) you can intercept the redirect URL >>> that comes back from a successful sign-in. That redirect URL contains >>> both >>> the service URL and the service ticket - with that you can generate a >>> samlValidate request and obtain the user details - something we only want >>> to be releasing to our own applications. >> >> >> Let's see if I understand: >> >> 1. User goes to https://yoursite >> 2. User is redirected to CAS for login >> 3. User authenticates and is redirected back to https://yoursite >> 4. Something executes a Man-In-The-Middle attack to change the redirect to >> https://badsite? >> >> That doesn't make sense because SSL should be preventing MITM attacks. >> >> Or are you saying there is a mobile application (not a browser) that is >> talking to https://yoursite? >> >> Wouldn't the CAS Services Registry matching rules allow you to specify >> which sites are allowed? Or are we talking about a proxying situation? >> >> Andy >> >> -- >> You are currently subscribed to cas-u...@lists.jasig.org as: >> michael.easthope+ja...@gmail.com >> >> To unsubscribe, change settings or access archives, see >> http://www.ja-sig.org/wiki/display/JSG/cas-user > > -- > You are currently subscribed to cas-u...@lists.jasig.org as: > wgt...@gmail.com > To unsubscribe, change settings or access archives, see > http://www.ja-sig.org/wiki/display/JSG/cas-user -- You are currently subscribed to cas-dev@lists.jasig.org as: arch...@mail-archive.com To unsubscribe, change settings or access archives, see http://www.ja-sig.org/wiki/display/JSG/cas-dev