test supposedly shows that computer users are idiots - how so?

I think the question in the OP still stands - once a program has got to the point where it can display a fake dialog box, then it doesn’t matter what the user clicks on. The program can already do what it likes anyway, within its security context. It’s not a Windows thing – regardless of the O/S, if every executable required user confirmation before it ran, using the computer would be a nightmare.

If we are just talking about hyperlinks dressed up to resemble Windows dialog buttons, then the browser’s usual security measures should protect you. The status bar should show the URL. You should see standard browser prompts for running scripts etc. If it has got to the point where these prompts have been hijacked, you were already screwed anyway.

[ETA] in other words, pretty much what Dead Badger just said

That’s because it’s not right. If a site can launch a pop-up that looks like a dialog box that you click on to go to some second site, the pop-up can just as easily be the second site itself.

I can assure you that this experiment did not involve my mother. Whenever the computer says something she doesn’t understand, whenever she can’t get something to work as intended, her pseudocode is as follows:

IF one of my children is in my house
THEN yowl at hir for help
ELSE IF 7:00 < systime < 10:00
THEN call daughter
ELSE wait until one of my children is available

If she opens a picture in irfanview, rotates it and then tries to move to the next one, Iview will ask whether she wants to save it: she will call us.

Mom would be priceless as a pay-per-incident support customer.

I can’t help but feel half a thread has been wasted rehashing what I said in post #14 :stuck_out_tongue:

No need to resort to opening Quicken, too. Any action taken in a Window will generate a Windows message in the message queue.

On re-reading, I use the phrase “permissions” a lot, so here’s what I mean by permissions. You, the user, have permissions to read and write to many places in your hard drive, possibly all places. If you prevent your account from being allowed to modify say, the system files, then you will not be able to run many installers and other possibly unsafe actions. The problem, basically, is that almost all home users and many business users just use one account, which has administrator privileges, and those privileges allow you unfettered access to your system. The OS houses have tried to address this (mentioned below), but ultimately, if you have admin privileges already or if you can be tricked into exeuting some code that runs with admin privileges, you’re vulnerable to mischief.


The problem is very serious, and few people seem to recognize it: any program that you, the user, execute is executing with your permissions already. It can silently decide to e-mail every document on your hard drive to an IP address in Russia.

The reason for the focus on pop-ups is that browsers are generally written by trustworthy people. The browsers already run with all of your permissions, but they tried to be a little forward-looking. When interpreting or exeucting code found in html, java, javascript and several more of the standard MIME types, the browsers and/or underlying run-time interpreters don’t want to let an untrustworthy website have access to all of your files or any other resources that don’t involve surfing the web, so whenever some object wants to write something or read something from other places on your hard drive, the standards-based interpreters/virtual machines/whatever will pop up a dialog asking if you really want to do this possibly harmful thing. Hitting the close box on a dialog put up by the web browser tells the browser that it should not grant the object the permissions it asked for.

Now, when you install a plug-in (such as the flashplayer or quicktime or realmedia), that plug-in is also going to be running in the browser’s context with all of your permissions. That’s why the browsers ask you whenever some website has an object that requires a plug-in that you haven’t already installed. Be very cautious about which plug-ins you install! The same goes for ActiveX controls: they’ll be running with all of your permissions if you allow them to be loaded.

For any application that’s not a browser, you’re on your own. They’ll be running with all of your permissions the moment you launch them, so they don’t have to ask your permission for anything. You already granted them all of your permissions when you double-clicked. That’s why you should be cautious about where you get your applications. Anything that you launch can read or delete or modify everything that you have permission to read or delete or modify.

This is why it’s a good practice to use a non-administrative account. You won’t have the default permission to read everything or write anything, so anything that you launch (or any process which you allow to be created) will not have the permission to make mischief. Even then, if you launch a malicious program that wants to modify your registry or launch some weird daemon, but that program can’t do what it wants, one of two things will happen. Either it’ll attempt an operation that isn’t allowed (in which case your Windows/Mac OS will put up a dialog asking you for your admin password) or it’ll pretend to be the OS and put up its own dialog asking for your password. If it’s craftily written, the malicious program can actually go off and do whatever you think it was going to do so that you don’t start worrying about running your latest virus checker.

(Virus checkers check for everything that the anti-virus companies know about, and a few activities that might have characteristics of malicious code. So they’re looking for trojans, worms, known-to-be malicious programs, odd registry entries (Windows), odd processes (Mac), etc. in addition to the basic viruses.)

Firewalls that put applications in a sandbox provide a good amount of protection. With these in effect, only the apps that you want to be able to connect to your ports (e.g., the Internet) will be able to connect to those ports. Of course, the OS can connect to whatever it wants to connect to, because it’s the OS that’s allowing you the privileges to do anything at all; that’s why you need to get your OS from a trusted source. Assuming you trust your OS, you should be able to run without any programs accessing the Internet other than your browsers. However, looking on my (XP) PC, I see that my various antivirus programs, adobe reader, my browsers, google earth, etc. have full permissions. DivX and realnetworks/realplayer are blocked because they wanted to phone home but I blocked them the first time I was asked.

Bottom line: Attempt to run on an non-admin account. It’ll be a little painful, and you should curse any non-malicious developer who writes code that will not run unless it has admin privileges. If you see a pop-up while browsing, you can probably hit cancel. But if you want to be safe, kill the application and/or any suspicious process via Task Manager (Windows), Activity Monitor (Mac) or the old reliable kill -9 nnn (Linux, Unix, Mac), where you get your nnn from either top or ps. Don’t hesitate to kill your browser if you’re suspicious. Firefox extensions can be written by trustworthy people at Adobe or by a nerdly mafioso, which is why the Firefox extensions website distinguishes between plug-ins whose authors have been verified to be trustworthy and those that haven’t.

Until they figure out how to actually protect your computer from bad and/or evil programmers, keep your documents encrypted, only run apps from sources you trust, and consider encrypting your entire hard drive a la TrueCrypt. If you have a Mac, enable virtual memory encryption. That will make the OS encrypt any memory pages it writes to disk, which will prevent a bad person from reading your hard drive with a hex editor, should they get physical access to your hard drive. I haven’t looked at Vista or Linux in any detail, but this should be available by now. I haven’t found that capability on XP or any addition to XP. It pretty much can only exist if they build it into the OS.

One temporary solution is the recent interest in running your own copy of Windows off of a thumb drive. You’ll know that your thumb drive is clean, and whatever corruption exists on your actual hard drive will have limited effects. Additionally, some people are running the Linux OS and applications off of CDRs.

Frankly, I do most of my technical work on PCs that have no physical connection to the Internet. I only keep my financial info and passwords on an encrypted disk image on my Mac at home. And on my PC that is connected to the Internet, I never type in a password to my bank or brokerage accounts – I copy and paste fragments of the passwords (using my mouse) just in case a keylogger gets on that PC. I don’t have any defense against malicious admins looking at my screen while I do this, so I generally don’t actually check my accounts on these websites when I’m at work.

Bottom line below the bottom line: as a programmer I know for sure that you should not trust programmers or the software they produce.

No, I right click and close from the desktop. But note that the article in the OP specifies that they are emulating Windows dialog boxes, ergo, they are fake. In other words, they never had control, and they’re not applications.

So you don’t believe in the existance of click-through pop-up advertising?

I’ll admit that the sample dialog box Arnold linked to looks pretty real. I might very well have clicked on that myself unless I noticed some odd giveaway when I moused over it (like an HTML link to another website). But would you, based on your logic, click on any dialog box that popped up? What if it was dancing and brightly colored and told you you’d won a free iPod? I mean, it couldn’t be maliciously trying to redirect you to a website, right, or it would have just popped up the website?

What about email attachments? Do you open every one of them? Surely anyone who would put a malicious program in an email would have just programmed it to take over your computer already before you even saw it, right?

Those Nigerian doctors are all honest, too. I mean, if they wanted my money, they would have just hacked into my bank account or mugged me on the street. Their couldn’t possibly be anything wrong with giving them my credit card number so they can help me, could there?

I never said it doesn’t exist. Just that you don’t have to urge the user to click a button if all you want to do is show an ad page.

I can’t see into the minds of the guys who launch these. I can just tell you that if a web page launches a pop-up window, it could put anything in the window it wants, including something that looks like a Windows dialog box that if clicked will result in another window with advertising, or just pop up the advertising itself. There is no *technical *reason to do the former, but as I said, there may be other reasons to do it that way.

Apples and oranges. You didn’t use a smiley but obviously you are aware that no email can damage your system if you don’t even view it. (It used to be that no email could cause trouble if you didn’t open attachments, but the advent of HTML email changed the rules.) Opening an email attachment is a completely different proposition than opening a web page in a browser, because it can be a program. Abandon hope all ye who choose to run an actual program.

I agree in this case; the image they give of an outrageous dialog box is just for the story, it wasn’t actually used in the study, but they don’t exactly come out and say that. It just takes up real estate to pad the page for no good reason.