ALERT!
Click here to register with a few steps and explore all our cool stuff we have to offer!
Home
Upgrade
Credits
Help
Search
Awards
Achievements
 7498

information on the certificate generation for 0x50

by the1Domo - 08-12-2018 - 10:36 PM
#2
there's also tons of useful information on the internet that will help you guys all figure this out if everyone would just work together instead of attacking each other we would have a better community

my archives was garbage
http://projectgames.club/Xbox/

Archive of Xbox 360 Wiki
https://github.com/Free60Project/wiki


I mean are you guys serious they even give you bootloader code here
https://github.com/Free60Project/wiki/bl...bl_Code.md
https://github.com/Free60Project/wiki/bl...CB_Code.md



stop trying to show each other your penises and show who the bigger idiot is and just work together from what I've been reading none of you guys know anything I've been working in this community for a very long time I'm the one who originally leak the original source from Xbox stealth or as some people call me the Liberator everyone just likes to talk crap to everyone even though all of your original resource and all of the original research was never obtained by any of you you guys just all run around with the same garbage perfecting it


I will give you guys that you guys have done a good job of perfecting garbage you  guys have made it run very well and in very good States I just want to see this community grow to what it used to be before all this Xbox Live stealth fucking garbage I mean seriously you guys are all better than this stop acting like idiots



and those of you return the base careers off of stove Services don't you realize that these are all going to go away in a few years and powerpc isn't even and you said anymore it's not even industry-standard it's dead so you're spending all of this time learning a dead system talking crap to each other International who has the bigger penis when you get you guys should all be learning how to actually do things so in the future you guys can have careers I really like to get a bunch of you together and teach you how to hack real video games on PCs


I really think most of you guys need to Branch out of the Xbox garbage if anyone is actually interested and making real money and actually having something that can last send me a message via p.m. and I'll give you a Discord where you can learn how to make a real hacks for PC games which actually take skill

security initialization in the HV 


Content Unlocked

Code:
// notes on where this is referenced and what is inside

// sub_4D10 in CB, i think this function sets up more than just the security engine soc
SOCSECENG_BLOCK->FaultIsolationMask // sets the IntegrityViolation bit to one in CB
SOCSECENG_BLOCK->FaultIsolation // set to zero in CB

// sub_5348 in CB sets up initial values
// in sub_5348 you can see many relationships to the hypervisor functions that deal with security
// deals with that XeCryptHammingWeight thing i dont understand yet
// here is a little reversing:
void InitializeSecurityEngine() {
    post_output(0x22/*INITIALIZE_SECURITY_ENGINE*/);
    
    PSOCSECENG_BLOCK pSecEng = (PSOCSECENG_BLOCK)0x8000020000024000; // r25
    void *r27 = 0x8000020000060000; // r27 another hardware thing that i dont yet know
    // 0x8000020000060000 seems to be the random number generater
    
    // does some shit with generating some random values, loops and does math
    // im certain var_A0 and var_140 are random values, uses the time base register to generate and some random values
    
    // transform the random values to not be easily predictable
    XeCryptSha(var_140, 0xA0, var_A0, 0x60, 0, 0, var_160, 0x14);
    XeCryptRc4(var_160, var_140, 0xA0);
    
    PQWORD pqwRandomData = (PQWORD)var_140;
    PSECENG_KEYS pWritePathKeys = &pSecEng.WritePathKeys; // r29
    PSECENG_KEYS pReadPathKeys = &pSecEng.ReadPathKeys; // r30
    
    PQWORD pqwWriteKeys = (PQWORD)pWritePathKeys;
    PQWORD pqwReadKeys = (PQWORD)pReadPathKeys;
    
    // set the whitening keys
    for(DWORD X /* r11 */ = 8; X > 0; X--) {
        // set random keys
        QWORD qwRandom = *pqwRandomData;
        *pqwWriteKeys = qwRandom;
        *pqwReadKeys = qwRandom;
        
        // increment values
        pqwWriteKeys++;
        pqwReadKeys++;
        pqwRandomData++;
    }
    
    // set the aes keys, this is WRONG there is something with r27
    for(DWORD X /* r28 */ = 4; X > 0; X--) {
        // set the read path keys, they are decryption keys so no need to schedule with the shits
        pqwReadKeys[0] = pqwRandomData[0];
        pqwReadKeys[1] = pqwRandomData[1];
        
        // generate sbox
        _create_aes_sbox_128bit((PBYTE)qwRandom, r26 + 0x140); // r4 isnt that important its just the rijandael initial schedule array shit
        
        // set write key
        pqwWriteKeys[0] = pqwRandomData[0];
        pqwWriteKeys[1] = pqwRandomData[1];
        
        // increment values
        // 2 qwords equal to 0x10
        qwRandom += 2;
        pqwWriteKeys += 2;
        pqwReadKeys += 2;
    }
    
    // set the hash keys
    // dont need to write this you know whats up

    // does some weird time wait, maybe to try and prevent glitching?
    // the time wait is dependant on the random values
}

if you like my posts and want to see more please plus rep
Reply

Messages In This Thread
RE: information on the certificate generation for 0x50 - by the1Domo - 08-12-2018 - 10:51 PM
RE: information on the certificate generation for 0x50 - by Kakashi - 08-21-2018 - 12:18 AM

Users browsing: 3 Guest(s)