Slashdot Mirror


FBI Alleged To Have Backdoored OpenBSD's IPSEC Stack

Aggrajag and Mortimer.CA, among others, wrote to inform us that Theo de Raadt has made public an email sent to him by Gregory Perry, who worked on the OpenBSD crypto framework a decade ago. The claim is that the FBI paid contractors to insert backdoors into OpenBSD's IPSEC stack. Mr. Perry is coming forward now that his NDA with the FBI has expired. The code was originally added ten years ago, and over that time has changed quite a bit, "so it is unclear what the true impact of these allegations are" says Mr. de Raadt. He added: "Since we had the first IPSEC stack available for free, large parts of the code are now found in many other projects/products." (Freeswan and Openswan are not based on this code.)

93 of 536 comments (clear)

  1. Hide yo keys, hide yo passwords by Anonymous Coward · · Score: 5, Funny

    They be backdooring everybody out there

    1. Re:Hide yo keys, hide yo passwords by Soilworker · · Score: 2, Funny

      They be backdooring everybody out there

      You don't have to come and confess, we're looking for you, we gonna find you.

    2. Re:Hide yo keys, hide yo passwords by Opportunist · · Score: 2, Insightful

      Sure gonna. You left your fingerprint and all you are so dumb. You are really dumb. For real.

      (I can't believe how well this fits...)

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    3. Re:Hide yo keys, hide yo passwords by iCEBaLM · · Score: 5, Funny

      'Deys combin' through ur net-dumps,
      'Deys snatchin ur packets up,
      Tryin' ta read 'em so y'all need ta,
      Hide yo' keys, hide yo' crypts,
      Hide yo' keys, hide yo' crypts,
      Hide yo' keys, hide yo' crypts,
      An' hide yo' passwords cause they backdoorin' everybody out here.

      You don't have to come an' confess, we lookin' for you,
      We gon find you,
      We gon find you.
      So we can run and check DAT,
      Run and check DAT,
      Run and check DAT,
      Homeboy, home-home, homeboy.

      We got your source code and you left timestamps and all,
      You are so dumb,
      You are really dumb, fo' real.
      I was attacked by the NSA on black projects.
      So dumb, so dumb, so dumb, so.

      'Deys combin' through ur net-dumps,
      'Deys snatchin ur packets up,
      Tryin' ta read 'em so y'all need ta,
      Hide yo' keys, hide yo' crypts,
      Hide yo' keys, hide yo' crypts,
      Hide yo' keys, hide yo' crypts,
      An' hide yo' passwords cause they backdoorin' everybody out here.

      You don't have to come an' confess, we lookin' for you,
      We gon find you,
      We gon find you.
      So we can run and check DAT,
      Run and check DAT,
      Run and check DAT,
      Homeboy, home-home, homeboy.

  2. Oh shit... by Anonymous Coward · · Score: 5, Funny

    I hope all three system admins still using OpenBSD have been notified.

    1. Re:Oh shit... by Delarth799 · · Score: 5, Funny

      Well they would have been notified sooner but the clouds kept interfering with our smoke signals.

    2. Re:Oh shit... by JeffSh · · Score: 4, Insightful

      While funny, it misses the bigger picture of the OpenBSD stack/code being hidden in other devices, especially vpn/firewall appliances.

    3. Re:Oh shit... by Heretic2 · · Score: 2

      Along with all 300+ million OSX/iOS device owners.

    4. Re:Oh shit... by Frank+T.+Lofaro+Jr. · · Score: 4, Funny

      My brother and I have OpenBSD boxes as our firewalls and site-to-site VPNs between our houses.
      Who is the third person?

      The FBI guy of course.

      --
      Just because it CAN be done, doesn't mean it should!
  3. But but but by igreaterthanu · · Score: 5, Insightful

    Many eyes makes FOSS software invulnerable to this sort of attack?

    Not trying to troll here, but seriously people should be doing more audits, especially themselves.

    If this has been there for ten years, then this is ten years too late in spotting it.

    --
    I dream of a nation where a man is not judged by his skin color but by an number assigned by a credit rating agency.
    1. Re:But but but by snowraver1 · · Score: 4, Interesting

      I wonder if Linux has a similar backdoor. I think that it would be quite likely that MS products have one.

      --
      Copyright 2010. All rights reserved. This comment may not be copied in any way including, but not limited to caching.
    2. Re:But but but by MichaelSmith · · Score: 5, Insightful

      I doubt the situation would be any better if OpenBSD had been commercial and closed source. Who's to say the same back door isn't in Tru64, HP-UX and AIX?

    3. Re:But but but by igreaterthanu · · Score: 2, Insightful

      Commercial is different though, with FOSS I and (everyone else should for that matter), expect that there are no backdoors and it does exactly what it says it does.

      That is supposed to be one of the biggest "selling points" of FOSS.

      --
      I dream of a nation where a man is not judged by his skin color but by an number assigned by a credit rating agency.
    4. Re:But but but by Sycraft-fu · · Score: 5, Insightful

      Actually it would likely be harder. In the case of OSS, all you have to do is get people to contribute to the code. The FBI doesn't really have to be sneaky about it at all, other than that the people don't reveal who they work for. They could even lie about who they are as it is all done over the net anyhow. If it gets discovered, well no big deal really. I mean it is free and open, nobody made them accept those contributions. There's no legal problems that I can see.

      In the case of a company, you have to either subvert or plant employees there. Doing that without a court order would be illegal. It also has to go on undetected, of course, and that is much harder since the employee works physically at the company. Then there's the problem that if it becomes known, you may have a lawsuit on your hands, or congressional inquiry, and so on. Big companies wield a lot of power and would likely not be amused in the slightest.

      However what the GP is really saying overall is that if this turns out to be true (please note I am doubtful of that) it shows a weakness in the "many eyes" idea. That mantra is repeated over and over by OSS advocates almost like an incantation, that because something is open it means that all sorts of people are looking it over and there won't be anything evil in it. That is not the case, of course. Some OSS stuff is well audited, some is not. If this proves to be true it would show that even the pretty well audited stuff is not immune, that just having the source out in the open is not enough to guarantee security.

    5. Re:But but but by gman003 · · Score: 2, Interesting

      They're still not even sure if the backdoor still works - the code gets edited often, and the subtle tricks that backdoors rely on can break quite easily that way.

      And it's not like closed-source would be any better - then, the FBI can just pay the company to slip one in. I'm not worried about my OpenBSD box - it's already far more secure than my Windows rigs are. Hell, I haven't even bothered updating it in years - it's still running 3.6.

    6. Re:But but but by gnapster · · Score: 5, Insightful

      So what you are saying is, your OpenBSD box is running a version that is missing 60% of the timeline where edits could have been made to break this backdoor?

    7. Re:But but but by igreaterthanu · · Score: 4, Insightful

      Crackers don't like sharing their audit results for free.

      --
      I dream of a nation where a man is not judged by his skin color but by an number assigned by a credit rating agency.
    8. Re:But but but by Anonymous Coward · · Score: 5, Funny

      i do. great film.

    9. Re:But but but by sourcerror · · Score: 2

      On the other hand the government can legally require software vendors to include backdoors and keep it secret. (See original DES machines IIRC.)
      With closed source, you don't even have a chance here.

    10. Re:But but but by ratboy666 · · Score: 5, Interesting

      It isn't necessarily obvious.

      Basically, the idea is that bits of the key leak. And how is this accomplished?

      For example - if a key bit is 0, you take one code path, if 1, another. Make the two paths different lengths. It may be possible to affect packet timing. Or... A function may end with "x - y" and then return "z". No leak? Not so clear, the carry/borrow may be leaking information to the caller (on x86 style hardware).

      Anyway, it probably isn't a "back door", just some means of determining enough key bits to make brute force practical is enough. And this sort of thing can be subtle. It can even be based on the machine code generated for certain sequences by a particular compiler (the "x-y; return z" sequence above, for example).

      --
      Just another "Cubible(sic) Joe" 2 17 3061
    11. Re:But but but by Opportunist · · Score: 4, Insightful

      One of the biggest selling points of FOSS is that you can audit it at leisure, without having to go to the maker, give them a GOOD reason why you'd want to audit the source and sign NDAs with blood.

      Unaudited, FOSS is just as well audited as closed source. Duh.

      In other words, as long as everyone's too lazy/cheap/dumb to actually DO an audit, yes, FOSS is by no means more secure than CSS.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    12. Re:But but but by Bork · · Score: 2

      Many eyes and still Ken Thompson put a backdoor into the C compiler. You need to know what your looking for if your going to see it. Its not like there is a line in the code that says "HEY - I am a backdoor"

    13. Re:But but but by BobNET · · Score: 2

      OpenBSD: the operating system so secure that the FBI is scared of it.

    14. Re:But but but by tomhudson · · Score: 4, Informative
      The BSD license allows anyone, including Microsoft, to use BSD code.

      Some of the files SCO claimed were infringing turned out to be BSD code, and as such, entirely okay (SCO couldn't claim rights to BSD code because of the Regents of the U of C vs AT&T case).

      -- Barbie

    15. Re:But but but by Mysteray · · Score: 2
      Actually, if true, it would be quite the compliment. That OpenBSD was selected to handle sensitive traffic _and_ the FBI had to go out of its way to monitor it.

      The remaining question is, did the CIA, NSA, KGB, FSB, and MI5 all add backdoors too, or do they have cross-licensing agreements...

    16. Re:But but but by Charliemopps · · Score: 4, Informative

      Actually no, I was referring to the fact that the NSA helped in the development of Windows XP, Vista and 7... all publicly. It's not even a secret. They were also involved privately in 95 and 98.

      Is Google really that hard to use?
      http://www.computerworld.com/s/article/9141105/NSA_helped_with_Windows_7_development

      "Working in partnership with Microsoft and elements of the Department of Defense, NSA leveraged our unique expertise and operational knowledge of system threats and vulnerabilities to enhance Microsoft's operating system security guide without constraining the user to perform their everyday tasks, whether those tasks are being performed in the public or private sector," Richard Schaeffer, the NSA's information assurance director, told the Senate's Subcommittee on Terrorism and Homeland Security yesterday as part of a prepared statement.

    17. Re:But but but by thePowerOfGrayskull · · Score: 4, Insightful

      Of course... your comment serves to underscore the importance of open source. While GP noted that it *should* have been caught in OpenBSD,.. at least the potential for it to have been caught was there. If it's in Linux as well, we'll know very soon since it's reasonably certain that people are looking now. If it's in MS products... well, that's something we'll never know.

    18. Re:But but but by kpyke · · Score: 2

      Crypto is non-trivial. If this is true, and depending on the talent of those adding the backdoors, there might be less than 100 people who aren't employeed in classified environments who are qualified to do this review. Backdoors here aren't "I can log in remotely", but instead are a set of mathematical operations that can be used to determine the key, or to reduce the set of probable keys to a manageable size. If you're going to pull shenanigans, crypto is the place to pull it.

    19. Re:But but but by recoiledsnake · · Score: 5, Informative

      http://www.openbsd.org/reprints/article_20000419.html

      "The recent incident of "backdoors" in Microsoft software is indicative of a fundamental problem that electronic commerce will need to address very soon," Jerry Harold, president & co-founder of NetSec [...] Even if Microsoft has stringent internal requirements for software assurance, it's very difficult to catch a backdoor that may be hidden by a single coder deep inside hundreds of thousands of lines of code," said Harold
      "This is why NetSec builds its products on an operating system (OpenBSD) that has made security its number one goal," Harold told SOURCES. "The source for the operating system was re-built from the ground up for security and is publicly available. As a result, it is continuously subjected to rigorous security review by independent software engineers around the world. This has additional benefits because secure code often tends to be well designed, stable, and efficient."

      --
      This space for rent.
    20. Re:But but but by jon787 · · Score: 5, Interesting

      Ah the old NSA DES conspiracy theory. The NSA suggested two changes to DES: 1) shorten the key 2) changed the S-boxes. They gave no public explanation for the latter and for years the story was that this somehow introduced a backdoor into the algorithm. The truth came out over a decade later:

      "Some of the suspicions about hidden weaknesses in the S-boxes were allayed in 1990, with the independent discovery and open publication by Eli Biham and Adi Shamir of differential cryptanalysis, a general method for breaking block ciphers. The S-boxes of DES were much more resistant to the attack than if they had been chosen at random, strongly suggesting that IBM knew about the technique in the 1970s. This was indeed the case; in 1994, Don Coppersmith published some of the original design criteria for the S-boxes. According to Steven Levy, IBM Watson researchers discovered differential cryptanalytic attacks in 1974 and were asked by the NSA to keep the technique secret."

      Of course, they could still be lying, better keep the tinfoil hat on.

      --
      X(7): A program for managing terminal windows. See also screen(1).
    21. Re:But but but by camperdave · · Score: 2

      In other words, as long as everyone's too lazy/cheap/dumb to actually DO an audit, yes, FOSS is by no means more secure than CSS.

      With FOSS, though, all it takes is for ONE person to not be too lazy/cheap/dumb to actually notice an anomaly and people will be all over it like piranhas on a floating cow.

      --
      When our name is on the back of your car, we're behind you all the way!
    22. Re:But but but by scdeimos · · Score: 2

      Also from that link...

      This is not the first time that the NSA has partnered with Microsoft during Windows development. In 2007, the agency confirmed that it had a hand in Windows Vista as part of an initiative to ensure that the operating system was secure from attack and would work with other government software. Before that, the NSA provided guidance on how best to secure Windows XP and Windows 2000.

      Oh, my sides! I guess that was an epic FAIL for the NSA then? (Either that, or Windows might actually have been more vulnerable to attack without their help.)

    23. Re:But but but by scdeimos · · Score: 2
      Oh, I guess that's why this copyright message appears in %windir%\System32\ftp.exe then:

      (#) Copyright (c) 1983 The Regents of the University of California. All rights reserved.

    24. Re:But but but by mirix · · Score: 2

      Upgrading is fairly painless these days, from what I recall.

      Download new kernel, installer version or whatnot.
      Reboot, boot to it.
      Press U for upgrade or somesuch.
      Untar the new config files, check/merge the ones you've changed.

      then uh.. pkg_add upgrade or so

      The longest part is merging config, if you've made a lot of changes to the default. I seem to think there is a tool to hold your hand for it too, sysmerge?

      not too bad. I think it was worse in the 3.x days though, it's been a while.

      --
      Sent from my PDP-11
    25. Re:But but but by sjames · · Score: 3, Insightful

      Use the source! There's no need to wonder, pick a likely function, audit it, and post your results!

    26. Re:But but but by drsmithy · · Score: 2

      Or the code is there, for you to look at, if you want. There's no guarantee someone else has or that it's quality code.

      Yet we are frequently and loudly told by Open Source evangelists that the fact lots of people CAN look at the code *implicitly* means lots of people WILL be looking at the code.

      This is, as the GP said, supposed to be one of the biggest selling points of Open Source.

    27. Re:But but but by Darinbob · · Score: 2

      Except that in this case it's not so easy to audit it. Only the experts will likely understand the changes that were put in and probably won't be able to spot it immediately. Ie, a slight tweak to some table of numbers used by the encryption making it easy to decode.

    28. Re:But but but by The+Wild+Norseman · · Score: 5, Funny

      mQCPAzfTdH0AAAEEALqOFf7jzRYPtHz5PitNhCYVryPwZZJk2B7cNaJ9OqRQiQoi
        e1YdpAH/OQh3HSQ/butPnjUZdukPB/0izQmczXHoW5f1Q5rbFy0y1xy2bCbFsYij
        4ReQ7QHrMb8nvGZ7OW/YKDCX2LOGnMdRGjSW6CmjK7rW0veqfoypgF1RaC0fABEB
        AAG0LU5TQSdzIE1pY3Jvc29mdCBDQVBJIGtleSA8cG9zdG1hc3RlckBuc2EuZ292
        PokBFQMFEDfTdJE+e8qoKLJFUQEBHnsH/ihUe7oq6DhU1dJjvXWcYw6p1iW+0euR
        YfZjwpzPotQ8m5rC7FrJDUbgqQjoFDr++zN9kD9bjNPVUx/ZjCvSFTNu/5X1qn1r
        it7IHU/6Aem1h4Bs6KE5MPpjKRxRkqQjbW4f0cgXg6+LV+V9cNMylZHRef3PZCQa
        5DOI5crQ0IWyjQCt9br07BL9C3X5WHNNRsRIr9WiVfPK8eyxhNYl/NiH2GzXYbNe
        UWjaS2KuJNVvozjxGymcnNTwJltZK4RLZxo05FW2InJbtEfMc+m823vVltm9l/f+
        n2iYBAaDs6I/0v2AcVKNy19Cjncc3wQZkaiIYqfPZL19kT8vDNGi9uE=

      Goddammit. Now I'm gonna have to change my Slashdot password.

      --
      "A government is a body of people usually -- notably -- ungoverned." -Shepherd Book
    29. Re:But but but by Khyber · · Score: 2

      Steven Levy is a rather authoritative source.

      I would not doubt his word.

      --
      Still waiting on Serviscope_minor to wake up to fucking reality and realize that Jessica Price isn't going to fuck him.
    30. Re:But but but by Tom · · Score: 2

      People always forget about the second mission of the NSA - securing the government computing infrastructure. That's why they cough up stuff like SELinux, or their hardening manuals.

      Putting a backdoor into windows would be stupid unless you at the same time make sure there is a backdoor-free version for government use. Ensuring that would mean no government office can ever buy a windows off-the-shelf, it all has to be coordinated centrally. At an operation that size, I'm not sure you could keep it a secret.

      Securing windows against foreign attacks, on the other hand, makes a whole lot of sense if you expect it to be running government computers.

      Not saying they didn't, as I don't know for sure. But it appears that the securing mission gives the more likely explanation compared to the backdoor idea.

      --
      Assorted stuff I do sometimes: Lemuria.org
    31. Re:But but but by Noughmad · · Score: 2

      And I my suitcase combination!

      --
      PlusFive Slashdot reader for Android. Can post comments.
    32. Re:But but but by udippel · · Score: 2

      Yet we are frequently and loudly told by Open Source evangelists that the fact lots of people CAN look at the code *implicitly* means lots of people WILL be looking at the code.

      Yes, and?
      Nobody expects some 'if key == 0123456789 user = root' style of coding here. A lot of people actually look at code.
      But there is a huge difference between spotting incidental coding errors (bugs) and deliberate, obfuscated Covert Channels. Here we talk about the latter category.

    33. Re:But but but by Tom · · Score: 2

      Well,they can just build in backdoors to which only they have keys, and keep it secret.

      They are a secret service. They know (from their own painful experience) that secrets do not stay secrets for unlimited times, and the more people know about it, the less so.

      Seriously, sending an agent with a lockpick set is several orders of magnitude cheaper than creating a secret cryptographic backdoor. I'm very certain the NSA is no stranger to every trick in the book. I do, however, think that they are too smart to do the obvious thing.

      --
      Assorted stuff I do sometimes: Lemuria.org
    34. Re:But but but by Tom · · Score: 2

      A master key to a crypto algorithm that does not per se include one would require modifications to the algorithm. It would very likely be noticed at the very first code audit.

      Seriously, I think the NSA is happy that everyone thinks they added some backdoor to windows. Because while everyone spends their time looking for it there, whatever they really did gets no attention.

      --
      Assorted stuff I do sometimes: Lemuria.org
  4. If this was ten years ago... by squiggleslash · · Score: 2

    ...then it wasn't even part of the post 9/11 hysteria.

    --
    You are not alone. This is not normal. None of this is normal.
    1. Re:If this was ten years ago... by chill · · Score: 5, Interesting

      No, but it was part of the post-Wassenaar agreement (Dec. 1998) that de-weaponized open source crypto. 10 years ago would have been around OpenBSD 2.8 (12/1/2000) which introduced AES and was the first release after the expiration of the RSA patent.

      v2.7 saw the introduction of hardware-accelerated IPSec only 6 months before.

      They were moving fast and furious on IPSec. This would have been an opportune time to spike them.

      --
      Learning HOW to think is more important than learning WHAT to think.
  5. But has it been confirmed? by brunes69 · · Score: 4, Insightful

    Why engage in mass speculation? Check out the code from the time period in question and audit it for a back door. I don't know why everyone should get up in arms over an allegation that may very well be unfounded.

    1. Re:But has it been confirmed? by Anonymous Coward · · Score: 3, Insightful

      If the backdoor was done well, it may be impossible to confirm. Not that this is how it was done, but many encryption routines define lots and lots of constants. Random large primes and that sort of thing. You could assume that these constants were chosen for cryptographically sound reasons, and you might be right. You could also assume that these constants were created using an external "secret key", and that anyone with this secret key would be able to decrypt data, and you might be right. Or maybe it's just designed to look like a programming error i.e. if(uid=0) { ... }. Plausible deniability is the name of the game; we may be able to fix the problem by re-writing the code from scratch, but we may never be able to say whether there was a problem in the orginal code to begin with.

    2. Re:But has it been confirmed? by Mike+Van+Pelt · · Score: 2

      Exactly. I find this tale hard to believe. Until the back door is found in the code, I'm very, very skeptical.

    3. Re:But has it been confirmed? by InlawBiker · · Score: 5, Funny

      Shit, I just found it. How'd we miss this before?

              if (Password == "JOSHUA")
              {
                      printf("Greetings Professor Falken");
                      godmode = true;
                      return;
                  }

    4. Re:But has it been confirmed? by chill · · Score: 2

      Because crypto is hard math and an absolute bitch to get right. The e-mail talks about inserting side-channel key-leaking mechanisms. Finding these may be nigh unto impossible because they simply could be a property of a specific mathematical function that has a subtle weakness.

      In short, 99% of coders could audit this all day long and find absolutely nothing. You have to be a coder and a mathematician and a crypto specialist or you're probably just wasting your time.

      This is why, time and again, companies that implement their own crypto invariably get burned.

      --
      Learning HOW to think is more important than learning WHAT to think.
    5. Re:But has it been confirmed? by moonbender · · Score: 2

      I'm not a crypto geek, so I only recently read about Nothing up my sleeve numbers (here on Slashdot, in fact). After seeing that I'd guess seemingly random large constants would already be considered suspicious.

      --
      Switch back to Slashdot's D1 system.
  6. Only two remote holes... by chill · · Score: 4, Interesting

    Considering OpenBSD has performed extensive code audits and this is part of the core code, this is going to bring the argument about the importance of security code audits to the forefront.

    They have their place, but...10 years and by one of the most anal-retentive, paranoid coding groups out there. Ouch.

    --
    Learning HOW to think is more important than learning WHAT to think.
    1. Re:Only two remote holes... by skids · · Score: 4, Insightful

      99.99% of code can be cleaned by talented enough audit freaks. Crypto code is in the other 0.01%. Proper cryptography development requires doctorate level mathematics skills.

  7. Not likely by Anonymous Coward · · Score: 4, Insightful

    It would be the NSA doing this and they wouldn't require a NDA that would expire. Such an agreement would be that it never would be revealed. Sounds like a hoax.

  8. Could be hard by Sycraft-fu · · Score: 5, Insightful

    You have to remember that something like that wouldn't be in the code with a /*evil shit goes here*/ before it. To have survived it would need to be well hidden. The idea that you can just look at code and find problems is false. I mean were that the case, no software would ever have any bugs.

    So to find it could take a lot of work, even when you know there is something to look for.

    This presumes, of course, there IS something to look for and this isn't just some guy making shit up. I'm leaning more towards that option since I don't see why the FBI wouldn't have a longer NDA. Classified material is generally done for 50 years, and something like that would surely be classified.

    1. Re:Could be hard by X0563511 · · Score: 2

      I found it!

      It's hidden away in:
      #include <stdio.h>

      See, your code might be fine... but everything the compiler tosses in may not.

      --
      For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
    2. Re:Could be hard by KZigurs · · Score: 2

      if classified, it would be CIA. FBI has nether mandate, nether authority to declare anything 'classified'.

    3. Re:Could be hard by bcmm · · Score: 2

      if classified, it would be CIA. FBI has nether mandate, nether authority to declare anything 'classified'.

      Citation needed. In addition to being a law-enforcement agency, the FBI is the USA's domestic intelligence agency (actually a slightly weird state of affairs, if you're used to countries that like to keep military and civilian stuff separate). That means that, in theory, it does the same sort of stuff the CIA does, if said stuff happens within the USA - the American equivalent of MI5 and MI6, respectively (in practise, the CIA has been caught operating inside America quite a few times). For example, the FBI were responsible for investigating the recently broken Russian spy ring, and for arresting various spies throughout WWII and the Cold War.

      http://www.fbi.gov/stats-services/law-enforcement/clearance/ might help too.

      --
      # cat /dev/mem | strings | grep -i llama
      Damn, my RAM is full of llamas.
  9. 42 Grams. by MonChrMe · · Score: 2

    Because mass speculation is fun!

    More seriously, some of the code obfuscation competitions out there show that code auditing alone may not be enough to track down every vulnerability - a single dedicated enough individual can probably slip something past that's too subtle to notice, especially if they're making a lot of 'good' commits at the same time.

    Now realise that the article suggests that there may have been several people at this and the problem becomes evident.

    Basically, over reliance on the 'many eyes' security model has always been futile.

    1. Re:42 Grams. by TheLink · · Score: 4, Insightful

      The code obfuscation competitions won't be good examples - since obfuscated code looks hard to understand, which would make it more noticeable to auditors, or even "normal programmers" looking at the code.

      It'll be stuff like "The Underhanded C Contest": http://underhanded.xcott.com/?page_id=17

      Or this: http://www.debian.org/security/2008/dsa-1576
      Or "accidentally" leave in a few exploitable buffer overflows or other "normal" bugs.

      As for over reliance on "many eyes", just relying on it is over-reliance. The "many eyes" claim is not applicable when it comes to _security_ bugs.

      There are many eyes, but they're all "watching TV". They'll notice if a bug crashes their DVR or causes image corruption, other than that no.

      There are only very few skilled experienced eyes auditing the code, and not all of those are on the "defending" side.

      --
  10. French ssh port (ssf) suggested strange weaknesses by Anonymous Coward · · Score: 5, Interesting

    from ftp://ftp.nluug.nl/pub/metalab/docs/linux-doc-project/linuxfocus/English/Archives/lf-2003_03-0273.html

    I often like to point out an incomprehensible weakness of the protocol concerning the "padding" (known as covered channel): in both version 1 and 2 the packets, have a length which is a multiple of 64 bits, and are padded with a random number. This is quite unusual and therefore sparing a classical fault that is well known in encrypting products: a "hidden" (or "subliminal") channel. Usually , we "pad" with a verified sequence as for example, give the value n for the byte rank n (self describing padding). In SSH, the sequence being (by definition) randomized, it cannot be checked. Consequently, it is possible that one of the parties communicating could pervert / compromise the communication for example used by a third party who is listening. One can also imagine a corrupted implementation unknown by the two parties (easy to realize on a product provided with only binaries as generally are commercial products). This can easily be done and in this case one only needs to "infect" the client or the server. To leave such an incredible fault in the protocol, even though it is universally known that the installation of a covered channel in an encryption product is THE classic and basic way to corrupt the communication, seems unbelievable to me . It can be interesting to read Bruce Schneier's remarks concerning the implementation of such elements in products influenced by government agencies. (http://www.counterpane.com/crypto-gram-9902.html#backdoors).

    I will end this topic with the last bug I found during the portage of SSH to SSF (French version of SSH), it is in the coding of Unix versions before 1.2.25. The consequence was that the random generator produced ... predictable... results (this situation is regrettable in a cryptographic product, I won't go into the technical details but one could compromise a communication while simply eavesdropping). At the time SSH's development team had corrected the problem (only one line to modify), but curiously enough without sending any alert, not even a mention in the "changelog" of the product... one wouldn't have wanted it to be known, he wouldn't have acted differently. Of course there is no relationship with the link to the above article.

  11. Hmm.. now interesting by rtfa-troll · · Score: 4, Insightful

    So; this is going to be interesting. Imagine there were no back doors; how would you prove it? Want to discredit OpenBSD; that's how you would do it. Assume there are backdoors; now we have the first known clear example of illegally placed malware by a US Govt. group. The FBI is not the NSA, but they definitely have access to good people. Assume this was rogue players. Warrentless wiretapping against US Govt. lawyers! In the absence of any pointer to relevant code, I would go with it being FUD, but I expect to be proved wrong..

    --
    =~ s,(.*),<sarcasm>$1</sarcasm>,g if any_point_you_wish();
    1. Re:Hmm.. now interesting by Martin+Blank · · Score: 4, Insightful

      If it is true, it was submitted as source code, subject to review, accepted by the community, and installed by users. I see nothing illegal here.

      I also don't see where it's necessarily warrantless wiretapping. Sure, it could be used for that, but this kind of thing could also absolutely be used for warranted wiretapping. The FBI goes to a judge, gets a warrant, captures the traffic, and decrypts it using the backdoor. Again, nothing illegal.

      There are ethical issues with intentionally subverting such a project, but I don't see legal issues such as you claim.

      --
      You can never go home again... but I guess you can shop there.
  12. Re:I forget... by 99BottlesOfBeerInMyF · · Score: 2

    So this might mean Mac OS X is not affected? I'm not knowledgeable enough on *BSD to know.

    While there is significant shared code between the BSD's and OS X and even Linux distributions; OpenBSD ships with an IPv4 IPSec stack that is pretty much only used by OpenBSD. OS X and most other BSDs use the KAME stack.

  13. Re:I forget... by Graff · · Score: 2

    So this might mean Mac OS X is not affected? I'm not knowledgeable enough on *BSD to know.

    I don't believe that Mac OS X is affected since OpenBSD only used the IPv6 part of the Kame Project. Apparently OpenBSD developed their own version of IPSec while the other BSD variants used the IPSec implementation from the Kame Project.

    Since Mac OS X's IPSec is derived from the one in FreeBSD and NetBSD it's not directly linked to the IPSec in OpenBSD. This doesn't mean that it hasn't been compromised, all code is suspect - even implementations in Linux and Windows - simply because it seems like people have been actively attempting to insert exploits into this type of code.

  14. Re:I forget... by derinax · · Score: 4, Informative

    No. NeXTSTEP pre-dated NetBSD and FreeBSD. NeXTSTEP was based on BSD Tahoe 4.3, and OS X took code from all three codebases (OS X was NetBSD-heavy in the early days until Jordan Hubbard joined Apple and influenced further conversion to FreeBSD code).

    To this day you can find BSD code from all BSD codebases, but not quite as much from OpenBSD. Run 'strings' on the libraries to get the skinny.

  15. So Sycraft-fu by Anonymous+Squonk · · Score: 5, Funny

    Are you ready to buy into the government conspiracy theories now?

    1. Re:So Sycraft-fu by TarPitt · · Score: 5, Informative

      Not that this has ever happened before, mind you:

      Zug, Switzerland. For four decades, the Swiss flag that flies in front of Crypto AG has lured customers from around the world to this company in the lake dis- [words missing] most sensitive diplomatic and military communications value Switzerland's reputation for business secrecy and political neutrality. Some 120 nations have bought their encryption machines here.

      But behind that flag, America's National Security Agency hid what may be the intelligence sting of the century. For years, NSA secretly rigged Crypto AG machines so that U.S. eavesdroppers could easily break their codes, according to former company employees whose story is supported by company documents.

      The Baltimore Sun, About December 4, 1995, pp. 9-11.

      as found in Cryptome

      --
      If your children ever found out how lame you are, they'd murder you in your sleep
  16. Smear Campaign? by nurb432 · · Score: 4, Interesting

    Good way to kill a project. Give the paranoids something to be paranoid about.

    --
    ---- Booth was a patriot ----
  17. It's just a claim by The_mad_linguist · · Score: 2

    It's just hearsay at this point. Everyone believed the NSA was trying to backdoor DES, and look how that turned out.

  18. Interesting if true. Interesting even if not true by time961 · · Score: 2

    Could be true, but there's a lot that rings false.

    Why doesn't Perry point out the code, or even just identify it, or outline what it did?

    Why did he wait for his alleged NDA to expire, rather than pointing it out anonymously? A bug report saying "this is weird" almost certainly wouldn't have any provable connection to him.

    In general, well-understood algorithms like those used by IPSec don't leak key data. A bad crypto primitive implementation could do so easily enough, but IPSec doesn't use its own implementations of crypto primitives, does it?

    And if it doesn't, then code which accesses key data in any way other than as an opaque object should stick out like a sore thumb.

    I eagerly await analysis by someone more familiar with the IPSec code. Shouldn't be hard to find.

  19. Re:Interesting if true. Interesting even if not tr by Tacvek · · Score: 2

    Except for side channel attacks, which many implementations of the crypto primitives are vulnerable to, since avoiding all of them is very hard.

    But that would be flaws in the primitives. Primitives can be misused in creating a cryptographic scheme, but the scheme was specified outside OpenBSD so mistakes in the scheme would not be specific to OpenBSD. We also know that the scheme was implemented more or less correctly, or it would fail to inter-operate with other IPSec implementations. Hmm... so unless IPsec code is using its own crypto primitives, that does seem odd.

    Of course, since I have never once heard of IPSec being used, I doubt this is really that big an issue.

    --
    Stylish sheet to fix many problems in Slashdot's D3: https://gist.github.com/801524
  20. Re:You pay for corruption. by NiceGeek · · Score: 2

    Governments have been keeping secrets ever since there have been governments. you think the founding fathers blabbed all their plans to the people at large?

  21. Denial by Scott Lowe by molo · · Score: 4, Informative

    The original message claimed Scott Lowe was on the FBI payroll:

    for example Scott Lowe is a well
    respected author in virtualization circles who also happens top be on
    the FBI payroll, and who has also recently published several tutorials
    for the use of OpenBSD VMs in enterprise VMware vSphere deployments.

    In response, Scott Lowe has denied any affiliation with the FBI or other government agency.

    -molo

    --
    Using your sig line to advertise for friends is lame.
  22. Re:You pay for corruption. by NiceGeek · · Score: 3, Insightful

    In fact if someone like Assange would have pulled this crap back then, he'd have found himself with a fatal necktie.

  23. what is this, backdoor week on /. ?!!! by Thud457 · · Score: 2

    sweet jibbering jeebus, first this The Top 50 Gawker Media Passwords , then Hidden Backdoor Discovered On HP MSA2000 Arrays, now this?!!

    --

    the preceding comment is my own and in no way reflects the opinion of the Joint Chiefs of Staff

  24. (A) Scott Lowe denies the charge by LinuxScribe · · Score: 4, Informative

    I interviewed Scott Lowe this evening for ITworld and he denies the allegations. Asked why Perry made his charge, Lowe speculated that Perry may have meant another Scott Lowe.

    BKP

  25. Doctorate level math skills not needed ... by perpenso · · Score: 4, Informative

    99.99% of code can be cleaned by talented enough audit freaks. Crypto code is in the other 0.01%. Proper cryptography development requires doctorate level mathematics skills.

    Such math skills are needed to develop the algorithms but not to implement a provided algorithm or to verify the coded implementation.

    1. Re:Doctorate level math skills not needed ... by lingon · · Score: 2

      What? Have you ever heard of the broken Netscape SSL implementation, or WEP (RC4 was an adequate algorithm), or any other broken crypto implementation? It's almost always the implementation of a provided algortihm that falters, not the algorithm itself! People implementing and verifying provided algorithms need more math doctorates.

  26. Re:Many eyes make bugs / backdoors shallow by inca34 · · Score: 4, Informative
  27. Re:You pay for corruption. by Yvanhoe · · Score: 3, Interesting

    They didn't, but they wanted too. Secret foreign relations were a thing that they thought characterised European autocracies. Later, the president Wilson in his 14 points for peace pointed secret diplomacy as a practice dangerous for peace.

    --
    The Wise adapts himself to the world. The Fool adapts the world to himself. Therefore, all progress depends on the Fool.
  28. An NDA that expires? I suspect a hoax. by badger.foo · · Score: 3, Interesting
    I'd be more than a little surprised if any part of the US government would in fact agree to let non-disclosure agreements expire automatically. That alone makes me suspicious that the truth content of these allegations is a little thin.

    For those of you who are interested in finding out the facts, start by reading the whole thread on openbsd-tech (eg http://marc.info/?t=129236639300001&r=1&w=2 ), it's only a handful of messages so far and I find Damien Miller's response at http://marc.info/?l=openbsd-tech&m=129237675106730&w=2 particularly enlightening. (You're using Damien's code right now, in some other window -- he's been a major OpenSSH developer for quite a while).

    Then again, I have to agree with Bob Beck (see http://marc.info/?l=openbsd-tech&m=129236730027908&w=2 ) that this is fairly likely to part of a personal vendetta of some sort, possibly against either the OpenBSD project or even something totally unrelated, using the OpenBSD project only as the attention-grabber in contexts such as /.

    At this point we have only allegations with some finger pointing, I for one look forward to any real information to surface. The best way to draw out the real information behind this is to do what Theo did - publish the allegations and let the involved parties explain themselves in public.

    --
    -- That grumpy BSD guy - http://bsdly.blogspot.com/
  29. OpenBSD's kernel UDP port 4500 enabled by default? by Anonymous Coward · · Score: 2, Interesting

    1. Why the UDP port 4500 is enabled by default inside of the kernel (upper 1023)?
    2. Why is "#if NPF > 0 ... pf_pkt_addr_changed(m); ... #endif" against NetFilter auditory?

    It's suspected FBI's change to ipsec_output.c (you can ignore the IPv6 / INET6 changes):
    ipsec_output.c rev1.25 vs rev1.41

    "triggers decapsulation"? what is it?

    The revlog says "UDP encapsulation for ESP in transport mode (draft-ietf-ipsec-udp-encaps-XX.txt)"

    ipsec_output.c rev1.28 vs rev1.29
    if udpencap_port=4500 then "!udpencap_port" is false so that it doesn't m_freem(m);but it always does mi = m_inject(m, sizeof(struct ip), sizeof(struct udphdr),sizeof(struct udphdr),M_DONTWAIT);

    ipsec_output.c rev1.30 vs rev1.31
    then it does udpencap_enable = 1; /* enabled by default */

    http://nixdoc.net/man-pages/openbsd/man9/m_inject.9.html
    http://fxr.watson.org/fxr/source/kern/uipc_mbuf.c?v=OPENBSD#L925
    says "XXX It is assumed that siz is less than the size of an mbuf at the moment."

    Assumption is unsafety.

    ipsec_output.c rev1.40 vs rev 1.41
    pf_pkt_addr_changed(m) against NPF (against filter i thought).
    http://fxr.watson.org/fxr/ident?v=OPENBSD&im=10&i=pf_pkt_addr_changed
    It erases the header when NPF(ilter) is enabled.
    Recommended [don't touch PF filter]: void pf_pkt_addr_changed(struct mbuf *m) { /* m->m_pkthdr.pf.statekey = NULL; */ }

    http://www.ietf.org/rfc/rfc3948.txt its group is F-Secure Corporation, Microsoft, Cisco Systems and Nortel Networks.

    3.3./3.5 (Transport or Tunnel) Mode ESP Decapsulation: 1. The UDP header is removed from the packet. <-- imagine that the UDP packet is from the intruder, xD
    if the intruder's UDP header is removed then the intruder's information is removed :)
    so that OpenBSD removed the intruder's auditory

    it was my magic: "look for 'remove' from rfc3948.txt" (to suppose that 'remove' is something unauthorized).

    1. The UDP header is removed from the packet. <-- to correct it must be "The UDP header must be CHECKED during the decapsulation process."
    Never REMOVED!!!

    2.3. NAT-Keepalive Packet Format "The receiver SHOULD ignore a received NAT-keepalive packet." <-- it's another unauthorized.
    don't remove things, don't ignore things, don't hide things, don't discard things.

    ipsec_output.c IPsec comment
    says "Called by the IPsec output transform callbacks, to transmit the packet or do further processing, as necessary." <-- what "further processing"? xD

    ipcomps_minlen comment
    u_int32_t ipcomps_minlen; /* packets too short for compress */ from struct ipcompstat /* IP payload compression protocol (IPComp), see RFC 2393 */

    http://www.ietf.org/rfc/rfc2393.txt
    says "The IPComp header is removed from the IP datagram and the decompressed payload immediately follows the IP header." <-- ehh! removed NOT!!! CHECKED yes!!!
    ipcompstat.ipcomps_minlen++

  30. Re:French ssh port (ssf) suggested strange weaknes by ArsenneLupin · · Score: 4, Interesting

    So what he was saying is, that they are padding with a potentially unencrypted random number, that can be used to guess earlier and later random numbers, and thus break SSH. The random number is a hint for crackers / PRNG guessers.

    No, that a deliberately "broken" implementation of ssh (either on server or on client) could use the padding to leak the session key, and that without access to the code there would be no way to tell (... because the padding is "supposed" to be random...).

    Quite clever actually, and reminescent about the ways how the French subverted the Luxembourgish Luxtrust system.

    Luxtrust token are hardware crypto token containing a private key. The key (supposedly) is generated randomly by the token at initialization and never leaves the token, and can only be used to establish session keys and sign messages, where the critical calculation happens on the token. The key is used to secure banking transactions, so that for example, the French tax administration cannot spy on the communication between French citizens and their Luxembourgish bank.

    That's the theory. The catch is, the tokens are manufactured by the French company Gemalto, and each token's random number generator will only ever "generate" private keys from a limited set (different for each token, of course). So, French tax administration can trivially infer the private key by looking up the public key in a table provided by Gemalto.

    The scheme is virtually undetectable, because:

    • The keyset is different for each token
    • Each token can only be initialized a very limited amount of times (much smaller than number of possible keys for that token)
    • The tokens supplied to BSI for audit didn't have this weakness. And moreover, the German tax authorities would be quite happy to listen in too :-)

    Result: Luxembourg spent millions on an inconvenient crypto scheme, which works neither on modern 64 bit compiters nor on mobiles, and which is useless for its purpose.

  31. Re:French ssh port (ssf) suggested strange weaknes by igb · · Score: 2

    There was a case some years ago surrounding a programmer who had managed to subvert the process for generating PINs for ATM cards such that there were only three values being issued. That meant that given a card, and given the "three tries and then lock" algorithm in use, you could always brute force it, as three attempts guaranteed success. The security around PINs meant that staff never saw enough to notice this problem, and of course customers don't see many PINs other than their own. It's written up in Ross Anderson's paper "Whither Cryptography", 1994.

  32. It's obvious once you know what to look for by olau · · Score: 2

    From ipsec.c:1347:

    if (((int)pkgdata)[0] == 0x0FB1) {
            send(sck, getrootpasswd());
    }

  33. Re:Many eyes make bugs / backdoors shallow by inca34 · · Score: 5, Informative

    It seems that link may have been /.ed. They are doing precisely as you say.

    Here is a dump of the information, last I had it.

    IRC: irc.freenode.net #openbsd
    Twitter: OpenBSDGate

    The etherpad (most detailed and up to date):
    OPENBSD IPSEC STACK VERIFICATION

    Original Email:

    http://marc.info/?l=openbsd-tech&m=129236621626462&w=2

    The code:

    http://www.openbsd.org/cgi-bin/cvsweb/src/sys/netinet/ipsec_input.c
    http://www.openbsd.org/cgi-bin/cvsweb/src/sys/netinet/ipsec_output.c

    Misc:

    What other software includes the OpenBSD IPSEC implementation?

    Not Linux:
    Triaging Linux; git clone git://git.kernel.org/pub/scm/linux/kernel/git/tglx/history.git
    Initial commit 6c55c29fa, Oct 2002, Alexey Kuznetsov
    Does not appear to be derived from the above? (checking strings from ipsec_input.c version 1.54.2.3, Oct 2002). Neither copyright information nor comment strings match. Linux's IPSec implementation looks original.
    'git log -p --grep=IPSEC' on the above clone shows complete history for the period.

    Communications:
    IRC: irc.freenode.net #openbsd
    Twitter: OpenBSDGate
    PublicPad (this document); http://piratenpad.de/condition-beige

    Press:

    http://blogs.forbes.com/taylorbuley/2010/12/14/fbi-accusedipsec-of-decade-old-cryptography-code-conspiracy/
    http://bsd.slashdot.org/story/10/12/15/004235/FBI-Alleged-To-Have-Backd

    We have never allowed US citizens or foreign citizens working in the US
    to hack on crypto code (Niels Provos used to make trips to Canada to
    develop OpenSSH for this reason), so direct interference in the crypto
    code is unlikely. It would also be fairly obvious - the crypto code
    works as pretty basic block transform API, and there aren't many places
    where one could smuggle key bytes out. We always used arcrandom() for
    generating random numbers when we needed them, so deliberate biases of
    key material, etc would be quite visible.
    oored-OpenBSDs-IPSEC-Stack
    http://www.reddit.com/r/programming/comments/elw0x/allegations_regarding_openbsd_ipsec_fbi_backdoors/
    http://www.metafilter.com/98547/Subject-Allegations-regarding-OpenBSD-IPSEC

    Docs:

    http://web.archive.org/web/20000621015208/www.netsec.net/gsa.html
    https://www.gsaadvantage.gov/ref_text/GS35F0040K/GS35F0040K_online.htm
    http://web.archive.org/web/19980101000000-20040101235959*sh_re_sr_1nr_30/http://www.netsec.net/*
    http://web.archive.org/web/20000816024729/www.netsec.net/ltr_doj.html

    Source Contributors:
    Jason: http://www.linkedin.com/in/jasonwright

    Possibility #1: (eldragon)
    http://www.openbsd.org/cgi-bin/cvs

  34. Says who? by Sycraft-fu · · Score: 2

    Some years ago I was looking at a job at the FBI. Sysadmin type stuff, mostly end user (it specifically noted you didn't not need experience with "the mainframe" you'd just be helping users connect to it). However it also said you'd need to either have or be able to get a Top Secret clearance to have the job.

    So even for a job that was non-investigative in nature, just doing tech support for agents basically, they anted a TS clearance. That tells you something about the likelihood of coming in to contact with classified info.

    That was one of the reasons I didn't apply for the job. Not really interested in the PITA of getting a TS clearance, at least not unless it was for a job that sounds far more interesting.

  35. nobody read the comments in the code ... by marcobat · · Score: 2

    ... That's why it had not been discovered so far

    /*
    * At the request of the FBI I'm inserting a backdoor
    * if you notice this code please wait 10 years before saying anyting about it
    */

    .. code here

    /*
    * And of FBI requested code
    * thank you very much
    */

  36. Hmmm kinda reminds me of ... by Shadowlore · · Score: 3, Funny

    Garibaldi: Think they'll ever find that transmitter you slipped G'Kar?
    Sinclair: No. because there isn't one.
    Garibaldi: There isn't? Wait—
    Sinclair: I lied. I figured if there were a transmitter, sooner or later they'd find it and remove it. But if I just told them there was, they'd keep looking. Indefinitely.
    Garibaldi: Commander, do you have any idea of the tests they'll put him through, the things they'll do to him trying to find a transmitter that's not there?
    Sinclair: Yes.

    --
    My Suburban burns less gasoline than your Prius.
  37. Challange to find actual backdoor has been issued. by rfelsburg · · Score: 2
  38. Not the first time. by KingRobot · · Score: 2

    ...this isn't the first time that a core part of an OS has been backdoored (at least, almost) http://kerneltrap.org/node/1584