Apple Addresses URI Handler Issues
das writes "Apple released Security Update 2004-06-07 via Software Update. From the brief description:
'Security Update 2004-06-07 delivers a number of security enhancements and is recommended for all Macintosh users. [...] Mac OS X will now present an approval alert when an application is to be run for the first time either by opening a document or clicking on a URL related to the application.'" This also fixes some related security problems with Terminal.app, Safari, and DiskImageMounter. No word in given regarding how the average user should know whether or not to approve the request.
"No word in given regarding how the average user should know whether or not to approve the request?"
...as well as a description of what exactly occurs if this situation is encountered:
Well, first of all, this security update takes the issue completely from the realm of a an automated exploit that could execute arbitrary code simply by visiting a web page with no user interaction or warning, to what can now only be described, more or less, as a social engineering exploit. If you download a new application, like, say an RSS reader, the OS will prompt you to add, for example, the 'feed:' URI handler:
- ONLY the first time, and
- ONLY if it's invoked remotely, e.g., via a web page, URL in an email message, etc.
And since the only value of this exploit came from it being used in two HTML frames with two META REFRESH tags, via a browser, to cause some type of remote volume to mount (or a file to download) AND then have the newly registered URI remotely called, this completely and totally fixes the issue, without hurting the normal functionality of having new URIs get registered when you launch an application. Saying "No word in given regarding how the average user should know whether or not to approve the request" is tantamount to saying that no guidance is given on whether or not a user should even know to open, say, a shareware app they've downloaded for the first time.
On the other hand, if a user is innocently visiting a web site and a dialog box all of a sudden appears prompting the user to accept that *an application* be run, I think it's pretty clear that this handles the issue. This addresses the core of the issue, which was several OS features interacting to essentially enable an automated exploit; that capability is now completely disabled. Apple even went further and removed some suspect handlers (disk:) completely, even though this fix makes it unnecessary.
Also, detailed information on what exactly was changed is here:
http://www.info.apple.com/kbnum/n61798
http://www.info.apple.com/kbnum/n25785
You can verify that these issues are fixed by using the following test site: http://test.doit.wisc.edu/
That's not entirely true. The KB article linked from the SecUpd description provides a screenshot of the approval dialog.
Basically, it notes that the app is being started for the first time, and it says that unless you expected to see that app come up in response to whatever you just did, kill it by pressing 'Cancel.'
I think this is a pretty good way of handling the situation. They could have left the hole unplugged, or simply disabled the functionality in general. The dialog box strikes me as a good compromise.
However, I do think a little more info might be nice, like how long ago the app was installed, etc. Might make it harder for a new app to masquerade under the name of an old app.
If you read the links apple provided, you will eventually end up here: http://docs.info.apple.com/article.html?artnum=257 85
Yes, I was just about to hit SubmitStory, and yes, I'm still bitter. ;P
I like the idea, but couldn't the wording of the alert be simpler?
Why not ask "The document you're opening is trying to open and run _____. If you don't want to do this, click CANCEL."
The message makes sense to a geek, but I'm with an earlier poster, many users will just click OK out of confusion.
I wonder if there's any benifit to how the dialouge is worded. Many of the ones I see often say "If you trust this document to be certified click OK" or "If you're sure you want to do this, click OK" Essentialy it tells you to click OK. This dialouge asks you if you're sure you want to open an application and specificaly says that if you were not expecting this, to click cancel.
Who knows, it might be a good experiment.
T Money
World Domination with a plastic spoon since 1984
What that means, I don't know. I'm an Apple user. Hold me.
Well this one is odd to me. The update didn't appear to work. Trying the tests at the following link I get the following:
4 tests
The first one does not execute, but no dialouge is presented.
The second one executes.
The third does not execute, but does launch help viewer, no dialouge
The fourth does not mount or execute on the volume, but does launch a terminal trying to access the volume.
The only reason I can think of why this didn't take may be because I have PA installed but diabled, and it may be interfering with the patch.
Is anyone else having this issue?
T Money
World Domination with a plastic spoon since 1984
What I do not understand is how you can completely eliminate danger from ill-formed people. The fact of the matter is that people are responsible for using computers. We can either have completely dumbed-down OS's (namely, companies such as Apple and M$ take complete responsibility for every sort of sescutiry isssue and to do so ensure they strict limit our use of their products to help mitigate their risk to such a godly -- and equally inane -- level of responsibility) or we accept the fact that the end-users have some responsibility, too. So how should the user know whether to accept or deny...read a book, google it up, or any other of a thousand ways people have spent millenia educating themselves...
Granted, the dialog that Apple has implemented could include some more information, but it is certainly in the right direction. As I am away from a Mac for a week, I am not positive how the new system works. I am not sure if you can say "Always permit this URI..." or if permission is on a per session basis. If the latter that might become annoying...and it might be nice to say "Forever Accept/Deny" in those cases where I feel confident that I can/should do that. Having said that, the one thing that I'd like to see is a list of those apps/URIs I have granted/stripped permission to/from so I have better management over the system....esp. after I FUBAR and grant permission to EvilWare!
A programmer is a machine for converting coffee into code.
I know. Those hunchbacks are always cracking my system.
Doesn't it make you feel good to know that our freedoms are protected by politicans, lawyers and journalists.
Look for the file "SecUpd2004-06-07Pan.pkg" in /Library/Receipts. If it is there then you're probably safe as this file is added after it is installed to indicate a complete install. .pkg which can be found in /Library/Packages. Another benefit is that you can collect all the updates on a CD just incase you have to do a full install again but don't want to download all the patches. (That is mostly for those of us who have 56k connections)
In the future, instead of clicking on the button, use the menu "Update > Download Only" for your updates. It will download the update and keep it so that if the machine locks up or the powergoes out you can re-install from the saved
NarratorDan
"If you're not confused by quantum mechanics, you really don't understand it." - Niels Bohr
It also doesn't say 'OK' or 'Cancel.' Like most good Mac dialogs, it uses action verbs. In this case the options are 'Open' or 'Cancel.'
mbbac