Slashdot Mirror


SourceForge Server Compromised

justrob writes: "Looks like there was a massive security breach at Source Forge. I wonder if this what caused the 'unscheduled maintenance event' that has left the shell servers unavailable for a week. Here is part of an email I recieved:" (Read more below.)

"Dear SourceForge User,

The SourceForge team takes security very seriously. This week, one of our systems was compromised. We have promptly taken the necessary steps to correct this situation.

You have been contacted, because according to our log files, you have used SourceForge during the past week and may have used the system that was compromised. In order to complete the security fix, we are asking all users who used the system to change their password immediately. We've reset your password to a randomly generated string. "

Here's where to go if you think your account might have been compromised.

9 of 199 comments (clear)

  1. Repercussions and Security Theory by memoryhole · · Score: 5

    What I find particularly interesting about this whole deal is how their distributed network setup has worked against them. Reading the wording of that email closely, you notice that you are being asked to change your password because you MAY have used the system that was compromised. They don't actually know.

    And even if they did know, would that help, I wonder? Is user information distributed within the SourceForge network, or is there a more central login server that warehouses all of that information? Either case, when you think about it, is somehow not exactly what you want to have happen. If all user login information is in a central location, cracking that one location would instantly compromise everyone's account information. However, distributing user information around the network (aside from making login management more difficult) makes it more likely that if a random server is cracked at least *somebody*'s account information will be compromised.

    It occurs to me that a distributed, and cryptographically fragmented form is the most desireable - because then cracking any one machine would give you exactly nothing in the way of user account information.

    Now, the rest of the problem is people who use the server that has been compromised. They send their usernames and passwords to this compromised server (unawares, of course) and thus their information is compromised, obviously. But does it have to be this way?

    I propose that it is conceivable to build a login system where no one server receives an entire piece of a login. The login name is split into two character pieces, for example, and sent to as many servers as necessary along with an MD5/SHA1 sum of the full username - each server verifying that there exists a login name with those two letters in that particular position, and they are associated with that particular cryptographic sum, and nothing more. Notice that the controlling server (the one that you're logging in to) never sees any piece of the login name - but is merely informed (by the client) which machines (in no particular order) the login name pieces were sent to. A similar trick could then be played with the password - sending pieces of the password to some password verification servers, with a cryptographic sum of the verified login name. So, each server never has a record of full login names, and no server ever is sent the full login name.

    To bad no such system exists, eh?

  2. Re:Huh? by Ewan · · Score: 5

    Well most obviously they could subtly alter the source code of one or several programs to include a trojan horse.

    Then, when you download and install something, you would also install a back door for the cracker to use to easily gain access to dozens, hundreds, or even thousands of machines.

    Of course, GPG signed tarballs are what you would normally use to verify the files and protect against this, but how many people actually bother with that?

    Ewan

  3. Re:Huh? by Raven667 · · Score: 5

    Sure code could be modified, but not without being detected. I assume that they are going to restore the data from a pre-breakin backup, then diff the backup with the current data and ask the various software maintainers to verify the diffs. Alternately they could require the various software maintainers to checkin their local CVS tree with the master repository, and verify any discrepancies. Any time you have a properly implemented change control system like CVS it is scads easier to recover from a comprimise like this and ensure that your source code has not been comprimised. This isn't scary at all.

    --
    -- Remember: Wherever you go, there you are!
  4. Re:They should provide more details by xixax · · Score: 5
    Heck, we don't even know the nature of the breach, do we? Was data stolen?
    Oh no! This is a disaster! What if the crackers got a copy of the source code to the Linux operating system???

    Xix.

    --
    "Everything is adjustable, provided you have the right tools"
  5. Re:They should provide more details by MrKevvy · · Score: 5

    But I suspect since sourceforge hosts MANY CVS based projects, that open-source software could be injected with outside code...

    Will they be changing their name to ForgedSource, then?

    --
    -- Insert witty one-liner here. --
  6. Single Point of Failure by MrBlack · · Score: 5

    I've heard people decry the fact that most Open-Source projects are now hosted on Source Forge (primarily I think because they were worried about the company suddenly going out of business or doing something crummy and underhanded). I guess this is one of the other consequences of having a centralised repository.

  7. Re:Huh? by InsaneGeek · · Score: 5

    This could be extremely BAD, think about if someone were to add, modify just a couple of lines of code. As long as people have been keeping original, master copies offsite it shouldn't be too dificult to get things back to normal.

    But could you imaging though, if someone were to add/modify 4-5 lines off code and you didn't have another copy offsite? You would have to remember why every single line of code was there, you couldn't trust the comments telling you why this procedure is there.

    For an example: It would be very easy to add code to add, "allow-anyone with this password to get a root shell" lines to a compromised box. Now lets say it's an ISP running an IMAP server they get off of Sourceforge, gets a new version. The program appears to run just like it's supposed to, they never would know that there is a 3 line, fork shell process code added into it. Being an ISP they have to have this program accessible to anyone anywhere, so they can't have this program behind a firewall. Along comes the wiley hacker who compromised the code to begin with... *poof* root shell on box.

    That is the scary part, without being able to go back to a true "golden" state, EVERY single line of code has to be checked, without relying on possibly forged comments. Comparing MD5 hashes could tell you if the program has been modified, but some programs are modified hourly, most of these don't have checksum information.

  8. Re:yes, well by atrowe · · Score: 5
    Typical Slashbot reaction. An open source site gets hacked and your response is "Yeah, well, it happens". If it were an NT/2000 based site you'd all be blathering about how crappy Microsoft is and why everyone should use Linux.

    As a side note, you're absolutely right. Security breaches are a fact of life on the Internet and no site is 100% secure. Just remember this the next time there's a story about a MS site getting cracked and try not to get all high and mighty about it because Linux, just like every other piece of software is NOT 100% secure.

    --

    -atrowe: Card-carrying Mensa member. I have no toleranse for stupidity.

  9. They should provide more details by ColGraff · · Score: 5

    Sourceforge really should provide more details about how security was breached. They probably are reasoning that if they give details, other people will do the same thing. However, anyone who's interested in this sort of nonsense probably already knows.

    So, why not let the legitimate Sourceforge users have a bit more information about what happened? Perhaps some of the users might have an idea for a fix, or at least a way to protect their own work. Heck, we don't even know the nature of the breach, do we? Was data stolen? Corrupted? What? Inquiring minds have a legitimate need to know.

    --
    I'm the stranger...posting to /.