Slashdot Mirror


Cross-Platform Java Sandbox Exploit

DrWho520 points out this report at silicon.com which begins "A flaw in Sun's plug-in for running Java on a variety of browsers and operating systems could allow a virus to spread through Microsoft Windows and Linux PCs. The vulnerability, found by Finnish security researcher Jouko Pynnonen in June, was patched last month by Sun, but its details were not made public until Tuesday." The hole affects Linux and Windows.

71 of 382 comments (clear)

  1. Re:Makes me wonder... by I+confirm+I'm+not+a · · Score: 4, Informative

    ...Or better, since Java runs in a (relatively) secure sandbox. It's worth noting, from the article, that there hasn't to date been a single Java virus. This is bad, but it has to get a lot worse before comparison with ActiveX is warranted.

    --
    This is where the serious fun begins.
  2. Another good reason to allow third party review... by johnhennessy · · Score: 4, Insightful


    I think this tries to highlight another reason why allowing a third party review your code is a good thing

    Generally, the most cost effective way can be an open source model.(there are others !)

    --
    [ Monday is a terrible way to spend one seventh of your life. ]
  3. Java != Java Sandbox by Cyphus · · Score: 4, Insightful

    Its the browser-based sandbox that's the culprit here, not Java. Saying its a problem with Java, is like saying an IE exploit is a problem with HTML.

  4. Opera not affected by TheJavaGuy · · Score: 3, Informative

    This bug affected IE and Firefox, but not the Opera Browser.

    --
    Opera Watch - An Opera browser blog.
    1. Re:Opera not affected by Anonymous Coward · · Score: 5, Informative

      Actually the Java in Opera is even worse: http://archives.neohapsis.com/archives/bugtraq/200 4-11/0250.html

  5. Not that critical.. by fforw · · Score: 4, Insightful
    This only affects the Java plugins in the 1.3 and 1.4 Java release. The current java release 1.5/5.0 is not affected at all.

    And it's a java plugin vulnerability so a website running java on the serverside is not affected.

    --
    while (!asleep()) sheep++
    1. Re:Not that critical.. by sporty · · Score: 4, Insightful

      Not that critical? 1.5 was released in the last month. What do you think all the people were using before last month?

      --

      -
      ping -f 255.255.255.255 # if only

    2. Re:Not that critical.. by sporty · · Score: 2, Insightful

      I'm a java developer too. You'd be surprised about applet use. Lots of games for instance, are written in Java. There are always two options. Applets and flash. Also, whensomeone doesn't know flash, they usually default to java. It may be a small enough group of people to you, but they are still a significant number.

      --

      -
      ping -f 255.255.255.255 # if only

    3. Re:Not that critical.. by DeadMeat+(TM) · · Score: 3, Informative
      Why doesn't the JRE have an auto-update feature enable by default on install, easily disabled from the control panel for those who are savvy (and stays disabled, unlike Acrobat Reader)?
      As of one of the 1.4.2_0x releases, it does.
  6. Re:Windows and Linux? by DaEMoN128 · · Score: 4, Informative

    There are already proof of concept viri that work on both linux and windows.
    http://antivirus.about.com/library/weekly/aa032801 a.htm/
    http://www.itworld.com/AppDev/1312/IWD010328hnvirl in//
    looks like this has been happening since 2001 according to the itworld article (look at the date in the upper left hand corner.)
    the only thing that has changed is the vector of infection. There was also a /. article if i remember right, but i can't seem to get the right search terms to find it.

    --
    Stop signs are only Suggestions
  7. No root privilege escalation by Xpilot · · Score: 3, Insightful

    From the Sun website:

    "...through JavaScript calling into Java code, including reading and writing files with the privileges of the user running the applet."

    A unix-like OS like Linux is somewhat safer than Windows, as one user account compromised doesn't trash the stuff that user doesn't have read/write permissions on (such as root or other users). So it's possible to contain on Linux, but on Windows... people usually run as Administrator.

    --
    "Backups are for wimps. Real men upload their data to an FTP site and have everyone else mirror it." -- Linus Torvalds
    1. Re:No root privilege escalation by Meostro · · Score: 2, Insightful
      A unix-like OS like Linux is somewhat safer than Windows, as one user account compromised doesn't trash the stuff that user doesn't have read/write permissions on (such as root or other users). So it's possible to contain on Linux, but on Windows... people usually run as Administrator.
      That is absolute misinformation. How are the two any different?

      I run as root and as Administrator because i'm too lazy to set up actual, proper permissions and accounts. That doesn't mean that I couldn't, just that I don't.

      Both OSes support limiting access to crucial files. Both can keep you from screwing up other people's files / settings / etc. It's possible to contain on Windows too, if you care to.
    2. Re:No root privilege escalation by hackstraw · · Score: 2, Insightful

      I run as root and as Administrator because i'm too lazy to set up actual, proper permissions and accounts. That doesn't mean that I couldn't, just that I don't.

      This will change when you get a job. I recommend breaking this habit soon.

    3. Re:No root privilege escalation by Tony+Hoyle · · Score: 2, Insightful

      I wouldn't employ someone who admitted that on a public forum...

    4. Re:No root privilege escalation by radtea · · Score: 2, Informative


      The difference is that running as a non-admin on Windows is a huge pain, as many programs don't play nicely with non-admin accounts. Windows has a huge legacy of "one user per machine" thinking in its applications development history.

      That means that many apps will not run well under non-admin accounts on Windows. Try it sometime and see. Talk to any tech-support person and ask what fraction of calls they get due to people trying to run under non-admin accounts (there's been a spate of this lately as folks upgrade to SP 2 and decide to get a bit more serious about security.)

      In comparison, I've run Unix of one kind or another since the 80's and have never had to be root to do anything other than install software or do configuration stuff.

      --Tom

      --
      Blasphemy is a human right. Blasphemophobia kills.
  8. Java finally reaches its full potential by scatter_gather · · Score: 5, Funny

    Write once, exploit everywhere!
    :)

  9. Re:Makes me wonder... by fforw · · Score: 4, Interesting
    ...If java is really just as bad as ActiveX
    no.

    This the only cross plattform security issue known. and it's a theoretical one, no exploits known.

    One failure in a secure sandbox environment is still not as bad as an environment where any code is executed and the security consists of the developer saying:

    "I don't think I built in something harmfull and sign that belief with this digital signature"

    --
    while (!asleep()) sheep++
  10. Re:At least... by rdc_uk · · Score: 4, Insightful

    The "patch before admitting the problem" thing DOES happen on Windows.

    But when it happens on windows it is microsoft "covering up their vulnerabilities".

    Apparently, for you, when someone else does it they are doing something good...

    Security by Obscurity, no matter who does it, it is still bad. Just because the WHOLE WORLD didn't know about it, doesn't mean some virus writer didn't; it just meant everyone continued to use un-patched Java installs in blissfull ignorance of the risk.

  11. Re:Makes me wonder... by owlstead · · Score: 4, Insightful

    There are differences. This is a bug in the security implementation of Sun. That's bad, since it goes for every platform. However, this is a single bug. With active X, you are in problems if there is a bug in *any* ActiveX component that is safe for scripting. So the target is way smaller with Java. Obviously that also makes it possible to vigourously (no spell check available - dang) test that part, so no excuse for Sun for not doing that.

    Note that there are very few security notifications with Java. I can remember a few buffer exploits in the VM (not in the Java applications itself, that's impossible, unlike active X). Java makes it much easier to write secure code. So the chance on serious bugs occuring is smaller (bugs tend to be in the design, not so much in the implementation). But it is definately not a holy grail, mistakes can be made as you can see.

    So is it a serious bug: answer YES. Does that make Java (/.NET managed code) a bad idea: NO. Do you need to upgrade: certainly. Is java as bad as ActiveX in the browser: definately not.

  12. Re:Makes me wonder... by rdc_uk · · Score: 3, Insightful

    " There are differences. This is a bug in the security implementation of Sun. That's bad, since it goes for every platform."

    What you should have really noted was that this is a bug in the security implementation of java. Which is bad.

    ActiveX, on the other hand, doesn't HAVE a security implementation in which to get such a bug, which is terminally bad.

  13. Write once, run everywhere by Lucky+Kevin · · Score: 3, Insightful

    A virus writer's dream!

    --
    Kevin
    "It's not the cough that carries you off, it's the coffin they carry you off in" O. Nash
  14. Re:Makes me wonder... by I+confirm+I'm+not+a · · Score: 3, Insightful

    > > hasn't to date been a single Java virus.
    > ...that we know about...

    True, and it's worth noting that the quote I offered above came from Jonathon Schwarz, who - just possibly - might be biased. I'm still inclined to trust a platform with no visible viruses than platforms with very obvious viruses. Put another way, I'm in no hurry to locate a browser that supports ActiveX.

    --
    This is where the serious fun begins.
  15. Windows and Linux, huh? ...what about Mac? by mrchaotica · · Score: 3, Interesting

    Is the Java that comes on Macs exploitable by this too? (Maybe not, since Apple might have changed something, but I don't know)

    Also, what about BSD?

    --

    "[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz

  16. More detailed info ... by Anonymous Coward · · Score: 3, Informative

    From the horses mouth right here. The issue is actually with the plug-in, not Java itself. In brief, you can load a Java class in an applet via JavaScript using getClass().forName() and use that reference to make calls outside the confines of the sandbox.

  17. there have been lots of those before by jeif1k · · Score: 5, Insightful

    The "sandbox" that cordons off Java applets from the rest of the system has typically worked well.

    When Java first came out, people found lots of security problems with its sandbox; there were both fundamental flaws in Java's type system and problems in Sun's implementation. That aspect of Java was subject to intense scrutiny back then because Sun had positioned Java as a new way of delivering client applications, which depended critically on sandboxing. The vision was that Java would replace heavy desktop apps.

    These days, it doesn't matter much anymore: Java has failed to achieve its goals on the client; you can browse perfectly fine with applets disabled and never even notice. And for Java's current server side uses, sandboxing isn't really that important. So, people stopped finding flaws in Java's sandbox because they stopped looking--it just doesn't matter to anyone anymore.

    I think Java's original vision of a thin client platform for high-quality applications delivered through the Internet is still relevant, but Java won't be able to fulfill it anymore: it has become too bloated and too complex. More likely, that niche will be filled by an updated version of Flash (yuck), XUL, or, perhaps, something entirely new.

    1. Re:there have been lots of those before by Joe+Tie. · · Score: 2, Insightful

      Look, the truth is that not only is Java irrelevant on the desktop...

      I would have agreed with you a year ago, but it's really made a comeback for desktop use. SWT, SwingWT, and the performance increases in 5 have changed things around enough that I'm considering it a viable development platform again after having discounted it for quite some time. Two of the programs I use most often are in fact written in Java, azureus and dvarchive. The latter even uses swing, and I'm still amazed by the fact that I don't mind that anymore.

      --
      Everything will be taken away from you.
  18. java.com still offering BAD version by prandal · · Score: 3, Informative

    www.java.com is only offering j2re-1.4.2_05, a vulnerable version.

    Version 1.5.0 is available from java.sun.com.

    WAKE UP SUN!

    1. Re:java.com still offering BAD version by lokedhs · · Score: 3, Informative

      That's why you should go to java.sun.com, not www.java.com

    2. Re:java.com still offering BAD version by prandal · · Score: 2

      Home users will go to the former, not the latter!

  19. No patch by roman_mir · · Score: 2, Interesting

    There is no patch, there is only the next release of the JRE, why is that? Wouldn't it make more sense to also release an executable patch rather than forcing a 14MB download (not that I care, I download it at 400KB/s?)

  20. let's have a little perspective by bratboy · · Score: 5, Insightful
    I'm sorry, but the comments here are getting a little absurd. The Java sandbox has had how many security exploits discovered in the eight or nine years it's been around? Perhaps there have been a couple, but I can't remember any. And now, a flaw is discovered by an independent researcher, a patch quickly released, and the bug made public only after a significant amount of time has passed for people to upgrade, and before an exploit appears - and you're complaining because ...? Oh right, because Java isn't open source.

    Open source, although a wonderful thing which should be given away at school bake sales, church meetings, and nascar rallies, is not a silver bullet. Case in point - the Firefox browser (which I use and love) has already had several security flaws (e.g. the same JPG flaw as IE) for which exploits have been released. The major reason we don't see more is *not* because it's so much more robust - it's because it still doesn't have the visibility and marketshare of IE, not to mention the raw hatred of ubergeeks around the world. I know, I know - the marketshare is going up, and as a faithful user I'm honestly torn. I'd love for it to be successful, and for Microsoft to have some kind of competition, but for now, Firefox is pretty safe. Give it the marketshare, and watch all those 2600-loving eyes start reappraising their goals.

    daniel

    1. Re:let's have a little perspective by prandal · · Score: 4, Insightful

      I don't think the open-sourceness or not of an application is the relevant issue.

      Consider three email clients for home users of Windows:

      Outlook Express - proprietary, bundled, and happily executes malware without a thought (and aids in social engineering attacks by hiding file extensions), insecure by design

      Pegasus Mail - proprietary, free, but not open source. Never excecutes anything unless explicitly told to, secure by design.

      Thunderbird - open source, secure by design.

      Design's the key, not the platform.

      But things aren't helped by idiotic PC games and applications requiring users to have administrative rights in order to play them (The Sims, The Sims 2, for example - it even says so on the box).

    2. Re:let's have a little perspective by bratboy · · Score: 2
      Having written an HTML parser (and had to deal with the crazy HTML that even major websites use), I'd agree that it would be nice if only stricter HTML existed. On the other hand, crashing doesn't seem like a good way to handle malformed HTML. ("All browsers but Microsoft Internet Explorer kept crashing on a regular basis due to NULL pointer references, memory corruption, buffer overflows [and] sometimes memory exhaustion, taking several minutes on average to encounter a tag they couldn't parse," wrote Zalewski.) And, although not a contributor to Firefox, I wonder just how deliberate the strictness was (am genuinely curious - links, anyone?)

      I remember a /. thread a couple of months ago from a student who was gathering input from the community for possible new features to put into firefox as part of a research project. I remember the comments veering from "neural net laser-guided search functionality would be pretty cool" to "for the love of Stallman, please don't bloat our browser!" I think the thing that's been so significant about Linux is that it's been able to generally avoid this problem through Linus's benevolent-rule-by-reputation. I think that this is also part of what Sun fears about letting go of Java.

      daniel

  21. Java == Java Sandbox by jeif1k · · Score: 4, Insightful

    Browsers aren't responsible for sandboxing plugins--in fact, they couldn't do it if they wanted to. Sandboxing is exclusively a function of the language and its runtime, in this case Java. If Sun's Java plugin allows the execution of dangerous code by untrusted code, it is Sun's fault. Note also that this is not the first time that this has happened.

    Fortunately, the solution is simple: just turn off Java applets in your browser. These days, you won't be missing anything important on the web by doing so.

  22. Java language != Java Sandbox by Cyphus · · Score: 2, Informative

    I agree with you, browsers aren't responsible for the sandboxing, and it is Sun's fault for having a buggy plugin. But sandboxing is not a function of the language - it is solely a function of the runtime. I could use a different runtime with the same compiled Java code and not have the problem. Therefore its not a problem with the language.

  23. Re:Makes me wonder... by rdc_uk · · Score: 2

    " Lets make a deal: it is a bug in the security implementation of Java by Sun. Sheesh. That's what I said, didn't I?"

    I think you read an implied slur into me simply having chosen to use the word "java" instead of "sun" when paraphrasing instead of actually quoting you. None was intended.

    On to the point; as I recall the 2 main problems with ActiveX security are:

    1; the browser (IE being _the_ ActiveX browser IIRC) pushes "security" options such as "allow signed scripts to run". Johnny Hacker is quite capable of signing his code, thus getting it run without question on most installs.

    2; it is quite plausible to spoof your signature. Then even if you are requiring manual authentication of each signature before you let it run, it may well look to the casual user like a macromedia or Microsoft signature, and therefore it gets run.

    Contrast with the (intention of the) Java security model, where it is not supposed to be possible to GET the kind of access that allows destruction / subversion in the first place.

    Its the (piss-weak) "security" attitude that "if company X wants access that would let it format your drives, but only after scanning all the files on them, then its OK, because its company X, isn't it?" that is the problem with ActiveX.

    No "program" run through your browser has legitimate need to that level of access to your local machine.

    My personal opinion is that there are 2 fundamental flaws in how some companies view "browsers":

    1 - they think that the web browser and the file manager shouyld become one.

    2 - they think that goal justifies tying the browser tightly to the file system on the local machine, and justifies including low-level local access mechanisms into the browser and the things it can browse.

    Personally I disagree; I think that having any "web format" of data/program able to escalate its rights to that kind of level is suicidal in terms of security, and therefore the risks of the required infrastructure make having your web browser serve to handle your local file system vastly outweight the minimal benefit of dropping one program from the machine.

    I also think that may have been the longest sentence I've ever written; so I'll preserve it for posterity!

  24. Re:The nice thing is by hawaiian717 · · Score: 2, Insightful
    Looks like you left out the word not:

    The nice thing is, is that if you are using Linux, Java is most likely not running as root, and therefore less likely to mess around with your OS, Or files which that user does not have access to. Therefore, it's probably hard to get something into a startup script, and to create a virus that would be around after you rebooted the computer.

    :)

    --
    End of Line.
  25. You have got to be shitting me. by Lethyos · · Score: 4, Insightful
    Makes me wonder if Java is really just as bad as ActiveX

    Who the hell moderates stuff like this as "insightful". I don't have any exact numbers in front of me (nor will I spend the time to find them), but I can safely tell you that over their respective lifetimes, ActiveX has suffered many orders of magnitude more exploits than Java ever will. The only meaningful caveat I can think of to this statement is the "default" Java runtime environment (that used to be) packaged with Internet Explorer that is written by Microsoft. Of course, you can hardly attribute any problems with that to Java because Microsoft built it on top of ActiveX and took very little interest in security when doing so.

    Also, I should point out that any of theoretical exploits will have the most damage on Windows than other platforms because Windows is insecure. It seems that any code running on a Windows box has, one way or another, unbridled access to resources that should be above the user's privileges, but that's an entirely different situation altogether...

    --
    Why bother.
    1. Re:You have got to be shitting me. by ttfkam · · Score: 3, Interesting

      Exactly! And another aspect that people can't seem to wrap their heads around is the lack of confirmation windows in Java client-side. Sure a signed applet that will be accessing the local filesystem or connecting to an arbitrary server on the net will pop up a dialog box as it should, but normally it just starts up and runs.

      ActiveX pops up a dialog box at every new instance on every site. The user ends up thinking, "Oh, another damned popup," and just clicks on it. It's like email and dealing with spam. There are so many junk emails, eventually you make a mistake accepting one you shouldn't have or dumping one that you would have wanted.

      With the Java applet sandbox, only actions that are potentially dangerous require a confirmation dialog, and 99.9% of all applets do not need signing. Sure, today Sun announced a vulnerability. That makes how many in the last ten years? Seriously, compare that number with the number of exploits in basically any network-aware program in any language. Dumping Java over this is like refusing to go out to restaurants anymore because a friend of a friend got food poisoning.

      You want to be absolutely safe, unplug your network or modem cable. There you go. Absolute network safety. Life is a compromise.

      --

      - I don't need to go outside, my CRT tan'll do me just fine.
  26. Java == Platform by bheer · · Score: 3, Insightful

    > But sandboxing is not a function of the language - it is solely a function of the runtime.

    Pedant alert. In this case, ignorant pedant alert. the runtime is the Sun(R) Java(tm) Runtime Environment(tm), and Sun has lawyers who will do bad things to you if you claim the Java moniker does not apply to the JRE (which includes plugins for several popular browsers). Cue "Java is a platform" blather from Sun execs.

    In this case, they are simply being hoisted on their own petard. It is a bug in Java. The Platform (or, if you prefer, the thingamajig they sell/give away). Period.

    1. Re:Java == Platform by tolan-b · · Score: 2, Informative

      Yes, it's a vulnerability in the Sun implementation of the Java platform, but not Java the language or the Java platform generally.

      There are other Java runtimes, which are allowed to use the name Java because they pass the conformance tests (such as IBM's Java runtime), they would not be vulnerable to this exploit.

  27. Re:Where's the patch? by crazyphilman · · Score: 2, Informative

    I just downloaded 1.4.2_06 from Sun's website. Go to java.sun.com and look for J2SE. You can get both 1.4.2_06 and 1.5 there, on the page. I didn't use the automagic update, myself, so I don't know what's going on there.

    --
    Farewell! It's been a fine buncha years!
  28. Auto-update does not seem to work (yet?) by Guus.der.Kinderen · · Score: 2, Informative

    Sadly, the "Update Now" button in my J2SE 1.4.2_05 RE Plug-in Control Panel still informs me that I already have the latest version installed. You'll probably have to update manually, for now.

    Another thing: the auto-update timer in that same Control Panel is set to go off once a month by default. You might want to turn that up a notch for fixes like these.

  29. Re:Makes me wonder... by fforw · · Score: 2, Insightful
    It is not exactly a failure of the secure sandbox environment. If you were running a standalone Java application or a Java Web Start application in the sandbox this hole wouldn't apply. This hole applies to the _C_ code that manages the Java plug-in.
    Well.. the result of this vulnerability is a circumvention of the sandbox environment ( not in C code but via Javascript ). You may argue that the sandbox in itself has not failed which is formally correct, but a hacker shouldn't be able to circumvent it via javascript.
    --
    while (!asleep()) sheep++
  30. Re:Disable Java by hackstraw · · Score: 2, Interesting

    Disable Java in your browser unless you absolutely need it (rare). Period.

    Why is this flamebate?

    My browser has _no_ plugins running by default. Also, my browser (Safari) has a separate Java and plugin preference checkbox, and I rarely load Java. The last time I did was to look at some buggy applet that someone wrote at work.

    Over the years I have come to dispise Java. It would be different if it worked, but for me, Java has caused many problems, and I have seen 0 benefits from it.

    So, I won't get modded as flamebate as well, I'll elaborate.

    Oracle's "Universal Installer" is written in Java so that it could be crossplatform, etc, etc. to make it easier and universal for people to install Oracle. How convenient that it took me _hours_ to install it on a NT machine because of a bug in Java made the installer fail if the display was using more than some arbitrary number of colors (256, 16k, dunno, don't care). Thanks.

    There are many "web installers" or whatever written in Java for Solaris machines. I've had these fail about 40% of the time.

    I've had Netscape crash at least on the order of hundreds of times because of Java.

    Java in a browser applet is very slow loading.

    My brand new Apple Xserve RAID came with a GUI admin program written in Java. It worked for about a week, now it doesn't, and I have to call Apple and bitch when I get the time.

    Java applets _never_ looked near the same on different OSes or even on the same OS with different browsers. Besides the silly thing a coworker wrote, I don't rememember the last time I had to load the Java plugin for a website.

    I have installed Websphere once, I won't go into details from here.

    One of Java's cool "features" is that it does not have pointers. I can't tell you how many times I've run a Java program and gotten a traceback which mentions a "null pointer exception".

    I'm familier with Java for years. This is not some blind "this sucks" thing. I've coded in Java to write applications and applets that run native on a normal OS, and in browsers, and on embeded devices like smartcards and iButtons.

    I don't particularly care for Python either, but at least most of the python applications that I have used work, so I have no real objections to it besides I just don't like the language or the quirky way python and python programmers do things. For example, the damn #!/usr/bin/env python thing kills me. Try explaining to (l)users over and over again that there are 2 versions of python on the system. One in /usr/bin one in /usr/local/bin. If the (l)user has sufficiently screwed up their PATH statement, or uses a broken shell (like bash which cannot decide which dotfiles to load under which invocation, don't get me started with (t)csh)) then the wrong instance of python gets loaded, and I have to go through my speach again about how #!/usr/bin/env python is wrong. But since it works most of the time, I don't rant about it like Java.

    I'm just talking from my experiences here, and I have not had a pleasant experience with Java.

  31. Re:Windows and Linux? by jvervloet · · Score: 2, Informative
    There was also a /. article if i remember right, but i can't seem to get the right search terms to find it.

    I found this onethis one using "cross-platform virus site:slashdot.org".

  32. Unix Viruses ? by anux · · Score: 3, Interesting

    I have always found the idea of viruses on Unix amusing. I mean, any user can cause damage to his/her files, either manually or by running a script or binary. But this is not an "infection" as the system is left completely untouched. What worries me though is the way the news sites report "Linux viruses". Someone unfamiliar with Linux/Unix might think: "Oh! So Unix also has viruses, just like Windows." This I think is giving a completely wrong impression about Unix to such people.

    --
    -- anux
  33. Browsers lack security functionality by freelunch · · Score: 2, Interesting

    Browsers should allow you to configure java and javascript on a per site basis. Much like you can allow pop-ups from certain sites.

    I prefer to have javascript off all the time.

    Being able to selectively enable them for certain sites would be nice and would improve security.

  34. Re:At least... by Jokkey · · Score: 2, Insightful

    Security by Obscurity, no matter who does it, it is still bad. Just because the WHOLE WORLD didn't know about it, doesn't mean some virus writer didn't; it just meant everyone continued to use un-patched Java installs in blissfull ignorance of the risk.

    You're saying that vulnerability details should be announced before patches are completed? I'm afraid I disagree. There's a fair bit of evidence (see stories here and here) that black hats are using vulnerability announcements and patches to find exploits rather than finding them themselves. If that's the case, keeping vulnerabilities quiet until the software company's had a chance to patch them is a good idea, even if security through obscurity is in general a bad idea.

  35. Re:Disable Java by Tony+Hoyle · · Score: 2, Interesting

    Wow, that's worse than I've seen.

    The worst problem I've had was writing a commercial app that had a Java frontend. Because Sun kept making seemingly random changes to the API and not fixing bugs (or worse, breaking the bugs that they fixed on the last version) we were stuck with 1.3.1-05 almost right until the java code was abandoned (went to c# - we only supported Windows servers anyway).

    One customer wanted a 1.4.0 release, which we duly did (required a special fork and about a month of developer time) - then rejected it because it wouldn't work through MS Proxy server (a java bug which has never been fixed to this day .. if first appeared in 1.3.1-02, was fixed in 1.3.1-05, broke again in 1.3.1-06 and never fixed since).

  36. Regarding Java by sneezinglion · · Score: 3, Insightful

    You sir are reacting like an idiot. You list applications that do not work and then blame the language. Blame the application writers, not the language. This is like saying "C++ sucks, look how buggy and insecure windows is, C++must be to blame, not the developers." Thanks then post.

    1. Re:Regarding Java by hackstraw · · Score: 2, Insightful

      You sir are reacting like an idiot.

      Thanks!

      You list applications that do not work and then blame the language. Blame the application writers, not the language.

      I don't have an issue with the language. Its the buggy runtime environment (jre) that I have an issue with. The language has many good features. From what I understand, its one of the best languages to program in. But since the jre is so finicky and broken, its not worth it to use the language, no matter how good it is.

      Another issue that I have with Java is the CLASSPATH stuff. Its simply too difficult on a multiuser system to maintain a clean environment for all users. Again, this is from years of experience and pain.

      Yet another 3 bugs I just remembered with the jre is a web installer toy that would not run by typing /path/to/application, but would run by cd'ing to /path/to and then do ./application. This was due to a CLASSPATH problem. This was for a mature commercial product. Another interesting bug with Java was I have had issues with Matlab randomly not dislpaying to a remote X server. I've had this too crash yet another web installer that could not correctly display to a remote X server.

      Again, I have no beef with the Java language, its the Java implementation that simply has never worked that has pissed me off too many times since Java 1st came out. Its been, what, almost 10 years now, and I still cringe every time an application that I have to use is written in Java. I'm firm with this, and again is just from years of painful experiences.

  37. Re:Windows and Linux? by Cereal+Box · · Score: 4, Insightful

    so in Linux it can "only" trash the user's home directory.

    I think a lot of Linux zealots tend to downplay the importance of the home directory. After all, if you're a smart user and don't run as root, all your important data is going to be in the home directory (and possibly other directories where your user has permissions). I could care less if the OS install gets wiped out -- that can easily be replaced. The data in my home directory can't. In that regard, losing your home directory is just as bad as losing the entire system.

  38. Re:Windows and Linux? by fforw · · Score: 3, Interesting
    I think a lot of Linux zealots tend to downplay the importance of the home directory. After all, if you're a smart user and don't run as root, all your important data is going to be in the home directory (and possibly other directories where your user has permissions). I could care less if the OS install gets wiped out -- that can easily be replaced. The data in my home directory can't. In that regard, losing your home directory is just as bad as losing the entire system.
    The home directory normally only includes data and settings. It's not fun if you lose data ( if it's important data you should have backups ), but it's worse to have a system compromise where the attacker can control your system, install backdoors to use your system for every purpose he can think of and can even fry your hardware in some cases.
    --
    while (!asleep()) sheep++
  39. Re:Windows and Linux? by Finuvir · · Score: 2, Insightful

    All of what you say is true, but you omit the possibility of a multi-user system. If a single user has non-root permissions he can only destroy his own data, not those of others.

    --
    Why is anything anything?
  40. Re:Java *IS* OPEN SOURCE by Zoolander · · Score: 2, Informative

    Actually, now you can download the source to Java 6 and soon you will be able to submit patches. It's opening up bit by bit:
    Patches

    --
    Meep.
  41. "Patch released quickly" by hkb · · Score: 2, Interesting

    4 months is quick? Boy, I'm sure glad there's such a large anti-full disclosure mentality going around lately. Now, vendors don't have to secure their vulnerabilities in a timely manner!

    1. Get notified about a serious security flaw
    2. ....
    3. Release a patch a quarter of a year later
    4. Profit!

    --
    /* Moderating all non-anonymous trolls up since 2004 */
  42. Re:Windows and Linux? by Mysticalfruit · · Score: 3, Interesting

    Your totally right. Here's how you solve the problem.

    1. Create a seperate user called "webuser". Thus when some stupid java exploit attempts to delete your home directory, it can't.

    2. configure your selinux security so that the JIT can't create/delete stuff except inside of a "java temp" directory. Fine let the virus go wild, too bad it won't get anywhere.

    3. Impliment a sensible backup plan. What's really important for you to backup? Software can generally be downloaded again. The only stuff that's not replaceable is code and settings.

    --
    Yes Francis, the world has gone crazy.
  43. Don't Disable Java by ttfkam · · Score: 2, Interesting
    My browser has _no_ plugins running by default. Also, my browser (Safari) has a separate Java and plugin preference checkbox, and I rarely load Java. The last time I did was to look at some buggy applet that someone wrote at work.

    Over the years I have come to dispise Java. It would be different if it worked, but for me, Java has caused many problems, and I have seen 0 benefits from it.

    So you have plugins including Java applets turned off but then say you haven't seen any useful applets. So let me get this straight: you hide them and then complain that you can't see any good ones. Self-fulfilling prophecy? By that metric, do you drop all usage of OS X if you come across a badly written program on the Mac? Starting the plugin the first time is slow, granted. But I've been running Safari on a 500MHz iBook and Java applets haven't been a problem for me. The best written ones have been the ones where I almost didn't notice they were applets. Well-written ones are like this. A lot of folks who denigrate Java out of hand have come across good applets but not recognized them as Java.
    I've had Netscape crash at least on the order of hundreds of times because of Java.
    Have you used Java since the old Netscape days? The plugins in IE, Mozilla, Firefox and Safari have not caused me any problems in years. I find it hard to believe that I've just been the only person in the world and/or am extremely lucky.

    Well... except for that one applet that was a site logo rippling like it was underwater. Pure eye candy that sucked up 60% CPU time sustained on a 3GHz processor. Once again, good technology, bad applet writer.

    That said, I prefer DHTML and related technologies to visual Java applets these days. In a better world, I would have the UI handled by the browser's renderer and the logic handled by Java. Javascript is nice and all, but sometimes you want to do some heavier lifting. And I sure as hell am not going to use ActiveX for that even if it was supported on non-IE and non-Windows environments.

    And I too am talking from experience as I have developed on Java on Windows since Win95, OS/2 Warp, Novell NetWare, Solaris, OS X and Linux. Applets, servlets, EJBs and standalone apps. Aside from filesystem path differences, I have had maybe two problems in the last seven years moving my code from one platform to the next. And yes, I can code in C (K&R and ANSI) and C++ (including ISO98) too. Learned them before Java, so it's not because I haven't seen any other platforms.

    By the way, your mention of NullPointerException is funny to me. Take a C app and access a null pointer. Boom! Hope you have core files enabled so you load the image in a handy debugger. Take a Java app and access a null reference (pointer). Not only can the exception be caught so that it doesn't completely take down the app, but you get an easy to read (relative to C and C++) stacktrace telling you exactly where it occurred so that you can fix it.

    It's not the only language in the world and definitely isn't the only language you should have in your toolbelt, but it doesn't deserve the maligning you just gave it.
    --

    - I don't need to go outside, my CRT tan'll do me just fine.
  44. Java == Java Sandbox... ohpps! by Ghoser777 · · Score: 2, Funny

    You were comparing references (memory addresses) instead of actual values. I think you should have used:

    Java.equals(JavaSandbox)

    instead. It's a common mistake, don't sweat it.

    --
    James Tiberius Kirk: "Spock, the women on your planet are logical. No other planet in the galaxy can make that claim."
  45. Re:Windows and Linux? by StormReaver · · Score: 2, Insightful

    "There are already proof of concept viri that work on both linux and windows."

    This has been covered ad-infinitum, and is a non-issue. If you can write to an executable file, you can potentially create a virus for the host system. This has always been a big problem for Microsoft based systems because such systems have no file protections. Anything on Microsoft systems can write to any executable file, hence viruses flourished this way.

    Microsoft then must have decided that virus writers had to work too hard to destroy Windows based systems, because Microsoft then coupled automatically-executed scripting languages with all its major products.

    Linux systems have files with both an owner and access rights. By default, all executables found on non-developer machines are owned by the administrator and are unwriteable by regular users. Hence the difficulty of Linux viruses propagating.

    Adding to that, no one has been been brain damaged enough to create a Linux based email program that includes a scripting language that automatically executes attachments. If Microsoft -really- wanted to harm Linux, it would port all its products over to Linux. Nothing destroys security faster than Microsoft. Further yet, no one has been brain damaged enough to write a Linux based email program that sets the execution bit on a downloaded file.

    All known supposed "proof of concept" viruses for Linux are nothing of the sort, since they don't work. No one has yet figured out how to make a virus propagate on a typical Linux system without the express permission of the administrator.

    The best anyone has been able to do to Linux is to manually exploit buffer overflows in specific server software on specific sites. Linux users will still be safe from viruses for the foreseeable future. It will require ineptitude of Microsoftian proportions to change that.

  46. Re:Another good reason to allow third party review by Frankie70 · · Score: 2, Insightful



    I think this tries to highlight another reason why allowing a third party review your code is a good thing



    How?
    Haven't exploits been found in third party reviewed
    code?

  47. Mac by JavaLord · · Score: 3, Informative

    I tested my PC, which the sample code worked on, but it didn't seem to work on my mac which runs OSX 10.3.6 in safari or firefox. Safari comes back with a "Class undefined" and firefox just seems to ignore the javascript alert at the end.

    Anyone else try this on the mac and have similar results?

  48. Re:Windows and Linux? by syates21 · · Score: 2, Informative

    Time to re-calibrate the dial on ye olde time machine dude.

    For at least a decade there have been "Windows-based systems" with file system access control much more sophisticated than anything offered by Linux (at least in typical configurations using rwxrwxrwx style permissions) even today.

    Not to say the hard shell on most Windows systems doesn't more closely resemble swiss cheese, but you don't need to resort to inaccurate statements to make that case.

  49. "All bugs are shallow" doesn't apply to security by brlewis · · Score: 2, Insightful

    Certainly some people get overly smug about free software being more secure. More users means more people finding normal bugs. Security holes, however, aren't usually found by casual users trying to use the software as intended. Security is achieved not by exposing the source to many eyeballs, but to the right eyeballs.

  50. Re:Disable Java by LarsWestergren · · Score: 2, Interesting

    I don't rememember the last time I had to load the Java plugin for a website.

    I actually have several websites with banking etc that use applets. The JVM load time is annoying though, I agree with that.

    One of Java's cool "features" is that it does not have pointers. I can't tell you how many times I've run a Java program and gotten a traceback which mentions a "null pointer exception".

    Yes, that is an unfortunate wording in the JVM. It should say "null reference exception". Everything except primitives are pointers in Java, but unlike C/C++, Java does not allow pointer arithmetic, so they call them references instead.

    If you see "null pointer exceptions" often, you must be unfortunate enough to have to be running some pretty amateurish programs though (no offence). Null pointers are not hard to avoid in normal code, and in situations where they might fail from an external source (for instance loaded from file), the programmer should of course wrap that in checks to see that the instance is properly initialized before proceding.

    I have not had a pleasant experience with Java.

    So I see.... sorry to hear that. My experiences have been much better. Eclipse and Azureus kicks ass. I couldn't do without Java on my mobile phones these days.

    --

    Being bitter is drinking poison and hoping someone else will die

  51. Found in April not June by BovineOne · · Score: 2, Informative

    "found by Finnish security researcher Jouko Pynnonen in June, was patched last month by Sun, but its details were not made public until Tuesday."

    But according to the Bugtraq posting Sun Microsystems was informed on April 29, 2004.

    --
    Don't waste those cycles! Put them to use! http://www.distributed.net/
  52. Applets are dead by rve · · Score: 2, Interesting

    The parent is right, client-side Java is dead.

    Web developers make sure not to have the functionality of their website depend on applets, as Windows only comes with a mutant of java 1.2 - if any - installed, and of the clients on the interweb, the overwhealming majority will be windows PCs with Internet Explorer. You just can't count on visitors being willing to download a 14 megabyte installer to use your site.

    Also the performance of client side Java is still very poor compared to the alternatives, and in the early years, when Java was still heralded as the future of computing, it was so unreliable, that it's image has been tainted forever.

    1. Re:Applets are dead by Evil+Pete · · Score: 2, Insightful

      The parent is right, client-side Java is dead.

      Client side java is not dead. Applets may be, but client side gui applications are still being written. Ask the Eclipse people if they think it is dead.

      --
      Bitter and proud of it.
  53. I was hit last night by this exploit by yoDon · · Score: 3, Informative

    Only on slashdot would a comment that this exploit is "Not that critical" receive a "Score:4, Insightful" rating.

    Last night, while sitting at my machine, I noticed a Java icon appear in my taskbar. "That's wierd," I thought, "I'm not doing anything or hitting any pages that should need the JRE." Since I don't use the JRE much anymore (I installed it while testing a java-based web server) I went to "Add/Remove Programs" and uninstalled j2re-1.4.2_05.

    Too late. This morning I browsed to Slashdot and saw the parent article telling me why the Java icon had popped up.

    Whatever payload the thing delivered appears to have punched a hole in Norton AntiVirus (the Norton Firewall console is reporting that Norton AntiVirus requires "Urgent Attention" but the annunciator on the AntiVirus tab appears to have been disabled in an effort to hide whatever was done to the AntiVirus). It may also have installed the bat/mumu-a worm (one spyware scanner is reporting an infection by the worm, but Symmantec's bat/mumu-a removal tool reports the machine is clean).

    Once a drive has been compromised by something more complicated than a simple virus, there's no way you can ever trust the machine again because there is no way to know what sort of rootkit the exploit delivered.

    I've already disconnected the machine from my network and picked up a new hard drive. The old hard drives will go into an external drive housing that I'll only connect to the machine (a) after I have antivirus software reinstalled and (b) only if I absolutely have to pull data from the drive.

    "Not that critical" hah! This is by far the most serious attack I've ever been hit with, and I downloaded j2re-1.4.2_05 at most two months ago (elsewhere in the comments someone is reporting that j2re-1.4.2_05 is still available for download from sun.com, I can't confirm that but this is hardly an antiquated version).

    There goes my day...

    -Don

  54. Re:Another good reason to allow third party review by farble1670 · · Score: 2, Insightful
    I think this tries to highlight another reason why allowing a third party review your code is a good thing

    open source does not prevent security bugs. why don't you go google for mozilla or firefox security problems. they existed. they were quickly patched, as was the issue you're ragging on sun about. for a platform that is as widely used as java, there have been amazingly few security issues. huh? i guess that proves that open source is not the way to go right?

    slashdot reminds me of right-wing radio more and more. it's a place where people come to have their beliefs re-affirmed and not for real discourse and facts.

    • linux=good
    • sun=bad
    • apple=okay
    • ipod=good
    • riaa=bad
    • etc.

    now, this thread, like many others, is just a bait to get /. users to complain in their tired and tedious and precitable manner about sun micro. there was a security bug, it was quickly fixed. where's the story?

    the last thread i read about sun had some guy stating that sun was crap because they didn't include enough tools, and he cited the lack of gzip. solaris has bundled gzip for many, many years. you know what also? when i installed linux back in 1994 on my 80386, 66Mhz PC, linux didn't inlude gzip either. huh! linux sucks!