Open Source Xbox Live?

Discussion in 'Xbox (Original console)' started by AlexRMC92, Feb 19, 2013.

  1. TheFallen93

    TheFallen93 Spirited Member

    Joined:
    Apr 22, 2009
    Messages:
    167
    Likes Received:
    68
    I feel it's time to shed some light on this. I have been working on this on an off for a little over a year now. Collectively I have spent 6 solid months doing reverse engineering and programming to make this happen. Here is a little something to show my progress.

    This video was recorded on an xbox development console while connecting to my "xbl" server service which was running on my computer. There are NO modifications to the dashboard running on the development console, no patching, no bypassing security checks, nothing. All of the code I have written is 100% compatible with the code the console runs, for both devkits and retail consoles. The network code is the same between the two. There are no private keys that are used in the xbox live code, so this will work on completely unmodified retail consoles as well, provided I have the needed keys to decrypt kerberos tickets (hdd key, online key, etc). All of the kerberos and SG replies are authentic, there are no replays, no spoofing data, nothing hacky.

    This is simply a test of the connection to the xbl server. For a full account sign in there is more work needed for the online services. Ignore the music in the video, I forgot to pause spotify. In this video you will see wireshark sniffing the packets going between the xbox (192.168.1.135) and my computer (192.168.1.250). The upper right cmd window is the kerberos portion of the server code, and the lower right cmd window is the security gateway portion of the server. The ping times are kind of wonky because I haven't fully figured out the right timings for when to start computing them and how to determine the gaps between pings.

    So here you go, something you can sip a beer to. http://icode4.coffee/photos/xbl_poc.mp4

    Here is where I stand with this project. I currently live a life just like any of you, I go to school full time, I have a job, a gf, and shit to do. I work on this as much as I can but I am by no means promising something usable anytime soon. My goal is to finish login and the other services needed for a full signin and sitting at the retail dashboard, as well as account creation. Then I have already asked someone when the time comes to start working on a title server for halo 2, while I do some code cleanup and try to get this beast ready to scale for mass connections. I will also work on an API and standard for anyone who wishes to implement a title server for other games, although there will be strict requirements that must be met to maintain quality of content.

    Once I deem the service worthy and the halo 2 title server is complete it will open to the public in stages. The first stage will allow people to create an account or recover an old account provided I can get them to work. You may also be able to sign into "xbl" while at the dashboard but not in any other title. The second stage will allow you to play halo 2 and download content we will provide. The third stage will allow developers to use an SDK which I will develop to allow them to create title servers for other games. Once the title server meets a set of requirements for quality control it's IP will be added to the "xbl" server and will be usable by users.

    This server will be free to the public and should only require DNS redirects or a DNS spoof setup in order to work on any dev or retail console. I believe I can also make any old gamer profiles people may have laying around work as well, assuming you still have the same files for them. This service will be in no way affiliated with xbox live or Microsoft, it will run with a different name and will only work with the original xbox. If Microsoft has any issues with it I will be shutting it down immediately. The source code will not be released.
     
  2. KIWIDOGGIE

    KIWIDOGGIE Peppy Member

    Joined:
    Jul 9, 2008
    Messages:
    357
    Likes Received:
    15
    It's amazing what some actual RE gets you.
     
    austin12456 and ToXZiN 1 like this.
  3. ToXZiN 1

    ToXZiN 1 Spirited Member

    Joined:
    Sep 22, 2015
    Messages:
    179
    Likes Received:
    50
    This thread is about to blow up! Good work bro...Stoked about this.
     
  4. Lukew

    Lukew Rapidly Rising Member

    Joined:
    Sep 18, 2015
    Messages:
    98
    Likes Received:
    80
    Christ I forgot all about this, had the year from frigging hell and it's still going on. Just got an email with the above awesome post, whoop.
     
  5. ddxcb

    ddxcb Gota J.T.A.G. That Xbone Yo.

    Joined:
    Apr 17, 2008
    Messages:
    391
    Likes Received:
    46
    O GOD HALO 2 SERVICE... WANT

    Nice work btw.
     
    TerdFerguson likes this.
  6. Borman

    Borman Digital Games Curator

    Joined:
    Mar 24, 2005
    Messages:
    9,564
    Likes Received:
    2,221
    finalkillcams likes this.
  7. erfg12

    erfg12 Rising Member

    Joined:
    Aug 26, 2015
    Messages:
    60
    Likes Received:
    16
  8. bearkilla

    bearkilla Peppy Member

    Joined:
    Feb 3, 2009
    Messages:
    300
    Likes Received:
    12
  9. rso

    rso °

    Joined:
    Mar 26, 2010
    Messages:
    2,207
    Likes Received:
    472
    Will only MS speaking up negate a code release, or is this a closed source project through and through?
     
  10. TheFallen93

    TheFallen93 Spirited Member

    Joined:
    Apr 22, 2009
    Messages:
    167
    Likes Received:
    68
    I prefer to not open source it for two reasons, A: I spent months reverse engineering and testing just to get to this point, and it would be a huge slap in the face to see people spin up clone servers and then there be no "unity" in the community between the servers, ex many servers few players, and B: the network code can be adapted to 360 in a matter of days and I don't want to support xbox 360 because live is still running for it. If we make a 360 live server, that can be seen as a threat to MS's revenue and that present legal actions. The original xbox is abandoned so with some precautions I think it would be fine to spin up a homebrew xbl server for it.

    I know the point of this topic was to create an open source server, however, given the circumstances of what this project aims to do I think it would be best not to do so given how easy it would be to modify the server code to support consoles and platforms that could interfere with revenue that MS is making.
     
  11. erfg12

    erfg12 Rising Member

    Joined:
    Aug 26, 2015
    Messages:
    60
    Likes Received:
    16
    @TheFallen93 I was actually thinking the same thing yesterday as I was falling asleep. I would hate to see 50 xbox servers, and everyone spread thin over them. It would be great to have just 1 main server everyone connects to.
     
  12. CodeAsm

    CodeAsm ohci_write: Bad offset 30

    Joined:
    Dec 22, 2010
    Messages:
    1,504
    Likes Received:
    178
    Sadly, I do have to agree @TheFallen93 on your reasoning.
    I do hope that whatever you made, doesnt get lost forever. I personaly enjoy doing whatever worthless and somewhat usefull things I do, and so support public efforts. And I also wish you can indeed succeed in making this work and getting some if not alott of titleservers to work and retro people to gather and enjoy the old XBox live without stepping on MS feet.
    There is probably still, alott of work todo, and we might be able to help in some shape or form.
     
  13. TheFallen93

    TheFallen93 Spirited Member

    Joined:
    Apr 22, 2009
    Messages:
    167
    Likes Received:
    68
    I have the source tree stored on multiple drives in multiple computers so the only thing stopping it would be legal action against me.

    Once I have the SDK ready for title servers I'm really hoping people will begin to add support for other games. I'm going to need some downtime from reverse engineering once this is going. I'd really like to see Doom 3, Area 51, Rainbow Six, and maybe Far Cry support.
     
  14. Lukew

    Lukew Rapidly Rising Member

    Joined:
    Sep 18, 2015
    Messages:
    98
    Likes Received:
    80
    One issue I see here is getting consoles to connect, it will require an alternative DNS to stop them connecting to xbox.com. Also the issue may arise where hacked and modified games start being used. You may struggle getting keys from people with stock consoles, as there will be no way to get them without hacking it first, meaning no way to keep cheaters from using the service. You could release a kernel with your own RSA keypair meaning you can distribute software to collect the required info from the console, but not allow modified games to be run. You'd have to re-sign game executables with your keys and work around the legalities of distributing them.

    Great work though :)
     
  15. MrMario2011

    MrMario2011 Robust Member

    Joined:
    Apr 8, 2016
    Messages:
    298
    Likes Received:
    137
    Posting on here so I can follow the thread and stay tuned. This looks awesome so far!
     
  16. Collingall

    Collingall Robust Member

    Joined:
    Jun 13, 2016
    Messages:
    210
    Likes Received:
    131
    This project sounds amazing, I'd love to get people playing Halo 2 again. Thanks for the great work.
     
  17. TheFallen93

    TheFallen93 Spirited Member

    Joined:
    Apr 22, 2009
    Messages:
    167
    Likes Received:
    68
    I only need the per console keys during the development process. During initial development I need the online key from the user profile, and to obtain that I needed the HDD and EEPROM keys. However, once I have me test profiles setup I do not need the console keys for every user.

    I want to maintain compatibility with unmodded consoles and try to make the service as open as possible. Even if a custom kernel was made there is nothing stopping anyone from getting code execution on the console (buffer overflows, patching the kernel manually, etc) and just patching around it as we have already done with Microsoft's code. I have some ideas on how anti cheating measures can be put into place but that will come later on. For example, people have custom EEPROMs which will show up during MAC authentication, upgraded hard drives (which I still have the original xbox live challenge for). So I am not too worried about this.
     
    Xbox Loyalists and GoTeamScotch like this.
  18. Anthony817

    Anthony817 Familiar Face

    Joined:
    May 12, 2010
    Messages:
    1,124
    Likes Received:
    596
    I just started getting back into Xbox after selling my last one in 2013. This is great news that you are planning something for us, and also that you have already showed off video of the first stages of the service connecting successfully. Great job man keep it up!

    Would be pretty great to get Battlefield 2: Modern Combat, and Call of Duty 3 working online with this! I am going to be subscribing to the thread so I can see all the updates.
     
  19. Maverick

    Maverick Active Member

    Joined:
    Jul 4, 2014
    Messages:
    28
    Likes Received:
    5
    This is fantastic news! I can't believe how close this is to happening now.
     
  20. GoTeamScotch

    GoTeamScotch Spirited Member

    Joined:
    Jul 14, 2016
    Messages:
    127
    Likes Received:
    66
    That's incredible! We know it's still early, but to even have gotten this far must have taken a massive amount of effort.
     

Share This Page