Slashdot Log In
The Java Popup you Can't Stop
Posted by
CmdrTaco
on Wed Aug 08, 2007 07:51 AM
from the once-you-pop dept.
from the once-you-pop dept.
An anonymous reader writes "In his brand new hackademix.net blog, Giorgio Maone, known as the author of the NoScript security extension for Firefox, reveals how popup blockers can be easily circumvented using Java. Worse, popups opened this way are really evil, because they can be sized to cover the whole desktop (the wet dream of any phisher) and cannot be closed by user (the wet dream of any web advertiser).
Impressive demos available, all cross-browser and cross-platform, in the best Java tradition: 'Write once, hack anywhere' "
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
Full
Abbreviated
Hidden
Loading... please wait.
Don't spread this! (Score:5, Funny)
Re:Don't spread this! (Score:5, Funny)
Parent
Re:Don't spread this! (Score:5, Funny)
As for voting Bush. Since I'm not a US citizen, that would require use of the password '12345678'.
Parent
Re:Don't spread this! (Score:5, Insightful)
Parent
Re:Don't spread this! (Score:4, Insightful)
Sun was made aware of this problem 10 days ago, and nothing seems to suggest that they don't take the issue seriously. The time it takes them to write a fix, do regression testing and push a patch out the door will likely not change due to this story reaching the
Parent
Re:Don't spread this! (Score:5, Funny)
Parent
Re:Don't spread this! (Score:4, Informative)
Maybe you don't do any banking on the internet, then. Here in Australia, at least, it is quite common for banks to use Java in an attempt to make their products cross platforms politely. And I, for one, welc... am perfectly happy with that, since I spent many years (once I had got over some of my luddite tendencies) whining about those who coded only for Winbloze boxes.
I haven't found many other sites that go in for Java in such a big way, but if I came across one that loaded a popup like that, I would simply blacklist it permanently in my hosts file. It simply doesn't pay the advertiser to piss people off that much.
Parent
Re:Don't spread this! (Score:4, Funny)
Sadly, most are not as aware and leave their browsers in "whore mode".
-nB
Parent
Re:Don't spread this! (Score:4, Funny)
Parent
Re:Don't spread this! (Score:4, Interesting)
I mean, popup blocking is included in the browser, why not NoScript?
It's the user's computer, not the advertiser's; the user should have full control over what goes on.
Parent
Re:Don't spread this! (Score:5, Funny)
The ghost of the Entscheidungsproblem [wikipedia.org] descends, with malice in its eyes.
*smack* Oof.
You are dealt 2501 hit points of damage.
Hint: there is no way to programatically determine whether a given program is malicious or not, for any sufficiently interesting system.
Parent
Re:Why I love IE (Score:5, Insightful)
I believe you mean JavaScript viruses (very common) not Java viruses (extremely rare). Javascript viruses tend to be mostly harmless (stuff like, a popup you can't close) and are generally overblown by virus software. That's why your autoprotect software wasn't catching it: It wasn't that important. And erasing the files from your browser's cache after the fact is not really helpful either. You're not really "infected" per se. (Though some of those JS files are vectors into bigger and badder viruses.)
That has to be the worst reason in existence to use IE. If you don't want Java, don't install it. FireFox won't do it automatically, nor will Opera, nor will Safari. Sticking with IE because it doesn't install a JVM by default is nothing more than a false sense of security.
parent rating: -1 FUD
Parent
Re:Why I love IE (Score:4, Informative)
1. It merely used the JVM as a vector to install itself. As a virus, it was actually a Windows program and was reported as such by all virus tools in existence. Thus the original poster would not have known it as a "Java virus".
2. There are actually a wide variety of CWS variants. Some of them used the JVM vulnerability while others used other system vulnerabilities like a hole in the Windows Meta File [securiteam.com].
3. As another poster pointed out, it was a hole in Microsoft's VM that was exploited. Which would seem to be further evidence for moving away from IE.
Parent
Re:Don't spread this! (Score:5, Insightful)
I'm all for letting security issues blow up in media if the software vendor ignores them, there's nothing like a little public shaming to make public companies get their act together security-wise. But as long as the software vendor fixes reported problems in a timely fashion, the only thing that is achieved by a media blow up before a patch is available is that more potential exploiters are made aware of the issue.
Parent
Who'd have thought it? (Score:4, Funny)
Re:Who'd have thought it? (Score:5, Funny)
Didn't you read the headline? You can't stop these things. Heck, the demo popped up an unkillable window on my AmigaOS box, and no JVM even exists for that...
Parent
and the wet dream of any victim (Score:3, Insightful)
Re:and the wet dream of any victim (Score:5, Insightful)
I don't want to be a ludite, but on 9 sites times out of 10 that require those technologies, there is very little benefit for the user.
Parent
Re:and the wet dream of any victim (Score:4, Insightful)
The smart web is the dangerous web -- the smarts are all too likely to be out to get you.
As for me, with a few exceptions, if a web site needs lots of scripting to make it work, I don't need it or use it.
Windows/Microsoft Update is in my trusted site zone
I use Firefox with noscript to enable only what I need for mapping functionality
Otherwise, Java, javascript, flash, multimedia, are all off.
Parent
Re:and the wet dream of any victim (Score:4, Informative)
For instance, the multi-level menus on a website should not be the only means of browsing its pages. In fact, if the user were to turn off all of their scripting for their browser, the website should function minimally. Even with Gmail, you could change the site options to "basic HTML", which is found on the bottom of the page.
How about banking websites where you try to pay your bill and want to input the date? Most sites currently have a calendar pop-up for you to display a slick interface. But one should still be able to manually enter in a date that conforms to how the date is stored. (Or use server-side validation & conversion.) Again, inputting a date should not depend on a client-side calendar function since quite a few users use browsers that do not have any client-side scripting functionality.
I agree with your point that a lot of the sites we commonly use have features that depend on client-side scripting, but the website itself should still function if you choose to turn off the functionality on the browser level, and that is what the parent was talking about if I understood their point correctly.
Parent
so how do i know (Score:5, Funny)
oh shit
pfft (Score:4, Funny)
Parent
don't be dense (Score:4, Funny)
Parent
NoScript, but they don't work (Score:4, Informative)
As always, with script-related security flaws, the easiest solution is NoScript, of course.
However, FWIW, I couldn't get either of his demos, the Java or the JavaScript, to work on Firefox 2.0.0.6 on Windows XP, despite the fact that the author says that both work on Firefox.
Re:NoScript, but they don't work (Score:5, Informative)
It worked on my XP system and covered everything but the Start Menu and Task Bar. Getting it to close was simply a matter of right clicking on Firefox in the Task Bar and closing it down. It's certainly an annoyance, but it's not as bad as the article makes it seem to be. Anybody with a brain (which admittedly excludes about 60% of the population) can figure out how to close Firefox and thus the Java App.
Parent
Re:NoScript, but they don't work (Score:4, Insightful)
In my experience the vast majority of windows users don't right click on anything, unless they have been specifically instructed to.
And they certainly don't intuitively know that they can right click on task bar icons to do anything, let alone close the app.
For most regular users (no doubt the intended target of the sort of sleeze who would use this for advertising and other nefarious purposes)there is only one way to shut down an app, and that's the rex X in the top right corner.
Parent
Re:NoScript, but they don't work (Score:4, Informative)
The start bar went behind the app, bringing up task manager and shutting down the app wasn't as easy as you would think because the java app eats focus and makes clicking the "End Process" and the Warning message difficult.
I managed it after a few mistypes and jabs at the button.
Its possible to close it, but it doesn't play nice at all.
Parent
Re:NoScript, but they don't work (Score:4, Interesting)
That said, I've met many in fields directly relating to computing (CS, Computer Engineering, etc) who were basically computer illiterate. I'd contend they didn't have brains, as they weren't useful for much outside their field from my observations either... (I worked tech support in college, so I was all over campus working on computers.)
Parent
Re:NoScript, but they don't work (Score:5, Funny)
Parent
Firefox (Score:3, Informative)
Silly article (Score:3, Informative)
There's virtually no chance anyone would be fooled into doing anything but killing their browser, and Java is by no means alone in causing that kind of issue.
Nothing to see here, move along...
So how about how to stop this? (Score:5, Interesting)
Just a thought.
Can't even switch Workspaces (Score:3, Interesting)
Dont worry, I'll turn off the lights on my way out (Score:3, Funny)
Remind me: Why do we have applets again? (Score:5, Interesting)
This isn't a flame....Java on the desktop is awesome and I love it.
*runs to the hills*
Re:Remind me: Why do we have applets again? (Score:5, Informative)
Done.
Yahoo uses Java for many of their online games. You might not play them, but a lot of people do. And that "lot of people" will probably leave Java enabled and be victim to this crap.
Layne
Parent
Obligatory Linux Elitism (Score:4, Funny)
Thing #397 That You Can Do In Linux But Can't In Other Popular Desktop OS's:
1. Ctrl+Atl+F1
2. Log In
3. missile-launch -f --target-from-process java
4. killall java
4a. killall firefox-bin (if necessary)
Actually this story is strangely coincidental; just a few minutes ago, I was trying to show a coworker a cool graphical demo of different sorting algorithm efficiencies, but I didn't have the Java plugin installed. Still don't.
Lovely (Score:5, Funny)
The one sure way to endear me to a product and cause me to whip out my credit card is to pop up a window over my entire screen that I cannot remove. This type of "in your face" advertising is exactly what reluctant consumers like myself need.
Analysis of the "hack", or how sum of parts breaks (Score:5, Informative)
1. It doesn't use any "go fullscreen" API
2. It's a failure of assuming sum of parts of software is as secure is as its components. It can be "less" secure than any of the component taken in isolation. Point in case is the set of APIs used:
a) Toolkit.getScreenSize(): Used to find size of desktop. Nothing evil here
b) Window.setBounds(): Used to set size of window. Nothing evil, except set it larger than screen size, hence hiding the applet warning by moving it "off screen"
c) Window.setAlwaysOnTop(): Used to set the window on top. Essential for displaying "Modal" dialog boxed like error boxes. Nothing sinister here.
However, the shit happens because all the things taken together can be dangerous. Specially, passing "System Modal" to setAlwaysOnTop().
I don't see an obvious "fix" except the following hurdles that can be presented to unsigned applets (and hence breaking a lot of hobby games, apps etc)-
1. Validate applet size to be always significantly less than screen size
2. Remove support for "System Modal" for unsigned applets for "setAlwaysOnTop". Application modal is fine, system modal is not.
Any more ideas shall be appreciated.
Oh, and I again despise him for an irresponsible disclosure and presenting the hack in easily reverse engineered, fully functional code.
Re:Analysis of the "hack", or how sum of parts bre (Score:5, Insightful)
1. Validate applet size to be always significantly less than screen size
2. Remove support for "System Modal" for unsigned applets for "setAlwaysOnTop". Application modal is fine, system modal is not.
I would expect that "System Modal" should be forbidden from any applet, even if it is signed. After all, it is running in a browser, not directly in the OS, so Application modal should be sufficient. In fact, one can argue that if you are writing an applet and you need System Modal functionality, then you are probably using the wrong technology anyways and should consider alternatives.
Applets were designed to be sandboxed. System Modal should have been forbidden from the beginning anyways.
Parent
Re: (Score:3, Insightful)
Why is that? What is "worse" about it than Ecmascript?
For extra credit, explain why Java Web Start is worse than downloading a traditional application and installing it...
Lemmings...gotta love 'em.
Re:Why? (Score:4, Informative)
Indeed. That sort of thing usually doesn't end well. Ask the guys behind X10 [wikipedia.org] for example.
Parent
Re:Why? (Score:5, Insightful)
Parent
Re:Why? (Score:5, Interesting)
The problem with ads is that, apparently, the annoying ones are exactly the ones that work. People like you and me hate them, but we're never going to buy their **** anyway. Those irritating jingles that get played endlessly on TV ads irritate the **** out of us, but they attract the attention (and memory) of those gullible enough to buy the goods.
I'm not sure how much this is really backed up by evidence and how much is just "accepted wisdom" in the marketing community, though. There was a particular local firm advertising on the biggest local radio station in these parts a few years ago. They basically took traditional melodies from things like popular nursery rhymes, and rewrote the lyrics to mention their company name repeatedly and the product they were pitching. After a while, they even ran an ad that had the lyrics "We know the songs get on your nerves", which I remember all too well, perhaps making the point for them. That was, however, the last ad they ever ran on that radio station as far as I can tell. I'm not sure what happened to the company...
To bring this back to the current context, though, the theory seems entirely reasonable. Most of us will never support spammers or get caught by phishing, but those stupid enough to reply to bank password checks or ads for legal software downloads are probably also the ones stupid enough to click on the slightly odd-looking dialog warning about a virus attempting to install itself through your web browser. Sadly, given the tiny running costs, it only take a very small proportion of people to be idiots for the spammers/adware merchants to make an awful lot of money.
Parent
Re:Doesn't work.. (Score:4, Informative)
Parent
Re: (Score:3, Insightful)
Fixed.
Re:Obvious solution? (Score:5, Interesting)
Parent
Re:Obvious solution? (Score:5, Informative)
Parent
Re:An interesting markettign technique... (Score:5, Insightful)
If he were selling his software commercially, or people were being directed from the Slashdot front page to a page full of ads, then you might have a point, but that's not the case here. The guy has made an obviously useful tool, gives it away for free, and is warning about an obviously relevant threat. The most he's likely to get out of this is a few small donations or a few more page hits on his site, perhaps making enough to cover the server costs for hosting a popular Firefox extension for a while and a bit of beer money. I think your post is way over the top.
Parent
Re:Interesting (Score:5, Insightful)
Ban them from going full screen unless I, the owner of the machine where it wants to go full screen, agree to applications having the right to go full screen.
I don't care about signed code. I do care about my preferences!
Parent