Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Bug

Linux Kernel Bugs 307

Armin Herbert writes: "According to this mail from Rafal Wojtczuk and a german article on Heise Online, there's a new severe bug in all Linux Kernels, from 2.2.0 up to 2.4.10, which allows users to become root on your system. Kernel 2.4.12 fixes this problem, and RedHat, Caldera and other distributors already supply patches for their Kernels. See Bugtraq for more information." Important notes for anyone running a multi-user system. Update: 10/19 16:12 GMT by J : If I'm reading Nergal's writeup correctly, 2.4.10 is still vulnerable to the local DoS, but not to the local root exploit. Separate issues. And as pheared points out, there is one unverified report of a custom 2.4.12 being vulnerable as well; please try the exploit on your system and let us know what you find. This is a big one, you can expect the kiddies have already added this to their rootkits. Update your systems now!
This discussion has been archived. No new comments can be posted.

Linux Kernel Bugs

Comments Filter:
  • Well, where's the Gartner Group proclaiming that people should immediately switch from Linux to another platform?
  • open source (Score:2, Interesting)

    by recursiv ( 324497 )
    I always hear people saying how great open source software is, because they can look through the code and fix any bugs themselves.
    But I've always wondered exactly who's looking through all this code? Apparently not enough people if a bug this big has lasted this long.
    • But I've always wondered exactly who's looking through all this code? Apparently not enough people if a bug this big has lasted this long.

      So enough people is defined as the minimum amount of people required to eliminate bugs between two kernel releases, aka, a few weeks?

      Mathematically speaking, the less time you allow for bug discovery, the more, a lot more, people looking at the code you need. As you limit to 0 time for every bug discovery, you limit to infinity of people required, its asymptotic

      Ofcourse there'll be undiscovered bugs, until all code is mathmetically proven correct.
      Ofcourse undiscovered bugs will remain dangerous, for as long as we use dangerous languages (C, C++, etc.)
      • Ofcourse undiscovered bugs will remain dangerous, for as long as we use dangerous languages (C, C++, etc.)


        What other languages would you suggest for kernel development?



        And Java is not immune to these issues. Consider for a moment what languages Java's VM is implemented in. How many bugs are lurking in the Java VM (or the Lisp interpreters, or Perl interpreters, or PHP/Pythn/Tcl/Tk)?



        Blaming the language is a cop-out. It's akin to blaming the failure of legislation on the English language.

        • What other languages would you suggest for kernel development?

          Common LISP (Vapour [sourceforge.net]), Java (JavaOS), etc.

          And Java is not immune to these issues. Consider for a moment what languages Java's VM is implemented in. How many bugs are lurking in the Java VM (or the Lisp interpreters, or Perl interpreters, or PHP/Pythn/Tcl/Tk)?

          A lot less. The number of bugs in a N systems written in C, is at least a function of N.
          The number of bugs of N systems written on top of a LISP, Java, or other interpreter is a function of 1 (Constant). This means that eliminating dangerous bugs is constrainted, and is a finite process.

          Blaming the language is a cop-out. It's akin to blaming the failure of legislation on the English language

          Blaming the language for allowing expressability of illegal things is not a cop-out, its legitimate criticism. The best/cleanest/most-powerful way, is often to not allow the mere expression of illegal/unauthorized things. As safe languages don't even let you express illegal (crashing) code, and pure capability systems don't let you even express unauthorized requests.
    • Re:open source (Score:2, Informative)

      by zensonic ( 82242 )
      Do you realize just how MANY lines constitute a typical linux kernel?? When that's said, a couple of points:

      • The bug was found at last.
      • YOU can join the BUG hunting team today no questions asked.
      • Atleast you know that the bug was found and fixed. I wonder how many bugs exists in closed source OSes that aren't fixed because of money and/or time.
      • I find it to be proof of concept that the open source moment works as intended. Some day, somebody will look trough the code. Either as part of his/her job, or for pure pleasure/fun. Thats when bugs and/or performance enhancements are fixed/made.
      • You actually HAVE the oportunity to go bug hunting in the code before you install it on you production system --- obviously not many does review the code (because there aren't that many bugs?).


      For me personally, I sleep well at night knowing that I run Opensource OS'es at home and at work. What about you? I for one do not trust that the money a commercial OS costs give me peace at mind with respect to security.
  • by Caine ( 784 ) on Friday October 19, 2001 @10:06AM (#2451153)
    This happens all the time? When will people realize that Linux is inferior and unsecure. Everyone knows that open-source peer-review is a lousy tool for security-audits. No, why doesn't everyone run Microsoft products? They're completly secure and doesn't have any problems at all. Because that's the power of closed source.

    Hope the irony isn't lost on you...
    • I can't believe this has been modded down. This made me laugh. Will the moderators please think just a bit, and then smile.
      I completely agree with this post, and think that no doubt in the next few days Linus will make a posting like MS have and tell everyone how they shouldn't be looking for security weaknesses in Linux and how publishing them is completely naive in the same way that MS so wisely have.
      If only the Open source community could learn from MS - and their wonderful server MS IIS ( Internet Infection Server ), codename Swiss Cheese the world would be a better place.
  • by geschild ( 43455 ) on Friday October 19, 2001 @10:06AM (#2451158) Homepage
    Additionally the 2.2 'superstable' series are also vulnerable. Better get out those patches on multi-user systems and be snappy too. Don't want to look like an M$-admin now do we? :D

    Karma? what's that again?
  • Curious... (Score:3, Interesting)

    by Dimensio ( 311070 ) <darkstar@LISPiglou.com minus language> on Friday October 19, 2001 @10:10AM (#2451178)
    I'm aware that the exploit is within ptrace and not newgrp itself but...

    ...the SecurityFocus notice uses newgrp as an example of a program from where the hole can be exploited and it states that most Linux distributions default with newgrp suid root and world-executable. Call me odd, but I'm not sure I understand why a sysadmin would want newgrp to be world-executable.
    • Re:Curious... (Score:3, Informative)

      Because you need root privileges to change the real group ID of a running process to an arbitrary group (therefore suid) and arbitrary users may wish to run it (therefore world executable)? You're not confusing it with addgroup, are you?
  • Okay, okay.... (Score:2, Insightful)

    by tomknight ( 190939 )
    Yes, it's open soyrce, where the fact that everyone can review it for themselves ensures that problems like this never occur. Yes, this is a cock-up....

    Strangely, I think that this is a good thing. It will hopefully make Linux users a little less complacent (and smug) than before. Okay, the avaerage user isn't going to trawl through the kernal source (hell, I wouldn't!), but maybe they'll get more involved with the full develoment of Linux - that includes QA, bug-fixing, not just writing of crappy Tetris clones.

    One thing I'm looking forward to is finding out how many lazy people there are out there who don't patch their systems..... much like with NT and the easily fixed holes that lead to Code Red.

    Tom.

    • Re:Okay, okay.... (Score:3, Insightful)

      by quartz ( 64169 )

      It will hopefully make Linux users a little less complacent (and smug) than before.

      In your dreams. As a Linux user, I'm smugger than ever. How can that be? Well, let's see: a huge bug is found in Linux kernel. Did anyone write an exploit that pur millions of Linux computers in jeopardy? No. Did a malicious worm get released and wreaked havoc on the Internet? Um, no. Did this bug cause ANY inconvenience AT ALL thus far? Um, no. And it never will. Why? Because 1) a patch was made instantly available, and 2) generally, Linux people have enough common sense to stay up to date with kernel patches. Sho why the hell shouldn't I be smug?

      • Re:Okay, okay.... (Score:2, Insightful)

        by tomknight ( 190939 )
        No inconvenience? Well it's no more inconvenient than having to patch all your NT/W2K boxes (actually very easy with a decent bit of scripting). The average user won't be affected that badly - all they have to do is apply a patch. The pain in the arse is when you have a whole load of machines (which may as it happens be running different flavours of Linux), and you spent a fair while ensuring that they all work ncely. Along comes a patch, and you have to start working out which machines tou can take off-line to test the patch, which machines are most vulnerable (when you have a fair few users with shell accounts...)


        Anything like this, on NT or Linux or whatever OS you use is a pain, and a definite inconvenience.


        Certainly, as it's a local exploit, the danger level is lower, but what if there's a Linux admin who hears about this a day after their users do? Think of the average student faced with the opportunity to become root. I'd have taken that chance!


        The reason you shouldn't be smug is because people who care found this first, and this isn't a remote exploit.


        Tom.


        What the hell is this invalid formkeys crap??

        • The pain in the arse is when you have a whole load of machines (which may as it happens be running different flavours of Linux), and you spent a fair while ensuring that they all work ncely. [sic] Along comes a patch, and you have to start working out which machines tou [sic] can take off-line to test the patch, which machines are most vulnerable (when you have a fair few users with shell accounts...)

          You have to figure out which machines have untrusted users. Fortunately, this particular case is a local-only exploit; so if you're a sysadmin of a large system, then it's time to take it down.

          However, this is also where having a good firewall can save you much heartache. The firewall itself is by definition a system with untrusted users (unless you can guarantee you've never been broken into), so needs to be patched. If you have unprotected systems, all of them need to be patched.

          Keep all your systems behind a well-designed firewall, and these decisions become much, much easier.

      • Did anyone write an exploit that pur millions of Linux computers in jeopardy? No.

        That's as Far As You Know. Anybody could have acquired this information and used it w/out your knowledge. What was that story a couple of days ago where the german government was considering moving to linux partially because they feared backdoors in MS code?

        (/steps off conspiracy theorist soapbox)

  • Hooray! (Score:2, Offtopic)

    This means there is at least a year's moritorium on stupid "Microsoft-is-insecure" jokes. :)

    • I understand that you may have intended your post to be funny. I can't mod it up as so, but I still want to say my piece just in case you were actually serious.

      The ratio of M$ insecurities to Linux insecurities is still quite high. I still stand by the fact that "Microsoft-is-insecure".

      This insecurity appears to have been discovered before it was largely exploited. Unlike M$ insecurities which are exploited and systems compromised before M$ figures out that the exploit even existed.

      Once again, the open source peer review system works as it should.
      • Re:Hardly..... (Score:5, Informative)

        by tshak ( 173364 ) on Friday October 19, 2001 @11:32AM (#2451573) Homepage
        Name one exploit of late that was compromised (read: actual cases, not NTBUGTRAQ "COULD HAPPEN" reports) before M$ released a patch. Most all exploits occurred on unpatched machines when the PATCHES WHERE AVAILABLE well before the script kiddies got ahold of the exploit.

        Now, don't get me wrong, some of these holes should be an embarassment to the respective development teams. Hopefully with XP and in the future Microsoft will step up on security issues from a software design level. However, from a response level, they are doing an incredible job.
        • "Hopefully with XP and in the future Microsoft will step up on security issues from a software design level"

          You know, replace "XP" in that statement with "[latest MS OS]" and you get something people have been saying for close to ten years now (right up there alongside "hopefully the next version of Windows will be stable". Ten years. I remember people saying it when Win95 came out. And when Win98 came out. And when WinMe came out. How patient should consumers be??!? Is it OK to wait ten years for "the basics" like stability and security? There comes a time when people need to stop saying "hopefully the next version...", realise the pattern, and just give up on the company. Microsoft has had a LONG time now to "prove themselves", and they still haven't. The fact that people have been saying that for so long and not given up on the product is evidence of a distinct lack of alternatives.

      • Once again, the open source peer review system works as it should.

        Yup. And now that most boxes will probably go unpatched - there will be thousands of systems for which the exploits work exactly as they should as well!

        Oh yeah, SURE, --YOU-- might have already applied the patch, but anybody reading Slashdot is part of a vastly outnumbered minority.

        Luckily this isn't remotely exploitable... (...but then again...)

        Still. I have these little rules...

        Any bug in software is there forever.
        Patches only fix systems that get patched.
        Assume your software is dangerous; I keeps you aware and it's probably true.
  • 2.4.12-ac3 (Score:4, Informative)

    by Defiler ( 1693 ) on Friday October 19, 2001 @10:13AM (#2451189)
    If you're going to run 2.4.12, I suggest adding the latest Alan Cox patch to it, as well as Rik van Riel's "hogstop" and "eatcache" patches.
    First, start with the base 2.4.12 kernel: (Use a patch to save Kernel.org's bandwidth, if you have a recent 2.4 kernel lying around.)
    2.4.12 [kernel.org]
    Next, patch it up to 2.4.12-ac3:
    2.4.12-ac3 [kernel.org]
    Finally, apply these two patches to 2.4.12-ac3 to yield 2.4.12-ac3+hogstop+eatcache
    Hogstop+Eatcache [lwn.net]

    This is currently the ultimate in Linux VM performance.
    • Re:2.4.12-ac3 (Score:2, Interesting)

      by macinslak ( 41252 )
      As long as we're going for broke, how's about a little preemption [tech9.net] too?
    • by On Lawn ( 1073 ) on Friday October 19, 2001 @10:59AM (#2451413) Journal
      Hmmm, according to the LWN [lwn.net] that you linked to, aa patches have the best performance.

      For those that don't know aa stands for Andrea Archelangi who one of the very importent kernel hackers. It was a large part of his effort that stabalized the 2.2 VM. Although it is debated on which VM is better, over 90% of the benchmarks I've seen have pointed to AA being the better choice.

      AC even mentioned that the AA-VM was the right way to go, just too wild of a change for a stable kernel series. There is too much conspiracy theory going on that AC is hijacking the kernel for RedHat, or that the RedHat crew has a not-invented-here phobia for not including the better VM.
      Now on to a more editorial comment.

      There seems to be quite a war on this right now, but I think it will settle down in about 6 months or so like the ReiserFS wars have. I also think that we'll see a new order established in the stabalizing of kernels.

      I have no political say, but I expect that Linus will run a kernel that will be considered the "experimental, quicker evolving" kernel where things change violently. AC and others job will may to pull out pieces to salvage a semblance of stability, essentialy forking the stable branches from Linus's more exotic cutting edge kernel.

      This seems to be how things run in any case when there is a developmental kernel, and they run pretty well. The question that may be asked is "Does Linus need to slow down his effort to stabalize at all?" Its arguably true that the answer is "yes", but only to a degree that suits his own needs for order in his life-long persuit of the sexy kernel.

      Linus himself mentioned that AC does a better job of it, maybe its time to give him the whole forking-a-stable-kernel job.
  • by Baki ( 72515 ) on Friday October 19, 2001 @10:18AM (#2451204)
    Before screaming, please remember that this is only a local root exploit, that is you must already have logged in on the machine as non-root before using this exploit.

    Most Unixes have had dozens of (sometimes known) local root exploits for years, and while most of them have been ironed out, some surely remain. They are much much harder to eradicate as exploits directed to network services (i.e. from the outside) are. Every once in a while one is discovered in most UNIXes (often obscure race conditions etc).

    Till a few years ago the saying was that you should never give a local login to someone who you would not trust to be root, i.e. one could assume that sooner or later those that really try to become root shall succeed. Any mission critical servers should not have any user accounts for untrusted people; therefore, local root exploits have never been considered to be a big deal.

    If you want to compare to Windows: up till Windows XP it wasn't even possible to be logged in as multiple users at the same time, so the equivalent of a local root exploit was not really possible. Still, Windows managed to have multitudes of the way more stupid and serious class of remote exploits. With the advent of Windows XP the concept Windows kind of becomes multi-user for the first time (though in a very crude way, since unlike UNIX/Linux each login session almost starts a new instance of larger parts of the operating system). While this new concept is 30 years old in UNIX, only now Windows (XP) starts having the possibility of local exploits. Surely many of them will exist and it will take decades to kind of iron them out.
    • Precisely the point I was goint to make. We've got several linux boxes here, but only one has user accounts on it that could be used for this kind of exploit. The other boxes have several accounts, but the only ones that can be logged into are me (the admin), root (also me), and, on a couple of them, the guy who was the admin a few years ago (who I would trust with root and who still works for the company in a different capacity).

      Guess what, I'm not real worried about this bug. I suppose it's time to upgrade the kernel anyway, though - it's been a few months. Wake me up if someone finds a *remotely* executable bug with any of my customized Linuxen. 'Till then, Windows' are *still* less secure than Linux.
    • If you want to compare to Windows: up till Windows XP it wasn't even possible to be logged in as multiple users at the same time, so the equivalent of a local root exploit was not really possible.

      Errr? Terminal server? Telnet? Stuff available since NT4. Which is already phased out. Bashing is fine, as long as it is done by the facts, not by made up poop.

    • From here [microsoft.com]:

      In the Log On to Windows dialog box, type your user name, password, and domain (if required), and then click OK. The Remote Desktop window will open and you will see the desktop settings, files, and programs that are on your office computer. Your office computer will remain locked. Nobody will be able to work at your office computer without a password, nor will anyone see the work you are doing on your office computer remotely.

      What WinXP are you talking about?

    • Not quite (Score:4, Informative)

      by radish ( 98371 ) on Friday October 19, 2001 @10:50AM (#2451368) Homepage

      NT boxes have different types of user. Sure, only one can be logged in at once, but an exploit which allowed a normal user to gain Administrator privilidges is _exactly_ the same as a local root exploit. And yes, these have existed in the past, and probably still do.

    • by Telek ( 410366 ) on Friday October 19, 2001 @11:27AM (#2451545) Homepage
      (I have to retype this comment because I got a "form keys error" while trying to submit the first one. I find it so ironic how the /. community continuously bashes MS for their stupid bugs and can't keep /. running for more than a week without some sort of error)

      If you want to compare to Windows: up till Windows XP it wasn't even possible to be logged in as multiple users at the same time, so the equivalent of a local root exploit was not really possible.

      Incorrect on both counts.

      Since at least windows NT server 4.0 you have had something called Terminal Server which gave remote users the ability to log on to your server and run applications (and with recent incarnations it is in a manner much faster than xwindows too). Windows NT 4.0 (regular) also had the ability to run programs as different users (through a bit of a trick), and this trick was turned into a real feature in Windows 2000 with the "run program as a different user" option. Windows XP was just the first one to allow a logged in user to keep all of his programs running while he is "logged out". I had a utility that I used to run on Windows NT 4.0 called "su" (and you can guess what that does) which allowed me to run any program as a different user.

      And besides, being able to have multiple simultaneous logged in users has no relevance to the ability to have root exploits. As long as you have user privilege levels you can have root exploits.
      • Terminal server can't be compared to a multi-user system like UNIX. It may look the same at first sight, but in fact it is more like VMWare, in the sense that a large part of the operating system is instantiated for every user that "logs in", that is each user has almost a private copy of the operating system (which explains the huge amount of resources required per user). This is a gross hack, and WinXP multi-user logon is based on the same technology. It can't be compared to a true multi-user operating system such as UNIX.

        Indeed (as someone also remarked in another response) one could compare getting admin-right on a flie as equivalent to a local root exploit. Still, it is not the same. It only applies to file-access rights, not to executing processes with other permissions.
        • It may look the same at first sight, but in fact it is more like VMWare, in the sense that a large part of the operating system is instantiated for every user that "logs in",

          You obviously have no idea what you're talking about. Terminal server is no such thing. The entire kernel of the O/S is loaded once, and once only. For example on Windows XP The only program that is loaded per user is explorer.exe (I just checked). On terminal server the only things that are loaded per user is rundll32.exe, display.dll and explorer.exe. Where did you get the idea that it's reloading the entire OS?

          (which explains the huge amount of resources required per user).

          It's best to use things before giving wild accusations. Having another logged in user on Windows XP here just took a whopping 6MB of more resources...

          Indeed (as someone also remarked in another response) one could compare getting admin-right on a flie as equivalent to a local root exploit. Still, it is not the same. It only applies to file-access rights, not to executing processes with other permissions.

          Have you ever used any Windows NT system? What do you think Administrator rights are for? Have you ever run policy manager? group policy manager? There are more than a hundreds rights that you can configure in the system. That's far more than I can recall every seeing in any *nix based system, but I don't make wild accusations about things that I don't know about...

      • If you want to compare to Windows: up till Windows XP it wasn't even possible to be logged in as multiple users at the same time
      This is incorrect.

      Windows NT, of which Windows 2000 and XP are but new iterations, has been multi-user from the start, even though it has lacked the shell counterparts to easily exploit it without resorting to C or C++. For example, the Windows NT Resource Kit comes with a "su" program.

      The NT user API design is heavily based on ACLs, which means, for example, that you can create threads, pipes, files, synchronization objects, etc. and restrict access to users with certain permissions. I'm no Windows fan, but they got this part right.

      • to turn a buffer overflow of a non-privileged nework daemon into a remote root exploit;
      • to allow unprivileged users to sniff the LAN;
      • to allow 'viruses' (.i.e. executables from an unknown source which a luser run without checking) to have full access to your machine
      This is a serious bug (though not a new kind of bug: as you said, local exploit have been with us for years), because it undermines the basics of Linux security model (every user stays in its box).
    • This is EXACTLY the same attitude that MS has towards security. An exploit was discovered once upon a time that gave the administrator access to all user's passwords. "What's the big deal?" said MS. "Surely you trust your administrators! They could change the passwords if they wanted to, anyway!" The correct answer would have been "Oh no! An exploit, which combined with others could allow a bad guy to do terrible things!"

      So, your response is "What's the big deal? Surely you trust the people you allow onto your box!" The correct answer is the same as above.

      Never underestimate the creativity of the bad guys. Someone will take this exploit and combine it with others and gain remote root. We will all look back and smack our heads for missing his obvious combination.
  • by bhhenry ( 83946 )
    not to use Microsoft software ... oh, but wait
  • by Anonymous Coward
    Warning !
    This is not true !
    Don't upgrade to Linux 2.4.12.
    Linux 2.4.12 is a satanic linux version which will control your mind and your computer.
    You can easily see this on the version number,
    for 2.4.12 means 2+4 . 2*6 = 6 6 6 - THE NUMBER OF THE BEAST.

    DON'T UPGRADE.

    If you scan the kernel sources you will see other satanic messages like "Inode" an anagram for DEOIN the 32. commander of baalzebubs forces, "semaphore" an anagram for SHAPOMER the 6. servant of azmoziel and "kernel threads" an anagram for "LAD SHENK RETER".
  • by TheMMaster ( 527904 ) <hp.tmm@cx> on Friday October 19, 2001 @10:26AM (#2451231)
    To all the people that feel really good about this because they are sick of microsoft being attacked about this: Good for you, you deserve it, enjoy because it won't happen again this year ;-)

    Now to all the linux zealots here: To make sure that this doesn't become a problem we NEED to patch EVERY machine we can find and tell EVERYONE that has a linux box to patch it, why? because NOW it's funny, there isn't a worm out with a remote exploit of GPM that triggers an error Identd to give away your "Games" password so you can log on and become root ;-)

    but we must make sure that this disappears ASAP or else this sure as hell won't be funny anymore. PLEASE make sure that we won't get staroffice macro virusses, sircam 4 linux etc... THAT we will be the laughing stock of the entire software world... I'll bet that microsoft competetion management (r) is already producing FUD on this....
    • Could you even make a worm to exploit this? My understanding is that the exploit requires you to be connected already as a nonprivileged user.
      • I have no idea, it was just an example. The problem is that we DON'T know what might happen if we leave this unpatched, my point was that it is possible and that we shouldn't wait for something to happen because we can't afford to.
        Code Red was based on an exploit discovered almost six months before it came out... that was the point I was trying to make...
        According to the rating I guess that I wasn't quite clear on this....
  • by pheared ( 446683 ) <[ten.deraehp] [ta] [nivek]> on Friday October 19, 2001 @10:27AM (#2451236) Homepage
    In case many of you don't subscribe to bugtraq, there was a follow-up posted to the original advisory. I have replicated it here for your convenience. It raises an important issue, suggesting that kernels up to 2.4.12 may be affected as well. I don't claim to know, just forwarding the facts. Note that, he is using a patched kernel which could introduce any number of flaws, but I'm willing to give him the benefit of the doubt.

    Original Message:

    From: Demitrious Kelly
    To: bugtraq@securityfocus.com
    Subject: RE: Flaws in recent Linux kernels

    The description of the second problem is accurate, but I don't think the
    assessment of the kernels which can or cannot be affected by this exploit
    is... I'm using a newly compiled kernel Linux 2.4.12-grsec-1.8.3.

    ( Linux 2.4.12 with the Grsecurity Patch
    http://www.grsecurity.net/features.htm )

    # /* begin shell session */
    [12:52:11][apokalyptik@home:~]: ./epcs_ptrace_attach_exploit
    bug exploited successfully.
    enjoy!
    sh-2.05$
    # /* end shell session */
    • Did not worked on a std 2.4.3 (linus, not ac).

      Maybe I'm kinda stupid but running the exploit did nothing, even changing the sample code to be more 'expresive'....
    • What am I missing? (Score:2, Interesting)

      by skajohan ( 29019 )
      Maybe it's because I'm not a 31337 h4X0r, but I can't get this exploit to work.

      $ uname -a
      Linux limbo 2.4.0 #8 sat jul 21 14:24:48 CEST 2001 i686 unknown
      $ id
      uid=1001(johan) gid=1001(johan) groups=1001(johan)
      $ gcc insert_shellcode.c -o insert_shellcode
      $ gcc ptrace-exp.c -o ptrace-exp
      $ ./ptrace-exp
      attached
      exec ./insert_shellcode 24982
      $ id
      uid=1001(johan) gid=1001(johan) groups=1001(johan)

      So what's up?

  • by Anonymous Coward
    The MacOS according to bugtraq has never had a single exploit over a network.

    Running Webstar on MAc OS 9.2 or older, any versions, is the safest most secure platform.

    Instead of a backdoor every month or two like competing OS's, it has never had a discoverred exploit, or been hacked.

    It is because the mac has no command line, no paths, no concept of root (all code is root, except micro kernel), no way to exec code from data files based on file name or file suffix, no way to corrupt stack easily (call chain different than intel), no way to creat buffer overruns from strings because most ac people and the ROMS, and OS, use length delimited pascal style strings instead of null terminated.

    There are many more secure things dealing with CGI, alias paths, etc.

    But in summary, the US ARmy uses MAc web servers and most experts agree, that the most secure server, if price is not an issue, is a mac from a local store and Webstar.
    • Odd. What's this [securityfocus.com]? Hrmmm. I thought it was an exploit over a network... and I thought it was on bugtraq too. I guess I must be wrong...
    • The MacOS according to bugtraq has never had a single exploit over a network.

      Yes it has, according to some different posts here. In any case, a server with 0 market share will probably not attract many exploit-writers.

      Running Webstar on MAc OS 9.2 or older, any versions, is the safest most secure platform.

      It may be safe and secure exploit-wise, if there really are no exploits, but is the false sense of security worth moving to a distant OS with few advantages and a large amount of disadvantages? I say false sense of security, because different less-used code is just as exploitable, the only difference is the motive.

      Instead of a backdoor every month or two like competing OS's, it has never had a discoverred exploit, or been hacked.
      Actually, OpenBSD doesn't have a backdoor every month or two.

      It is because the mac has no command line, no paths, no concept of root (all code is root, except micro kernel)

      That's quite a contradiction.
      all code is root is probably the worst security set up one could conceive, and as far from the principle of least privelege as possible.

      no way to exec code from data files based on file name or file suffix

      As if this is the problem with Windows security :P

      no way to corrupt stack easily (call chain different than intel)

      That's a system platform issue, not an OS issue. Linux can run on the same stack.

      no way to creat buffer overruns from strings because most ac people and the ROMS, and OS, use length delimited pascal style strings instead of null terminated.

      That doesn't resolve the problem at all. In fact, probably most buffer-overruns do NOT result from null-terminated string usage.

      There are many more secure things dealing with CGI, alias paths, etc.

      You're confusing different with secure. Different software will have different types of exploits, unless it is truly secure. Last time I checked, Macs were not an orthogonal persistent pure capability system, so they're not really secure.

      But in summary, the US ARmy uses MAc web servers and most experts agree, that the most secure server, if price is not an issue, is a mac from a local store and Webstar.

      Just like a lot of people use Slackware with their own compilations and compilation flags, so their software is different. Its not security, its a difference. It means exploting it takes some specific work, rather than exploits for the masses, that's all.
  • by Anonymous Coward
    And here i am trying to remember my password for root..
  • by petrov ( 7314 ) on Friday October 19, 2001 @10:43AM (#2451329) Homepage
    I'm seeing a lot of comments like "This is only a local root exploit", or michael's "Important for anyone running a multi-user system."

    That's crap. This is a big deal. Don't try and downplay this. If you leave this unpatched, it turns every remote login hole into a remote root hole. There's plenty of code running remotely: mail, cgi, etc. Good security isn't foolproof. Good security is defense in depth. That means that you are patched against remote holes, and patched against local holes, so that escalation of privileges is difficult.

    --sam
    • No! Good security is fail-closed security: Thus good security is a pure capability system.
      In *nix (and Windows, ofcourse), there are millions of requests one can request, and a bug in any of each will open security holes.
      In pure capability systems, the only requests you can express, are the ones you are authorized to perform.
      This means that security is a lot more fail-closed, because bugs do not escalate your authorization, except for specific capability-handing logic bugs.
      This narrows down the amount of code that can damage security by orders of magnitude, and simplifies the system a lot. No longer will race conditions, ACL test failures, buffer overflows, or other cryptic bugs grant authorization escalation. Now it would have to be high-level capability-granting logic bugs. In a much smaller, well-debugged system, of a fixed-code-size (rather than the ever-larging *nix trusted codebase).
  • by dave-fu ( 86011 ) on Friday October 19, 2001 @10:46AM (#2451353) Homepage Journal
    Mac OSX also got a remote root exploit [securityfocus.com] of its own.
    I don't know whether it's ironic or not that the introduction of open source software led to the first Mac-based remote exploit that I can remember in a long, long time. I'm leaning against it as code's still made by humans and humans still make mistakes. You'd be well-advised to remember this and temper your flames against Any OS That Isn't Mine next time.
  • I am currently running 2.2.18 out of necessity (VPN patch that's not available for 2.2.19). From the article it would seem that until patches are available for your kernel, you can remove the suid (chmod -s) from the newgrp binary. Granted, you won't be able to add any new groups, but I think it would temporarily remove the exploit. Am I correct here?
    • Re:Interim Fix? (Score:2, Informative)

      by sshore ( 50665 )
      From the article it would seem that until patches are available for your kernel, you can remove the suid (chmod -s) from the newgrp binary.

      It's actually a kernel bug, and I'm told that any suid binary can be a vector. The temporary fix is to chmod -s all suid binaries on the system until it can be properly fixed.

    • Re:Interim Fix? (Score:2, Informative)

      by Sircus ( 16869 )
      Only on the assumption that this is your only world-executable suid binary. If you've any others, they're also vulnerable. To check:

      cd /
      find . -perm -4001 -uid 0

      (this isn't quite complete - if you had a file which was suid root, owned by a non-root group and group-executable, that would also be vulnerable)
  • by pp ( 4753 ) on Friday October 19, 2001 @11:24AM (#2451530)
    There's a loadable kernel module that
    replaces the ptrace() function call with
    a wrapper that makes it impossible to exploit
    this bug. It can be found from
    http://c.home.cern.ch/c/cons/www/security/.
    Works on 2.2.19, not tried to use it with 2.4.x yet (should be pretty easy).
  • In a recent article [cnet.com] on CNet:

    This week, Linus Torvalds, manager for Linux's security response center, published an essay on the company's site decrying the information and example code released by some companies and independent security consultants as "information anarchy."

    "It's high time the security community stopped providing the blueprints for building these weapons," Linus wrote in the essay. "And it's high time that computer users insisted that the security community live up to its obligation to protect them."

    "The state of affairs today allows even relative novices to build highly destructive (malicious software)," he wrote in the essay. "It's simply indefensible for the security community to continue arming cyber criminals. We can at least raise the bar."

    "(We) don't purport to have the answer to the problem," he said in a Wednesday interview. "But we believe that these practices are harmful."

  • I find the tone of this post to be part of a disturbing, if subtle, trend.

    I know this isn't new ground to tread in these forums, but the respective tones of posts about Microsoft bugs and Linux bugs are worthy of change.

    When there's an MS bug, the posts generally read something like... "User writes, "Here's a big surprise. There's a bug in IIS that lets any six year old root the box. Excuse me while I gasp in surprise. Exploits are here and here. Cnet has the whole story." It's amazing that people still rely on IIS... I wonder when people will stop making their software choices entirely based on FUD."

    When there's a bug that eluded many major kernel revisions, the post reads: 'Apparently there's been a bug in the kernel for months that yields unauthorized remote access to root. Huh. Users of multi-user systems might want to patch this when they get a chance.' -- and it's on to the next story.

    Disparities such as these, subtle as they are, affect Linux communities' credibility. It makes us look immature because we appear to apply a double standard. It's a chink in our armor we should patch ASAP.
  • by 4of12 ( 97621 )

    My name is Scottissue Pulp and I'm the Manager of the Linux Security Response Center and I'd like to take this opportunity to decry this

    "practice of deliberately publishing explicit, step-by-step instructions for exploiting security vulnerabilities, without regard for how the information may be used."
  • Oh shit! Now Gartner is going to recommend that I switch all my servers back over to NT.
  • What a shitty OS this is! They release an OS full of holes and then patch them all up afterward, and they expect us to see this as secure? Ha! Just goes to show why nobody in their right mind would ever use a shitty OS like Windo...er, Linux...

    (sarcasm, you fool)

  • This article appeared on stepwise.com, a site devoted to Mac OS X (so yes, Macs *are* vulnerable!") http://www.stepwise.com/Articles/Admin/2001-10-15. 01.html [posted 18-Oct-01] >> Mac OS X 10.1 Local Security Exploit A serious security exploit has been found in Mac OS X 10.1 (in fact, as it turns out, it has been present in 10.0.x versions as well). Using this exploit any user at the Desktop can gain root access to the machine. The problem is caused by applications that are set-uid root (that is, regardless of the user that runs them, they have root permissions). Normally these programs have a limited scope of functionality so that damage is minimized. However, it appears that any items launched from the Apple->Recent Items menu inherit the root user privileges. Additionally, any other apps in the Apple menu (i.e. System Preferences) can be launched as root using this hole. This can be demonstrated using the following technique: [See URL above for more details] So obviously, Linux isn't the only one that has these kinds of problems. And to that thread commenting about Mac OS not having problems like this -- yes, that might be true for Classic Mac OS, but its obviously not true for the current OS Every OS that I've used in the past couple of decades has had some kind of "local security exploit". That's just the way it is. Later, --Gregory

"What man has done, man can aspire to do." -- Jerry Pournelle, about space flight

Working...