Slashdot Mirror


Eve Online Client Source Code Leaked

An anonymous reader writes to tell us that the game client source code for the popular MMO, Eve Online, has been leaked via torrent. In addition to the source code the user also posted a lengthy chat transcript with someone from CCP customer support. While the end goal may have been to call attention to the continuing security issues within Eve (and ultimately themselves), there are probably better ways of getting through to support. Unfortunately, CCP seems to be responding with the usual knee-jerk reaction of banning everyone breathing a whisper of this incident. I wonder if any large MMO company will ever be brave enough to calmly address an issue rather than wielding the ban-hammer.

30 of 368 comments (clear)

  1. Well... by schmidt349 · · Score: 4, Funny

    I would worry that unscrupulous players will dig through the source code to find exploits, but it's reassuring to find something that will bring them back to the real world...

  2. Direct link to the torrent by Anonymous Coward · · Score: 5, Informative
    1. Re:Direct link to the torrent by ichigo+2.0 · · Score: 4, Insightful

      It doesn't surprise me though, slashdot is becoming more and more of a PR site for the piratebay and the pirate party. Its only a matter of time before it has a warez and torrents section :(
      It's not just slashdot, every place is starting to see imaginary property for what it is. That's what you get when near-infinite supply meets demand, prices go down.
  3. Warning! CCP Seeding, Banning Torrenters by eldavojohn · · Score: 5, Informative
    Something that the summary missed but was reiterated twice in the actual article is that CCP is accused of seeding most of the torrents and then monitoring all IP addresses acquiring the source and then banning accounts associated with those IPs. So if you're going to get the code just to look at it, I suggest using your mom's house or an internet cafe!

    I wonder if any large MMO company will ever be brave enough to calmly address an issue rather than wielding the ban-hammer. This particular user used this code to point out a few things regarding security:

    From all security i saw - were ROLE permissions for logins with priviliges higher than usual player, and some minor things in relation to prevent some remote service calls (some with potentially bad payload) I'm not entirely sure if he's implying there's some exploitable permissions bug or if there are some user roles that are jacked up (you know, like a coder at CCP giving himself the keys to the game and claiming it was for debug when it was for his own account's gain). But whatever it is, CCP should fix that.

    Frankly, downloading this would be a stupid thing to get banned over. This is CCP's bread and butter, I don't blame them for taking this action. In their eyes, they are trying to eliminate exploiting players in hopes of making the game better for non-exploiting players. This 'policing' action is usually desired by the community. Yeah, it's unfortunate that they're not taking advantage of the security and stability of an open source coding community ... but you have to admit it would be easy for someone to fork and go off and make their own client with. Maybe there's deep dark secrets they don't want out and since it's only a game and I don't really care for it I'm not too concerned.

    Let's see if Linden Labs can make this OSS client thing work to their advantage. I sure hope so because it will give everyone else a reason to make the switch.
    --
    My work here is dung.
  4. Re:Warning! CCP Seeding, Banning Torrenters by Cro+Magnon · · Score: 4, Funny

    So if you're going to get the code just to look at it, I suggest using your mom's house


    Unless you live in your mom's basement. :-P
    --
    Slow down, cowboy! It has been 4 hours since you last posted. You must wait another few hours.
  5. From TFA... by Lisandro · · Score: 4, Insightful

    In the lengthy and scatological exchange, the poster of the source code attempts to get some answers about CCPs much maligned security practices, particularly concerning the rife issue of bots and scripting in their flagship game. The conversation was a little less than professional.

    Well, atleast on the tidbit shown on the article, the CCP representative sounds perfectly rational and professional. Am i missing something here?

    And by the way, how does this guy ended up with the sourcecode on the first place?!

    1. Re:From TFA... by vux984 · · Score: 4, Interesting

      Well, atleast on the tidbit shown on the article, the CCP representative sounds perfectly rational and professional. Am i missing something here?

      Well, the CCP rep did sound vaguely annoyed to me; I could see him rolling his eyes. But then I imagine they roll their eyes at most of the conversations they have. :)

      And by the way, how does this guy ended up with the sourcecode on the first place?!

      That's still unclear. Some say its just decompiled python that anyone could do themselves easily enough. But he almost alludes to having a source within ccp... so I'm not sure.

      Its too bad he's apparently not an english speaker because that invites mockery. And obviously he's not being terrible mature which further damages his image, but at the end of the day what he is asking for is legitimate in my opinion:

      All he wants is CCP to acknowledge there are specific issues and to demonstrate that there have been real fixes added. Because he is firmly convinced that people have been botting for years using known exploits and that CCP hasn't made even the slightest effort to curb them.

      So he's basically saying if you've fixed it... prove it. "Show me an exploit that used to work that doesn't now. Show me something, ANYTHING, that you've actually fixed in the last year or so related to stopping botters."

      "And Improve your processes, so that if we report exploits you acknowledge them, and fix them, instead of just handwaving that security improvements have been added, because I'm not seeing any."

      "And if you don't, I'm releasing the source, so we can ALL see for ourselves what you've actually improved over the last year, because I'm tired of watching people bot for YEARS without having to so much as adapt to new anti-bot tactics."

      If this guy is just blowing smoke, then CCP really should have no issue publishing some of the hundreds of botting related exploit scenarios that they claim to have fixed over the last several patches...and showing that they no longer worked.

      That much they owe their customers. Frankly, I don't really blame CCP for not publicly acknowledging security issues and bringing additional attention to each exploit before its fixed... BUT... I -do- think that the playerbase deserves some honesty -after- the fact.

      If they release an exploit fix, publish it, what used to work, and what no longer works. CCP lacks credibility, and this would go a long ways towards helping restore it.

      After all we get a better level of security updates disclosure from microsoft. I think all this guy really wants is the same from CCP. And if CCP *hasn't* actually done anything in the last few years to address all the while claiming they have, well... I can see why a segment of the playerbase is boiling mad about it, and wants to blow this into the public eye where they can't sweep it under the rug anymore.

  6. Not a leak by Fweeky · · Score: 5, Informative

    It's not a leak, the .pyc's have just been decompiled and distributed. Here - go do it yourself.

  7. Re:this is going to be so great by eldavojohn · · Score: 4, Insightful

    I don't think anything major as this has happened before ... Really? It was only the client code, they don't know how the server works (although they could reverse engineer the messaging potentially and mock a server after a lot of work and assumptions).

    On a side note, I think this has happened before on a much more serious scale.
    --
    My work here is dung.
  8. Calmly addressing issues by FooBarWidget · · Score: 5, Insightful

    "I wonder if any large MMO company will ever be brave enough to calmly address an issue rather than wielding the ban-hammer."

    I doubt it. But this is not without a good reason.

    Many, many MMORPG players are 13 year old kids. Immature kids. These people are not adults. They do not behave like adults. If the company "calmly addresses the issues", then they'll be flooded by complainers, cheaters and opportunists within no time.

    I've been involved in MMORPG for several years. The immaturity in MMORPG communities in general is just sad. There doesn't seem to be any good way to handle issues other than ruling with iron fist.

    1. Re:Calmly addressing issues by brkello · · Score: 5, Insightful

      I don't understand how the maturity level of the user base has anything to do with how a company reacts. Eve has always been heavy in to banning and suppressing information. Eve also claims to boast a more "mature" player base (which I find a bit laughable). In a game with such mature players, CCP bans more than any other company. I played Eve for awhile and didn't like it very much. The corruption from within the game company made me go from thinking they made a boring game with jerks as a player base to just flat out disliking the game. Don't get me wrong, Eve has its strong points...but fun isn't a part of that.

      Eve banning people and deleting forum posts isn't ruling with an iron fist. It is a desperation move to hold on to customers who may not know what is going on. If they ruled with an iron fist they would actually come down on the people who cheated with the devs. That's the problem, the game should be as cut throat as possible in game...but CCP not only plays the game, but leaks inside knowledge of the game to organizations that are already overpowered. Maybe they are totally clean now (I doubt it) but the game will forever be tainted by the past.

      The reason they ban is because they have too much to hide and would rather do that than address the issue and fix their game.

      --
      Support a great indie game: http://www.abaddon360.com
  9. Re:Don't download the source via the torrent by NightRain · · Score: 4, Insightful

    Well that will be great for any of their users who get a dynamic IP that was previously used to download the code.

    That very fact is why I think the post you were replying to is likely full of it

  10. Re:Warning! CCP Seeding, Banning Torrenters by MarkByers · · Score: 4, Funny

    So if you're going to get the code just to look at it, I suggest using your mom's house or an internet cafe! Or if you know an avid Eve Online player that you don't really like, you could hack into their wireless connection and download it that way. Not that I would condone it...
    --
    I'll probably be modded down for this...
  11. Re:this is going to be so great by Oriumpor · · Score: 4, Funny

    The problem isn't so much that the code isn't fixable, or that the client side code will show something obviously exploitable (as this is most likely the case.) But really, it's about the fact that every developer writing code for this has been doing it under the assumption that nobody is going to look at it except their peers, now the world is staring at their dangling unmentionables. Imagine your rushed proprietary coding project was now instantly made open source against your wishes...

  12. Re:Warning! CCP Seeding, Banning Torrenters by Anonymous Coward · · Score: 4, Informative

    What they dont want is someone adding functionality to the client they avoided for a long time:

    Fire all weapons on a single click. Automagically select the right ECM jammer for the target ship. And that's what came to my mind in an instant.

    I bet there are many more possibilities which can unbalance tweaked clients and standard clients. It is like a free opportunity for wall hacks if other clients are allowed. It wouldnt be a problem for PvE games, but PvP needs the same client for all.

  13. Re:Don't download the source via the torrent by SiriusStarr · · Score: 4, Interesting

    I don't know... Remember the recent article RE: the FBI investigating any IP that accessed a false child pornography website that they set up? I think the powers that be have yet to realize that IPs are not exactly reliable means of identifying individuals.

    --
    Fear the penguin.
  14. Re:Warning! CCP Seeding, Banning Torrenters by pthisis · · Score: 4, Insightful

    It wouldnt be a problem for PvE games, but PvP needs the same client for all.

    Or needs to do validation on the server-side of all game-balance-affecting stuff--which is really the only way to ensure fairness, since clients can always be hacked.

    --
    rage, rage against the dying of the light
  15. What's Been Found So Far by rsmith-mac · · Score: 5, Insightful

    For those of you asking "what's the big deal about this?" here are what people have found so far digging through the code.

    • 1) Since the client logic is in Python, introducing new logic is a matter of injecting new Python code in to the game. It turns out this is very easy to do right now, there are several ways, including using the telnet server the client runs so that CCP can upload code to the client computer when it connects
    • 2) The big concern is bots, EVE can be botted and this is a problem like any MMO
    • 3) The other big concern is that the EVE client knows far more than it shows, a problem for a PvP game. It is possible to hack the client to the point where it will tell you exactly who and what entered a system you are in, and where they are at at all times.
    • 4) It's also possible to disable the client's "anti-addiction" code required to meet China's MMO laws. Apparently the server isn't actually booting players, it's telling the client to disconnect. The Chinese government is going to love that one
    • 5) Finally, the game has a custom made built-in web browser (the In Game Browser) that's extremely cruddy and isn't used very much. It's also so cruddy that it's holier than the Pope himself; it's possible to craft links to induce it to execute external applications and web browsers. Basically with a little social engineering you can be trick people in to letting you compromise their machine.

    EVE is a fine game, but the code is a joke. This is very likely going to lead to a lot of problems for CCP for some time to come. If they're lucky they'll only get a flood of bots, if they're not then the game may very well turn in to a wild west of hacking players looking for an edge.

  16. Re:this is going to be so great by the_humeister · · Score: 5, Insightful

    The Second Life client is open source. If that can be done, why is the source code leak for this game such a bad thing?

  17. Re:Don't download the source via the torrent by RonnyJ · · Score: 4, Insightful

    If they just banned every IP, yes, that'd have a high number of false positives, but they could track the following:

    1. A user has previously logged onto Eve Online
    2. The IP linked to that user's previous session downloads the code.
    3. The user logs onto Eve Online again with the same IP (i.e. the same IP/username is maintained throughout).

    Put those three events together, and it'd be easy to track/ban a lot of those downloading.

  18. It's not that special really by Hachima · · Score: 5, Informative

    Back in the day the EVE/script folder had the decompiled python in it in plain text. People did stuff like modify it to create merchant bots that would auto buy/sell stuff on the markets and whatever else they wanted to modify. Then CCP changed it to one 'compiled.code' file instead of all the uncompiled python files, which is easier to manage and check for people making changes. So you can still just take that 'compiled.code' file and decompile it to readable code. Which is what got 'leaked' It's nothing special at all really, and is only a portion of the client code. Anyone that was interested in messing with it has already seen the Python, especially people that played when it wasn't even pre-compiled. Next thing you know right clicking a web page to 'view source' will be considered leaking source code too?

  19. Headline article correction for ./ by British · · Score: 4, Funny

    Old: Eve Online Client Source Code Leaked
    Revised: Eve Online Client now open source!

  20. Re:Don't download the source via the torrent by catxk · · Score: 4, Funny

    Let's put our hopes to the anti piracy lobby. They've been working hard for years to loosen the knots around these kind of logs, and as is evident by the article, making logs containing private data readily available to economic interest groups/firms is useful for more than just pirate hunting. Kudos to the content mafia for increasing our security and well-being!

    --
    Don't be crazy anymore!
  21. Re:Don't download the source via the torrent by guywcole · · Score: 5, Funny

    But... but... he has a 3 digit ID! If we can't trust low /. ID's, what can we trust?

  22. Re:this is going to be so great by Umuri · · Score: 5, Interesting

    Let me give you a little history lesson.
    Back in the dark ages, ya know, the 90s, there was a little game called Ultima Online.

    Heard of it? I hope so, it was one of the original MMORPGs.

    Every client ever released for that game had all of it's packets decrypted, and the encryption scheme broken for keys, usually within 24-48 hours. Everytime they updated.

    Add to that that people edited the client to do whatever they wanted, sometimes with other programs hooking in and altering packets, others by directly altering the assembly of the client.
    Many people tried to exploit bugs in the game that way, but most failed, and everytime someone did find one, it was usually fixed relatively quickly. Malformed packets went from "all the rage" and the way to bug up a game to relatively worthless within a span of a month, barring a few new uses that popped up every so often from bad new code introduced.

    Having the source code only simplifies this a little for the people who really care, and it doesn't really enable them to do anything they couldn't already.

    Oh, also, while i'm at it. Did you know ultima online had a special client for staff characters? And that the binary for that client was leaked as well?

    OH NOES! But wait! Ultima online used good security measures and correct privelege systems, so the client was worthless for anything a normal player couldn't do. :)

    Summary: This isn't new, and it's happened before on other games. Except in the past most games were already so well understood by their communities that the source would add almost nothing except a little ease and some time saved duplicating a better version of the client when they stop upgrading.

    Add to that, if this causes ANY security issue with EVE, then the people who coded the game should get in trouble, not the players. Good coding practices prevent all trouble the code could possibly do. You ARE checking for privelege levels and sanitizing your inputs, right?

    --
    You never realize how much manually made unmanaged "linked" lists suck, till you have src.link.link.link.link...
  23. Excerpt from the code... AMAZING by britneys+9th+husband · · Score: 4, Funny

    It's no wonder they tried so hard to keep this code hidden.  I'm not even sure what this is supposed to do.

    //Both people are represented by an abstract class
    public abstract class Person
    {
      public bool StrangersToLove { get; set; }
      public bool KnowTheRules { get; set; }
    }

    //Possible thoughts
    public enum Thought
    {
      FullCommitment
    }

    //Class
    public sealed class Me : Person
    {
      public Thought Thinking()
      {
        return Thought.FullCommitment;
      }
    }

    //The target of the song, notice that GetThought can only be called by passing in an instance of Rick
    //which satisfies that she can't get this from any other guy
    public class You : Person
    {
      private Thought whatHeIsThinking;
      public void GetThought(Me guy)
      {
        whatHeIsThinking = guy.Thinking();
      }
    }

    class Program
    {
      //The first verse
      static void Main(string[] args)
      {

        var Rick = new Me() { KnowTheRules = true, StrangersToLove = false };

        var Girl = new You() { KnowTheRules = true, StrangersToLove = false };

       Girl.GetThought(Rick);
      }
    }

    --
    Hear recorded Slashdot headlines on your phone! New service beta testing. Just call (248) 434-5508
  24. Official Communication from CCP by Vecna! · · Score: 5, Informative

    CCP is aware that an individual claims to have access to the source code of the EVE client. This access is not a security risk to CCP in any way. CCP does not believe in security by obscurity. The Python scripting language that is used by the client can be easily decompiled to generate human-readable code, and CCP has designed its server-side systems with that understanding. Access to the source code for the EVE client exposes no security vulnerabilities, has no privacy protection issues, and poses no threat to our customers' billing information. The server-side interface used by the client is carefully protected to ensure that no abusive or unwanted information is transmitted to, or from the EVE system. Nothing the EVE client can do can affect the game state, no advantage can be gained by manipulating the EVE client, no advantageous or disadvantageous information can be transmitted to other EVE users by altering the EVE client. The EVE client is signed with a security certificate registered to CCP, and hashes are available on our web site for those who wish to ensure the integrity of EVE client download files they may have received from a source other than direct download from CCP's web site.

    CCP does not confirm or deny, nor make any comment, regarding issues of internal security, and will not be doing so in this case. As a policy, CCP removes message board posts regarding violations of its EULA and Terms of Service, and CCP considers any alteration of the Client software, including decompilation, to be such violations.

    --------

    Ryan S. Dancey
    Chief Marketing Officer
    CCP

  25. Re:this is going to be so great by I+Like+Pudding · · Score: 5, Insightful

    If that can be done, why is the source code leak for this game such a bad thing? Because nobody actually cares about Second Life.
  26. Re:Don't download the source via the torrent by Anonymous Coward · · Score: 4, Funny

    Me.

  27. Re:Don't download the source via the torrent by pipatron · · Score: 4, Informative

    surely they have no legal grounds for a lawsuit

    They don't need a lawsuit to ban accounts on their servers.

    --
    c++; /* this makes c bigger but returns the old value */