Open Source Xbox Live?

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

  1. kl0wn

    kl0wn <B>Site Supporter 2013</B><BR><B>Site Benefactor</

    Joined:
    Aug 31, 2006
    Messages:
    237
    Likes Received:
    8
    It was the complete source tree to kernel/dash and other tools. It was used by COMPLEX members to create their BIOS. Just like the other BIOS that were released were based on the kernel source code, not binary hacks. Xecuter/ind-bios/maybe others.
     
    Last edited: Nov 4, 2013
  2. rso

    rso Not a member. You're imagining things.

    Joined:
    Mar 26, 2010
    Messages:
    2,090
    Likes Received:
    392
    That's what the rumors say, yes. Has anyone actually seen those sources though? In person, not the usual "I know someone that knows someone else that has" hearsay crap. I can't believe this was a public leak, yet noone has it. COMPLEX might still have gotten theirs from elsewhere.
     
    Last edited: Nov 4, 2013
  3. AlexRMC92

    AlexRMC92 Site Supporter 2013

    Joined:
    Feb 12, 2013
    Messages:
    336
    Likes Received:
    25
    There isn't much of a point to sitting around waiting on a lead to files that may or may not exists. If i find something then great, but I'm not holding out on it.

    Even if we were to find them we can't really use them unless someone wants to get sued. They would just help in figuring out a few things.
     
    Last edited: Nov 4, 2013
  4. Woodlander

    Woodlander Member

    Joined:
    Nov 12, 2013
    Messages:
    6
    Likes Received:
    1
    Hey,

    I'm very interested in programing my own Xbox Live account for the original Microsoft Xbox.

    I want to create my own Xbox Live account (profile; gamertag) so that I can be able to play a game called Phantasy Star Online: Episode I & II (Xbox, 2003).

    I am employed as an analyst working at a software development company.
    I am also training as a junior developer at the same company.

    I have knowledge of Java programming and of C programming. I hold an A+ license and have experience repairing desktop PCs as well as my own personal Microsoft Xbox console.

    I have a download of the XDK (Xbox Developers Kit) on my desktop computer as well as a copy of Microsoft Visual Studio 2003. I also have the Eclipse IDE, if its necessary for this project.

    Please let me know how I can help and what I can do to make this dream a reality to you and your team.

    Please call me Woodlander.

    ~Woodlander
     
    Last edited: Nov 12, 2013
  5. Borman

    Borman Digital Games Curator Staff Member

    Joined:
    Mar 24, 2005
    Messages:
    9,392
    Likes Received:
    1,334
    Use hacked executables to play Phantasy Star, doesnt require XBL :)
     
    CodeAsm likes this.
  6. CodeAsm

    CodeAsm ohci_write: Bad offset 30

    Joined:
    Dec 22, 2010
    Messages:
    1,480
    Likes Received:
    139
    Still searching for source code, but meanwhile im doing some reverseengineering on some other software on the xbox. IDA pro can be helpfull.
     
  7. AlexRMC92

    AlexRMC92 Site Supporter 2013

    Joined:
    Feb 12, 2013
    Messages:
    336
    Likes Received:
    25
    Yes IDA pro is quite helpful, a lot of references can be seen in plain text. From what i can gather, XOnline.xbe uses it own special kerberos client, as well an RC4 encryptor. All data used for machine authentication comes from the EEPROM.

    This weekend ill have some more time to play around with it.
     
  8. weinerschnitzel

    weinerschnitzel Spirited Member

    Joined:
    Sep 23, 2012
    Messages:
    153
    Likes Received:
    12
  9. CodeAsm

    CodeAsm ohci_write: Bad offset 30

    Joined:
    Dec 22, 2010
    Messages:
    1,480
    Likes Received:
    139
    Either we get a look at source code one day or/and reverseengineer parts. I hope to get some times this weekend aswell, but have homework aswell (Jade, Iternship and Pyhthon)
     
  10. kl0wn

    kl0wn <B>Site Supporter 2013</B><BR><B>Site Benefactor</

    Joined:
    Aug 31, 2006
    Messages:
    237
    Likes Received:
    8
    I highly doubt michael steil would be interested hehe
     
  11. Woodlander

    Woodlander Member

    Joined:
    Nov 12, 2013
    Messages:
    6
    Likes Received:
    1
    Hey,

    That would defeat the purpose of trying to develop my own Xbox Live Account (Gamertag).

    I would prefer to find a different route than modifying the default.xbe files from the hard disk drive of the Xbox console.

    EDIT: Also, its no fun playing a game using FAKEID as your login name.

    I also do not want to modify the Xbox console beyond its OEM (original) state.

    EDIT: Its beautiful and valuable as it is in its default state. I personally want to keep it running the way it is without changing it through File Transfer Protocol (FTP) software.

    To me, I believe there is a programmatic way to be able to do this on a seperate environment and either import (via memory card or USB thumb drive) a Live account or connect the console itself to a safe environment that will create it locally on the Xbox console.

    ~Woodlander
     
    Last edited: Nov 13, 2013
  12. AlexRMC92

    AlexRMC92 Site Supporter 2013

    Joined:
    Feb 12, 2013
    Messages:
    336
    Likes Received:
    25
    i'm not really sure what your trying to say, but the chances of a stock xbox being able to use this would be fairly slim. I am very certain that private keys are involved at some point.

    Those videos were actually very helpful, i have a decent lead on cracking the RC4 cipher now.
     
  13. AlexRMC92

    AlexRMC92 Site Supporter 2013

    Joined:
    Feb 12, 2013
    Messages:
    336
    Likes Received:
    25
    Did some more digging today,

    From what i can gather there is a custom defined data model that contains all pre authentication data. For now i will call it "pre_auth_data"

    pre_auth_data contains a lot variables that look like they are not constant, except for the client version (1.0 - 1.6). It definitely gets hashed against a timestamp, which seems pointless as it send the timestamp to the KDC via clear text. I just don't know what all exactly is in this variable. In the end it all gets pushed through an RC4 cipher text and checksumed with HMAC.

    What needs to be figured out is where does the cipher text come from and what data does "pre_auth_data" contain other than the xbox version.

    And now i head back to the cave...



    EDIT: And some more information.

    As previously stated the user name for the machine is it's serial number, but i think it's key is some sort of combination between the hard drive key and online key which both can read from the eeprom. I don't know how they two are combined, but i do know that once they are combed the length on this new combined key is exactly the same as the online key, or at least takes the exact same amount of space in memory. There is a possibility that the new combined key is compressed to fit in the same about of space, but i don't see anything to suggest that as a possibility.

    Back to the cave again...

    My Final Edit For Tonight:

    Did some cross referencing with DXBX sources. What i believe i'm looking for is called MorphKeyByHardDriveKeyEx. I don't know what this method is or really how it works. I can't find any other references to it anywhere so maybe it's part of the XDK? I sure hope not because i wanted to avoid using any prohibited Microsoft code / software.

    Anyways the user password (which seems to be called key) plugs the online key into the MorphKeyByHardDriveKeyEx method, but what that method actually does is unknown.

    i think its time for a beer.


    And Another Edit:

    Should have read this first

    http://technet.microsoft.com/en-us/library/bb742516.aspx

    it answers a lot of questions

    So if the machine password is the Online Key pushed into a MorphKeyByHardDriveKeyEx method then setting the users password to that result should allow preauth to complete. Now i just have to test.
     
    Last edited: Nov 17, 2013
    CodeAsm likes this.
  14. Master13

    Master13 Spirited Member

    Joined:
    Apr 24, 2010
    Messages:
    159
    Likes Received:
    2
    Interesting. Thanks for the update
     
  15. SoullessSentinel

    SoullessSentinel Member

    Joined:
    Jul 29, 2011
    Messages:
    13
    Likes Received:
    0
    I can tell you that MorphByHardDriveKeyEx is not documented anywhere in the official XDK. It is implemented in xcrypt.lib, which is not even included, so they won't help here.

    I can also tell you that it uses the undocumented (in the official XDK) kernel calls to XcHMAC, XcRC4Key and XcRC4Crypt, OpenXDK might have them, I'm not sure, I didn't check.

    There is a key hardcoded in XOnline.lib which is passed to XcHMAC along with the hard drive key.

    MorphByHardDriveKeyEx() should be able to be found in XOnline.lib, statically linked into any XBE that uses Xbox Live in any way.
     
  16. Myria

    Myria Peppy Member

    Joined:
    Aug 21, 2012
    Messages:
    320
    Likes Received:
    6
    Did you notice in the second link that I'm the second person listed, and I replied earlier in the thread? =)

    I've seen the original Xbox's source code. Let's just say I didn't want to get involved with that, but I know that it's real, and it's why there were so many crazy hacked ROMs for the system. They were recompiling the kernel, not merely assembly-patching it.
     
    CodeAsm likes this.
  17. Myria

    Myria Peppy Member

    Joined:
    Aug 21, 2012
    Messages:
    320
    Likes Received:
    6
    I doubt that as well. I still have some contact with him, and he has a full-time programming job now, like me.
     
    CodeAsm likes this.
  18. Woodlander

    Woodlander Member

    Joined:
    Nov 12, 2013
    Messages:
    6
    Likes Received:
    1
    Perhaps a better idea would be to enable a second original Microsoft Xbox to be FTP'ed into for the purposes of creating or enabling an Xbox Live Account. It could then be migrated back to the stock Xbox console for use.

    To me, I believe there is a programmatic way to be able to do this on a seperate environment and either import (via memory card or USB thumb drive) a Liveaccount or connect the console itself to a safe environment that will create it locally on the Xbox console.

    ~Woodlander
     
  19. billcosbymon

    billcosbymon Guru Meditation Error

    Joined:
    Dec 31, 2009
    Messages:
    658
    Likes Received:
    46
    I don't think this will ever work on a stock console.
     
  20. Myria

    Myria Peppy Member

    Joined:
    Aug 21, 2012
    Messages:
    320
    Likes Received:
    6
    I used to have them.
     
    CodeAsm likes this.

Share This Page