Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Word 2007 Flaws Are Features, Not Bugs

Posted by Zonk on Fri Apr 13, 2007 01:43 PM
from the i-thought-that-was-just-a-programmer-joke dept.
PetManimal writes "Mati Aharoni's discovery of three flaws in Word using a fuzzer (screenshots) has been discounted by Microsoft, which claims that the crashes and malformed Word documents are a feature of Word, not a bug. Microsoft's Security Response Center is also refusing to classify the flaws as security problems. According to Microsoft developer David LeBlanc, crashes aren't necessarily DoS situations: 'You may rightfully say that crashing is always bad, and having a server-class app background, I agree. Crashing means you made a mistake, bad programmer, no biscuit. However, crashing may be the lesser of the evils in many places. In the event that our apps crash, we have recovery mechanisms, ways to report the crash so we know what function had the problem, and so on. I really take issue with those who would characterize a client-side crash as a denial of service.' Computerworld's Frank Hayes responds to LeBlanc and questions Microsoft's logic.'"
This discussion has been archived. No new comments can be posted.
Display Options Threshold:
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
  • by Anonymous Coward on Friday April 13 2007, @01:46PM (#18722311)

    Word 2007 Flaws Are Features, Not Bugs
    That's right and the price you pay for it is an investment, not a complete waste of resources.

    What's the matter? Did the Slashdot editors lose their English-to-Microsoft dictionary again?
  • I don't see the problem by dedazo (Score:1) Friday April 13 2007, @01:48PM
  • Ok. by Anonymous Coward (Score:1) Friday April 13 2007, @01:49PM
    • Re:Ok. by forgotten_my_nick (Score:2) Friday April 13 2007, @01:53PM
  • I didn't know that by alberion (Score:2) Friday April 13 2007, @01:49PM
    • Re:I didn't know that (Score:5, Insightful)

      by Skadet (528657) on Friday April 13 2007, @01:58PM (#18722583)
      (http://slashdot.org/)

      Why spend on testing, when you got paying consumers to do the bug reports for you?
      Because anything more complex than calc.exe is going to have weird bugs that can't discovered within a realistic timeframe to keep release dates. And if I'm not mistaken, open-source software does the same thing. BugZilla anyone? If it weren't for user feedback, a great majority of bugs wouldn't get fixed.
      [ Parent ]
      • I guess it is an attitude problem. by alberion (Score:3) Friday April 13 2007, @02:20PM
        • Small hint: they do exactly that.

          To quote Para. 16 of the Windows XP Home EULA:

          Except for the Limited Warranty and to the maximum extent permitted by applicable law, Microsoft and its suppliers provide the Software and support services (if any) AS IS AND WITH ALL FAULTS, and hereby disclaim all other warranties and conditions, whether express, implied or statutory, including, but not limited to, any (if any) implied warranties, duties or conditions of merchantability, of fitness for a particular purpose, of reliability or availability, of accuracy or completeness of responses, of results, of workmanlike effort, of lack of viruses, and of lack of negligence, all with regard to the Software, and the provision of or failure to provide support or other services, information, software, and related content through the Software or otherwise arising out of the use of the Software. ALSO, THERE IS NO WARRANTY OR CONDITION OF TITLE, QUIET ENJOYMENT, QUIET POSSESSION, CORRESPONDENCE TO DESCRIPTION OR NON-INFRINGEMENT WITH REGARD TO THE SOFTWARE.

          Seems pretty much the case to me.

          Don't even try the "Click throughs not legally binding!". It doesn't need to be binding for this - but to claim they don't sell software AS IS is an absolute fallacy, trivially demonstrable.

          [ Parent ]
        • Re:I guess it is an attitude problem. by hahiss (Score:2) Friday April 13 2007, @02:55PM
        • 1 reply beneath your current threshold.
      • Re:I didn't know that by ady1 (Score:2) Friday April 13 2007, @02:42PM
      • Re:I didn't know that by LWATCDR (Score:2) Friday April 13 2007, @03:34PM
        • Re:I didn't know that by Voice of Meson (Score:1) Friday April 13 2007, @05:15PM
          • Re:I didn't know that (Score:4, Insightful)

            by xero314 (722674) on Saturday April 14 2007, @12:52AM (#18728901)

            You can write bug free software, it's just several orders of magnitude more expensive and time consuming to write it.
            I was gonna let all this slide by but after reading that line I had to jump in. This is complete rubish. An absolute line made up by supporters of Agile development and Frauds out to suck millions of dollars from ignorant venture capitalists. Look I'm sick of hearing this. As a software Engineer I have experienced bad software development and good software development, and believe it or not, good, solid, bug free (99.9%) software takes less time to design, write and test, than the majority of the crap beta software corporations like MS spits out to the unsuspecting public. And that's not even getting into the fact that programs like word are far more complex than they need to be to accomplish exactly what they end up doing.

            I'd apologize for the rant but this kind of bullshit spouted by slack ass "Programmers" and "Developers" just pisses me off to no end. Keep thinking your gonna have that job security you always wanted by making sure there's no one else that can weed threw your garbled mesh of spaghetti, when in reality making software that actually works if far more job securing. But then again I would probably be out of work if the "developers" of the world actually did their shit right since organizations would need people like me to clean it all up.

            Fuck the karma, some one had to finally clear this up, too bad no one in a position to actually change things will read this.
            [ Parent ]
      • Re:I didn't know that by iamacat (Score:2) Friday April 13 2007, @03:36PM
      • Re:I didn't know that by nuzak (Score:2) Friday April 13 2007, @04:32PM
        • 1 reply beneath your current threshold.
      • Differences, differences by bonefry (Score:1) Friday April 13 2007, @05:35PM
      • Re:I didn't know that by FireFury03 (Score:2) Saturday April 14 2007, @11:26AM
      • 2 replies beneath your current threshold.
  • I Wish (Score:5, Funny)

    by Mockylock (1087585) on Friday April 13 2007, @01:50PM (#18722405)
    (http://www.everybodysucksbutme.com/)
    I wish I could just pass out when my wife asks me some stupid question that I don't want to answer. Better yet, when I'm asked to fix a bug at work, it would be nice to just roll over and hit the snooze. Let's apply this everywhere.
  • Let me see... (Score:4, Insightful)

    ...if I understand this correctly. Basically, a security researcher believes he's found a buffer overflow. However, he has not yet found a way to exploit that overflow because Word keeps crashing. Microsoft says that the crash is preventing any security hazard, and therefore there is none. Correct?

    I hate to say it, but I'm going to have to come down on Microsoft's side on this one. If it's a non-exploitable crash, then it's a simple bug in handling corrupt documents and nothing more. The researcher can ring everyone again once an exploit has been found.

    As for the DoS potential... seriously, why is everything a "Denial of Service" with these guys? It's a bad document. Word crashes. Life goes on. It's not like your computer is going to become unusable because Word crashed. You get minorly inconvenienced by the jerk who sent you the document, you figure out that the doc is bad, then you move on.
    • Re:Let me see... (Score:5, Insightful)

      If the facts are as you've described, I agree that there isn't a security issue here. There is, however, still a bug. Anytime a program crashes for reasons other than hardware failure, there is a bug. If it takes really unusual input to do it and there are no security consequences, it may be a minor bug, but it is still a bug.

      [ Parent ]
    • Re:Let me see... (Score:5, Insightful)

      by Deadbolt (102078) on Friday April 13 2007, @01:57PM (#18722557)
      I hope you're not serious; if you are, I'm never letting you near any code I'm responsible for.

      By definition, the app crashing is a denial of service. It's no different than sending a Christmas tree packet to an ancient unpatched router: it goes boom, shuts down the network, no network service. Word crashes: boom, document maybe lost, no use of Word.

      A program must be able to recognize invalid input and take appropriate action. Allowing (or forcing) a crash is NOT acceptable.
      [ Parent ]
      • Re:Let me see... by zappepcs (Score:2) Friday April 13 2007, @02:13PM
        • Re:Let me see... by d-rock (Score:2) Friday April 13 2007, @02:29PM
        • You'd rather your router crashed than word? by anss123 (Score:2) Friday April 13 2007, @02:44PM
        • Re:Let me see... (Score:5, Interesting)

          by misleb (129952) on Friday April 13 2007, @03:20PM (#18723879)
          The point is that a malformed documented shouldn't throw a word processor into an unrecoverable state. That is a bug. I don't know whether or not it is a denial of service attack. That is debatable, but not properly handling an exception in a document is definitely a bug. A word processor can simply tell the user, "hey, this document is fucked, I can't open it." If it just crashes, the user could possibly lose data in other open documents. And that is a Bad Thing(tm).

          -matthew
          [ Parent ]
      • Re:Let me see... (Score:4, Insightful)

        by Jherek Carnelian (831679) on Friday April 13 2007, @03:38PM (#18724203)

        A program must be able to recognize invalid input and take appropriate action. Allowing (or forcing) a crash is NOT acceptable.
        Sounds like you've never heard of a kernel panic.

        Sometimes immediately dying is the best option - when you reach a point in the code that "should never happen" then you can not count on the integrity of anything else within the program at the time. At that point the ONLY safe option is to "go boom" thus assuring that whatever the problem is, at least it won't corrupt anything else.
        [ Parent ]
      • Re:Let me see... by Threni (Score:1) Friday April 13 2007, @03:41PM
      • Re:Let me see... by debiansid (Score:1) Friday April 13 2007, @03:43PM
      • Re:Let me see... by jimicus (Score:2) Friday April 13 2007, @03:51PM
      • Re:Let me see... by AK Marc (Score:2) Friday April 13 2007, @04:58PM
      • Re:Let me see... by Achromatic1978 (Score:2) Friday April 13 2007, @02:53PM
      • 1 reply beneath your current threshold.
    • Re:Let me see... (Score:5, Interesting)

      by Ckwop (707653) * <Simon.Johnson@gmail.com> on Friday April 13 2007, @02:01PM (#18722633)
      (http://www.ckwop.me.uk/)

      owever, he has not yet found a way to exploit that overflow because Word keeps crashing. Microsoft says that the crash is preventing any security hazard, and therefore there is none.

      The Open BSD guys have a philosophy: "The only difference between a bug and a vulnerability is the intelligence of the attacker."

      I wish more programmers held this view! A bug is an undefined state of the program. It's quite clear that this is a dangerous position for your program to be in. Bug really are baby vulnerabilities. It's best to remove them as soon as you find them.

      Simon

      [ Parent ]
    • Re:Let me see... (Score:5, Interesting)

      by kebes (861706) on Friday April 13 2007, @02:03PM (#18722689)
      (Last Journal: Monday January 08 2007, @02:45PM)
      I totally agree that calling this a security flaw or DoS is silly. Until it is actually used to exploit the program, it's not a confirmed security flaw.

      However using bad documents to crash Word is still a flaw in Word, in my opinion. The application should just say "Can't open bad/corrupted document" and let the user keep working. In the blog he says:

      The theory is that it is better to crash (at least with client apps) than it is to be running the bad guy's shell code.
      I understand the rationale, but I would argue it's rather sloppy programming that uses a crash as a means to prevent such bad things from happening. Exceptions can be thrown, but they should be caught and used to halt the "bad actions", and revert back to a normal program state.

      Obviously it is better to crash than to execute arbitrary enemy code. However it's better still to just refuse to execute arbitrary code, but otherwise keep running. The problem with using crashing as a security system is that then the "bad guys" will try to crash your application on purpose (calling it a DoS is a stretch, mind you), which opens up new security problems. (A crashing app may expose other security vulnerabilities, disclose otherwise protected information, destabilize other apps/the OS, etc.)
      [ Parent ]
    • Re:Let me see... by Cristofori42 (Score:1) Friday April 13 2007, @02:23PM
    • RTFA - not just Word crashing (Score:5, Informative)

      by PCM2 (4486) on Friday April 13 2007, @02:26PM (#18723029)
      (http://neilmcallister.com/)

      ...if I understand this correctly. Basically, a security researcher believes he's found a buffer overflow. However, he has not yet found a way to exploit that overflow because Word keeps crashing.

      Actually, according to the Computerworld article, two of the bugs discovered will peg the processor at 100 percent, forcing a cold reboot that potentially will do a lot more damage than just corrupting your Word documents. Whatever your philosophy otherwise, that really is a denial of service.

      [ Parent ]
    • Re:Let me see... by try_anything (Score:2) Friday April 13 2007, @02:40PM
    • Re:Let me see... by LWATCDR (Score:2) Friday April 13 2007, @03:26PM
    • Re:Let me see... by noidentity (Score:1) Friday April 13 2007, @03:39PM
    • Re:Let me see... by mjm1231 (Score:2) Friday April 13 2007, @03:58PM
    • where do you want to go today? **FATAL EXCEPTION** by hxnwix (Score:3) Friday April 13 2007, @04:10PM
    • Re:Let me see... by Bert64 (Score:2) Saturday April 14 2007, @06:01AM
    • Re:Let me see... (Score:5, Informative)

      Exactly. It's expected than any app will crash if you feed it malicious junk.

      Sorry, I don't buy it. The only way that is a valid expectation is if you explicitly tell it to crash when it gets malformed data, which is offensive and stupid. The proper thing to do is to tell it to alert the user if there is malformed data, and then clean up and get ready to parse another document.

      Crashing is definitely a sign that something bad is happening. Traditionally, when an app crashes because of an invalid document, it's writing to some memory it shouldn't be. This is a sign of lazy or stupid programmers not doing proper checking of the input.

      [ Parent ]
    • Re:Let me see... by sqlrob (Score:2) Friday April 13 2007, @02:05PM
      • 1 reply beneath your current threshold.
    • Re:Let me see... by N7DR (Score:2) Friday April 13 2007, @03:02PM
    • 6 replies beneath your current threshold.
  • It's officially 1984 (Score:3, Interesting)

    by Mateo_LeFou (859634) on Friday April 13 2007, @01:51PM (#18722427)
    (http://www.a4fs.net/blog/)
    The spokesthing actually contends that the crashes are "a by-design behavior that improves security and stability"
  • Input validation by Skadet (Score:2) Friday April 13 2007, @01:51PM
    • Re:Input validation (Score:5, Insightful)

      by idontgno (624372) on Friday April 13 2007, @02:19PM (#18722931)
      (Last Journal: Wednesday February 07 2007, @10:52AM)

      If Word went ahead and executed arbitrary code, that's one thing. But as it stands, it just crashes out.

      You do understand that in many cases, a "crash" is when the software attempted to execute random garbage; and that if you tailored the garbage, you would have an arbitrary code execution vulnerability?

      A crash, frankly, is very often an incompletely exploited code execution vulnerability. That may not be so, here; but if the crash is caused by stack or heap corruption, there's a distinct chance the triggering dataset could be made into a shellcode exploit or the like.

      [ Parent ]
    • Re:Input validation by Bacon Bits (Score:2) Friday April 13 2007, @03:14PM
  • "That's the way it was designed!" by jojoba_oil (Score:2) Friday April 13 2007, @01:51PM
  • What by wumpus188 (Score:1) Friday April 13 2007, @01:52PM
    • Re:What by Skadet (Score:2) Friday April 13 2007, @01:55PM
      • Re:What by wumpus188 (Score:1) Friday April 13 2007, @01:58PM
    • Re:What by shawnce (Score:2) Friday April 13 2007, @01:56PM
    • Re:What by rwwyatt (Score:1) Friday April 13 2007, @02:23PM
      • Re:What by maxume (Score:1) Friday April 13 2007, @04:50PM
    • Re:What (Score:4, Interesting)

      by hey! (33014) on Friday April 13 2007, @03:48PM (#18724317)
      (http://kamthaka.blogspot.com/ | Last Journal: Wednesday March 30 2005, @03:18PM)
      Actually, in my opinion he's right.

      People act as if a crash is the worst thing in the world. Generations of programmers have been trained to think of a crash bug as the ultimate badge of shame. The problem is that it is not, by far, the ultimate mistake.

      I think it's useful to keep this in perspective. It's better that you crash the user's car than run over the user's baby. I always tell guys who work for to to place bugs in the following order of severity (1 is highest severity):

      1) user's system security is compromised.
      2) user's data is corrupted or lost.
      3) give wrong answers that aren't obvious (2 and three might be interchanged in some circumstances)
      4) crash bugs and obvious garbage output

      It's not that crash bugs are good. It's that given a choice between a crash and things higher on the list, you ought to choose the crash.

      This is not a choice that, once upon a time, we had to make. Crashes happen when a condition you hadn't anticipated happen, so they were not (as a rule) a matter of choice.

      Java checked exceptions changed that, and required that I develop clear priorities. For non-programmers, an exception is a condition (usually abnormal) that can occur some place in your program. A checked exception is one that it is mandatory to handle some place in your program, otherwise your program is not valid.

      I'm not religiously against checked exceptions, other than that they're a bad choice for default. The problem is that the places where exceptions occur are often not the right place to handle them. The temptation is to mishandle the exception, particularly exceptions that are rare, at a low level. Sometimes this is a temporary measure so you can get to some initial tests you want to do, and you never get back to undoing it. Sometimes it happens because the programmer doesn't know a good way to handle the exception, so he papers it over.

      The result is that you convert a crash bug into some other kind of bug. Often a bug that's higher on the severity list. That's why converting a checked exception into a non-checked exception is often the best course of action, even though it creates a possible crash condition later on.

      Automated testing does, or potentially can, stand in for the function of checked exceptions with less risk. Some kind of annotation that was integrated with unit testing might be ideal.

      [ Parent ]
      • 1 reply beneath your current threshold.
    • 1 reply beneath your current threshold.
  • Better recovery... (Score:4, Insightful)

    by kebes (861706) on Friday April 13 2007, @01:52PM (#18722457)
    (Last Journal: Monday January 08 2007, @02:45PM)

    However, crashing may be the lesser of the evils in many places. In the event that our apps crash, we have recovery mechanisms, ways to report the crash so we know what function had the problem, and so on.
    Okay, handling crashing properly (saving some data, logging errors, etc.) is of course nice. However even the most graceful crash is, as far as "recovery mechanisms" go, pretty bad. A proper recovery mechanism would be rather less disruptive to the user... for instance a prompt that warns the user that something bad happened and the document is being rolled back to before the last action occured. Similarly logging of errors can be done properly without crashing the entire application. A log-file is generated, and the user keeps working even though the last action didn't work, hopefully with some feedback indicating why the last action didn't work.

    I am fully aware that writing bug-free software is impossible. Ultimately, it is unavoidable that crashes will occur. When they do occur, they should be handled as gracefully as possible. However one should not defend one's code (and coding flaws) by saying that "sure it crashes--but the crashes are part of our carefully engineered recovery mechanism!" That's a lame excuse, because if you're aware of a consistent crash condition, you should be able to code so that instead of crashing, the program does something more friendly.
  • He's got half a point (Score:4, Interesting)

    by Red Flayer (890720) on Friday April 13 2007, @01:53PM (#18722473)
    (Last Journal: Friday November 10 2006, @02:16PM)
    Say you have a known vulnerability in your code, which fixing would require rebuilding your app from scratch (or damn near close enough to make it too expensive to fix). Also say that you have the capability to detect an attempt to take advantage of the flaw before any damage is done, and that shutting down the app will prevent further damage.

    Wouldn't it be a good idea to shut down the app to prevent your whole network getting hosed? And doesn't the pain-in-the-assitude for the user maybe prevent them from opening shady docs the next time around?

    Admittedly, it would be best if the flaw never existed in the first place. But if fixing the flaw outright is out of the question, why isn't this a good solution?
  • But seriously.... (Score:4, Insightful)

    by beef623 (998368) * on Friday April 13 2007, @01:53PM (#18722481)

    I can see Mr. LeBlanc's point, that it's better to crash than open up your system, but it seems like they are taking this awfully lightheartedly. They're still bugs and they still need fixed. I think they are confusing debug features with release features.

  • Word is a bug by dbfruth (Score:2) Friday April 13 2007, @01:56PM
  • How Long Before... (Score:3, Informative)

    by Evil W1zard (832703) on Friday April 13 2007, @02:01PM (#18722637)
    (Last Journal: Thursday October 13 2005, @10:30AM)
    Ok so 2 of the 3 bugs result in a DoS type situation and the third could allow for execution of arbitrary code... Using a Fuzzer dont you typically find DoS/Reboot/Crashes first and then more research to include debugging can show where in memory the crash occurs and then you move into the world of tailoring an overflow and allowing for execution of arbitrary code...

    To me DoS'ing a client-side app like Word is an annoyance, but I would expect to see exploit code coming that does do code execution or privilege escalation of some sort and then MS will patch it on Tuesday just like they've been doing for years...
  • Error by wumpus188 (Score:1) Friday April 13 2007, @02:03PM
  • explosive code? (Score:5, Insightful)

    From the linked blog...

    1) Your code blew up, and you're about to get 0wn3d. Yup, it's exploitable, and the customers are not going to be happy.
    2) Your code blew up, and maybe it is exploitable, maybe not.
    3) Your code blew up, and you meant it to blow up, and it's clearly not exploitable.

    Since you are not coding specifically for your application to crash (Or I hope not) surely there can be no 3. 2 is as good as it gets, you have done everything you can to prevent your code "blowing up" you have tried to handle anything that can be thrown at it gracefully, and you have done everything to ensure that when if and when things do go wrong they can do no damage, that's 2, not 3. If you cannot foresee and prevent every possible thing that could cause your application to crash (which you can't), then how can you foresee every possible way in which that unforeseeable crash could be exploited. All you can ever do is your best.

    Next up, from the article:

    Two of the three bugs result in a denial-of-service-like situation, with the PC's processor maxed out at 100%, making the machine unusable until it's rebooted. The third, Aharoni suggested, could be used to introduce remote attack code after an exploit causes an overflow of "wwlib.dll," a crucial Word library. But "code execution is not trivial," he added.

    If described correctly then these bugs all pose a risk. sure the first two are minor risks, the later is major, but all three are bugs that should be listed as security vulnerabilities. I would suggest that the reason that they are currently not being seen as such by Microsoft, is simply that no one can be sure if the conditions required to trigger them could be utilised by anyone wishing to take advantage of them, and thus they are theoretically less threatening than many of the other issues that have plagued Microsoft Applications in the past.

    In the end however we should be simply sating that a problem exists, it may be a security risk, and until it is fixed, we will treat it as such. Anything else (rightly or wrongly) simply smells like someone is covering up issues, and lets be frank, Microsoft doesn't have enough good will for that to be acceptable.

  • Please quit calling these DOS flaws by NotFamous (Score:1) Friday April 13 2007, @02:05PM
  • by 140Mandak262Jamuna (970587) on Friday April 13 2007, @02:06PM (#18722727)
    (Last Journal: Wednesday October 31, @08:33AM)
    Almost all the programs crash on invalid input, even Firefox and OpenOffice. So, hate to say it, MSFT is right in claiming that it is better to crash than to give a command line shell. But so many of the MSFT buffer overrun problems start out as crashes and people keep probing and probing and bingo, it becomes a remote code execution flaw. I thing the Windows Meta File graphics handling bug was a low priority crash bug for a long time before it became a remote code execution vulnerability. So while porturing it as "not a bug", hope they quietly work in the background and fix the issue.
  • Secondary failsafes by ZorbaTHut (Score:2) Friday April 13 2007, @02:06PM
  • by Chris Mattern (191822) on Friday April 13 2007, @02:12PM (#18722813)
    Microsoft declared that they are not crashes at all; they are "rest breaks".

    Chris mattern
  • Programmer as a dog by The Media Mechanic (Score:1) Friday April 13 2007, @02:12PM
  • We work on data driven apps (police RMS) by stratjakt (Score:1) Friday April 13 2007, @02:14PM
  • Lesser of two evils is still evil. by kinglink (Score:2) Friday April 13 2007, @02:17PM
  • crash = unexpected behavior = security issue by seifried (Score:2) Friday April 13 2007, @02:21PM
  • Most secure ever! by smitty97 (Score:1) Friday April 13 2007, @02:25PM
  • So? by MadnessASAP (Score:1) Friday April 13 2007, @02:32PM
    • Re:So? by 8-bitDesigner (Score:1) Friday April 13 2007, @03:20PM
      • Re:So? by neminem (Score:1) Friday April 13 2007, @10:34PM
        • Re:So? by 8-bitDesigner (Score:1) Saturday April 14 2007, @01:19AM
    • Re:So? by multipart/mixed (Score:2) Friday April 13 2007, @09:11PM
  • office menu button closes apps by Anonymous Coward (Score:1) Friday April 13 2007, @02:38PM
  • So This Means Word 2007 is designed to crash.... by cppgenius (Score:1) Friday April 13 2007, @02:39PM
  • I would have been given an F by Dancindan84 (Score:2) Friday April 13 2007, @02:39PM
  • Judging from the MS response... by sehlat (Score:1) Friday April 13 2007, @02:40PM
    • 1 reply beneath your current threshold.
  • Is this "spin" or is this "twisted"?! by erroneus (Score:2) Friday April 13 2007, @02:40PM
  • Straw man by Thrip (Score:1) Friday April 13 2007, @02:42PM
    • Re:Straw man by Watson Ladd (Score:2) Friday April 13 2007, @05:13PM
      • Re:Straw man by Thrip (Score:1) Saturday April 14 2007, @12:36AM
        • Re:Straw man by Watson Ladd (Score:2) Monday April 16 2007, @11:53AM
          • Re:Straw man by Thrip (Score:1) Monday April 16 2007, @05:52PM
  • Is it me? by xoyoboxoyobo (Score:1) Friday April 13 2007, @02:43PM
  • by brennanw (5761) * on Friday April 13 2007, @02:47PM (#18723379)
    (http://ubersoft.net)
    ... before Microsoft started getting all their ideas from me, instead of the other way 'round:

    http://www.ubersoft.net/d/20030224.html [ubersoft.net]

    but more specifically

    http://www.ubersoft.net/d/20030228.html [ubersoft.net]

  • That MS Guy Better Stop Spinning So Fast by SwashbucklingCowboy (Score:2) Friday April 13 2007, @02:48PM