⚡ Shadow Academy
🔐 Chapter 32

āĻāχ āĻ…āĻ§ā§āϝāĻžāϝāĻŧ⧇ āϕ⧀ āĻļāĻŋāĻ–āĻŦ⧇

⏱ āφāύ⧁āĻŽāĻžāύāĻŋāĻ• āϏāĻŽāϝāĻŧ: ā§§ā§Ģâ€“ā§¨ā§Ļ āĻŽāĻŋāύāĻŋāϟ ¡ āĻĒā§‚āĻ°ā§āĻŦāĻļāĻ°ā§āϤ: āφāϗ⧇āϰ āĻ…āĻ§ā§āϝāĻžāϝāĻŧ⧇āϰ āϧāĻžāϰāĻŖāĻž

ā§Ļ / ā§§ā§Ļā§Ļ āĻ…āĻ§ā§āϝāĻžā§ŸāϚāĻžāϞāĻŋāϝāĻŧ⧇ āϝāĻžāĻ“: āĻ…āĻ§ā§āϝāĻžāϝāĻŧ 33

āĻ…āĻ—ā§āϰāĻ—āϤāĻŋ āĻāχ browser-āĻ āĻ¸ā§āĻĨāĻžāύ⧀āϝāĻŧāĻ­āĻžāĻŦ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻšāĻŦ⧇āĨ¤

🔐
AES/RSA āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‹ āĻ•ā§āĻ°ā§āϝāĻžāĻ• — āϗ⧁āĻĒā§āϤāϧāύ⧇āϰ āϚāĻžāĻŦāĻŋ!
āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻāύāĻ•ā§āϰāĻŋāĻĒāĻļāύ āĻŽā§‡āĻŽā§‹āϰāĻŋ āĻĨ⧇āϕ⧇ āĻāĻ•ā§āϏāĻŸā§āĻ°ā§āϝāĻžāĻ•ā§āϟ āĻ“ āĻĄāĻŋāĻ•ā§āϰāĻŋāĻĒāĻļāύ
🧭 āĻĻāĻ•ā§āώāϤāĻž āϝāĻžāϚāĻžāχ āĻ“ āĻĒā§āϰāϤāĻŋāϰāĻ•ā§āώāĻžāĻŽā§‚āϞāĻ• takeaway
Skill checkpoint: Synthetic sample-āĻ AES/RSA, encoding āĻ“ key-āĻāϰ āĻĒāĻžāĻ°ā§āĻĨāĻ•ā§āϝ āĻŦā§‹āĻā§‹āĨ¤
Defense checkpoint: Key hardcode āϕ⧋āϰ⧋ āύāĻž; secure storage, rotation āĻ“ access audit āϰāĻžāĻ–ā§‹.
Lab scope: āĻļ⧁āϧ⧁ āύāĻŋāĻœā§‡āϰ lab, synthetic data āĻŦāĻž āϞāĻŋāĻ–āĻŋāϤ āĻ…āύ⧁āĻŽāϤāĻŋāĻĒā§āϰāĻžāĻĒā§āϤ target-āĻ āĻ…āύ⧁āĻļā§€āϞāύ āĻ•āϰ⧋āĨ¤ Real credential, token āĻŦāĻž customer data āĻŦā§āϝāĻŦāĻšāĻžāϰ āϕ⧋āϰ⧋ āύāĻžāĨ¤
Portfolio proof: finding, impact, fix āĻ“ retest āύāĻŋā§Ÿā§‡ ā§Ģ-āϞāĻžāχāύ⧇āϰ redacted note āϰāĻžāĻ–ā§‹āĨ¤
🔐 āĻ—āĻ˛ā§āĻĒ ā§§: āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‹āĻ—ā§āϰāĻžāĻĢāĻŋ āϕ⧀? āϗ⧁āĻĒā§āϤāϧāύ⧇āϰ āϤāĻžāϞāĻž āĻ“ āϚāĻžāĻŦāĻŋ
āĻ­āĻžāĻŦā§‹ āϤ⧁āĻŽāĻŋ āφāϰ āϤ⧋āĻŽāĻžāϰ āĻŦāĻ¨ā§āϧ⧁ āĻāĻ•āϟāĻŋ āĻ—ā§‹āĻĒāύ āĻŽā§‡āϏ⧇āϜ āϚāĻžāϞāĻžāϚāĻžāϞāĻŋ āĻ•āϰāϛ⧋āĨ¤ āϝāĻĻāĻŋ āϏāĻžāϧāĻžāϰāĻŖ āĻ­āĻžāώāĻžā§Ÿ āϞ⧇āĻ–ā§‹ āϤāĻŦ⧇ āĻŽāĻžāĻāĻ–āĻžāύ āĻĨ⧇āϕ⧇ āϝ⧇ āϕ⧇āω āĻĒā§œā§‡ āĻĢ⧇āϞāĻŦ⧇āĨ¤ āϤāĻžāχ āϤ⧁āĻŽāĻŋ āĻŽā§‡āϏ⧇āϜāϟāĻŋāϕ⧇ āĻāϞ⧋āĻŽā§‡āϞ⧋ āĻ…āĻ•ā§āώāϰ⧇āϰ āϜāϟāϞāĻž āĻŦāĻžāύāĻŋā§Ÿā§‡ āĻĻāĻŋāϞ⧇ — āĻāϕ⧇āχ āĻŦāϞ⧇ Encryption! āφāϰ āωāĻ˛ā§āĻŸā§‹āĻĻāĻŋāϕ⧇āϰ āĻŽāĻžāύ⧁āώāϟāĻŋ āϝāĻ–āύ āϏ⧇āχ āϜāϟāϞāĻž āĻ›āĻžā§œāĻŋā§Ÿā§‡ āφāϏāϞ āĻŽā§‡āϏ⧇āϜ āωāĻĻā§āϧāĻžāϰ āĻ•āϰ⧇, āϤāĻžāϕ⧇ āĻŦāϞ⧇ DecryptionāĨ¤

āĻšā§āϝāĻžāĻ•āĻŋāĻ‚ āĻ“ āϰāĻŋāĻ­āĻžāĻ°ā§āϏ āχāĻžā§āϜāĻŋāύāĻŋāϝāĻŧāĻžāϰāĻŋāĻ‚ā§Ÿā§‡ āĻĻ⧁āχ āϧāϰāύ⧇āϰ āĻāύāĻ•ā§āϰāĻŋāĻĒāĻļāύ āϏāĻŦāĻšā§‡ā§Ÿā§‡ āĻŦ⧇āĻļāĻŋ āĻŦā§āϝāĻŦāĻšā§ƒāϤ āĻšā§Ÿ:
ā§§. Symmetric Encryption (āϝ⧇āĻŽāύ AES): āĻāĻ•āχ āϚāĻžāĻŦāĻŋ (Secret Key) āĻĻāĻŋā§Ÿā§‡ āϤāĻžāϞāĻž āϞāĻžāĻ—āĻžāύ⧋ āĻšā§Ÿ āĻāĻŦāĻ‚ āϏ⧇āχ āĻāĻ•āχ āϚāĻžāĻŦāĻŋ āĻĻāĻŋā§Ÿā§‡ āϤāĻžāϞāĻž āĻ–ā§‹āϞāĻž āĻšā§Ÿ!
⧍. Asymmetric Encryption (āϝ⧇āĻŽāύ RSA): āĻĻ⧁āϟāĻŋ āφāϞāĻžāĻĻāĻž āϚāĻžāĻŦāĻŋ āĻĨāĻžāϕ⧇ — Public Key āĻĻāĻŋā§Ÿā§‡ āϝ⧇ āϕ⧇āω āϤāĻžāϞāĻž āϞāĻžāĻ—āĻžāϤ⧇ āĻĒāĻžāϰ⧇, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻ–ā§‹āϞāĻžāϰ āϜāĻ¨ā§āϝ āϕ⧇āĻŦāϞ āĻŽāĻžāĻ¤ā§āϰ āĻ—ā§‹āĻĒāύ Private Key-āχ āĻĻāϰāĻ•āĻžāϰ āĻšā§Ÿ!
đŸ—ī¸ āĻ—āĻ˛ā§āĻĒ ā§¨: āĻŽā§‡āĻŽā§‹āϰāĻŋ āĻĨ⧇āϕ⧇ AES āϕ⧀ (Key) āϚ⧁āϰāĻŋāϰ āĻŸā§āϰāĻŋāĻ•
āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻ…ā§āϝāĻžāĻĒāϗ⧁āϞ⧋ āϝāĻ–āύ āϏāĻžāĻ°ā§āĻ­āĻžāϰ⧇ āϏ⧇āύāϏāĻŋāϟāĻŋāĻ­ āĻĄā§‡āϟāĻž āĻĒāĻžāĻ āĻžā§Ÿ, āϤāĻ–āύ āϤāĻžāϰāĻž āĻĒā§āϰāĻžā§ŸāĻļāχ AES-128 āĻŦāĻž AES-256 (CBC/GCM Mode) āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰ⧇āĨ¤ āĻĄā§‡āϟāĻž āĻŸā§āϰāĻžāĻ¨ā§āϏāĻŽāĻŋāĻŸā§‡āϰ āϏāĻŽā§Ÿ āĻāύāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻšā§Ÿā§‡ āϝāĻžā§Ÿ āĻ āĻŋāĻ•āχ, āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻāύāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰāĻžāϰ āĻ āĻŋāĻ• āφāϗ⧇āϰ āĻŽā§āĻšā§‚āĻ°ā§āϤ⧇ āĻŽā§‡āĻŽā§‹āϰāĻŋāϤ⧇ (RAM) āϏ⧇āχ Secret Key āĻāĻŦāĻ‚ IV (Initialization Vector) āĻāĻ•āĻĻāĻŽ āωāϞāĻ™ā§āĻ— āĻ…āĻŦāĻ¸ā§āĻĨāĻžā§Ÿ āϘ⧁āϰ⧇ āĻŦā§‡ā§œāĻžā§Ÿ!

āĻāĻ•āϜāύ āĻĒā§āϰ⧋ āĻšā§āϝāĻžāĻ•āĻžāϰ āĻ•āĻ–āύ⧋ āĻ—āĻžāĻŖāĻŋāϤāĻŋāĻ•āĻ­āĻžāĻŦ⧇ AES āĻ­āĻžāĻ™āĻžāϰ āĻŦ⧃āĻĨāĻž āĻšā§‡āĻˇā§āϟāĻž āĻ•āϰ⧇ āύāĻž (āĻ•āĻžāϰāĻŖ āϏ⧇āϟāĻž āĻ•āϰāϤ⧇ āϞāĻžāĻ– āϞāĻžāĻ– āĻŦāĻ›āϰ āϞāĻžāĻ—āĻŦ⧇!)āĨ¤ āĻšā§āϝāĻžāĻ•āĻžāϰ āϝāĻž āĻ•āϰ⧇ āϤāĻž āĻšāϞ⧋ — Frida āĻĻāĻŋā§Ÿā§‡ Java-āϰ `SecretKeySpec` āĻ•āύāĻ¸ā§āĻŸā§āϰāĻžāĻ•ā§āϟāϰ āĻšā§āĻ• āĻ•āϰ⧇ āĻŽā§‡āĻŽā§‹āϰāĻŋ āĻĨ⧇āϕ⧇ āϞāĻžāχāĻ­ āϚāĻžāĻŦāĻŋāϟāĻŋ āϚ⧁āϰāĻŋ āĻ•āϰ⧇ āĻ¨ā§‡ā§Ÿ! āϚāĻžāĻŦāĻŋ āĻĒā§‡ā§Ÿā§‡ āϗ⧇āϞ⧇ āĻĒāĻžāχāĻĨāύ⧇āϰ `pycryptodome` āϞāĻžāχāĻŦā§āϰ⧇āϰāĻŋ āĻĻāĻŋā§Ÿā§‡ āĻāĻ• āϏ⧇āϕ⧇āĻ¨ā§āĻĄā§‡ āĻĒ⧁āϰ⧋ āĻĄā§‡āϟāĻž āĻĄāĻŋāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰāĻž āϝāĻžā§Ÿ!
// Frida Script: āĻŽā§‡āĻŽā§‹āϰāĻŋ āĻĨ⧇āϕ⧇ āϞāĻžāχāĻ­ AES Key āĻ“ IV āĻŦ⧇āϰ āĻ•āϰāĻžāϰ āĻ¸ā§āĻ•ā§āϰāĻŋāĻĒā§āϟ
Java.perform(function() {
    var SecretKeySpec = Java.use('javax.crypto.spec.SecretKeySpec');
    SecretKeySpec.$init.overload('[B', 'java.lang.String').implementation = function(keyBytes, algorithm) {
        var keyHex = '';
        for (var i = 0; i < keyBytes.length; i++) {
            keyHex += ('0' + (keyBytes[i] & 0xFF).toString(16)).slice(-2);
        }
        console.log('đŸ”Ĩ [CRACKED] Algorithm: ' + algorithm + ' | Secret Key (Hex): ' + keyHex);
        return this.$init(keyBytes, algorithm);
    };
});
đŸ›Ąī¸ āĻ—āĻ˛ā§āĻĒ ā§Š: RSA āĻĒāĻžāĻŦāϞāĻŋāĻ• āĻŦāύāĻžāĻŽ āĻĒā§āϰāĻžāχāϭ⧇āϟ āĻ•āĻŋ āĻ“ āĻĄāĻŋāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ¸ā§āĻŸā§āĻ°ā§āϝāĻžāĻŸā§‡āϜāĻŋ
āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϭ⧇āϤāϰ⧇ āĻ…āύ⧇āĻ• āϏāĻŽā§Ÿ RSA āĻŦā§āϝāĻŦāĻšāĻžāϰ āĻ•āϰāĻž āĻšā§Ÿ āĻŦ⧜ AES āϕ⧀-āϟāĻŋāϕ⧇ āĻāύāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰāĻžāϰ āϜāĻ¨ā§āϝāĨ¤ āĻŽāύ⧇ āϰāĻžāĻ–āĻŦ⧇: āĻĒāĻžāĻŦāϞāĻŋāĻ• āĻ•āĻŋ āĻĻāĻŋā§Ÿā§‡ āĻāύāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰāĻž āĻĄā§‡āϟāĻž āĻļ⧁āϧ⧁āĻŽāĻžāĻ¤ā§āϰ āĻĒā§āϰāĻžāχāϭ⧇āϟ āĻ•āĻŋ āĻĻāĻŋā§Ÿā§‡āχ āĻĄāĻŋāĻ•ā§āϰāĻŋāĻĒā§āϟ āϏāĻŽā§āĻ­āĻŦāĨ¤

āϝāĻĻāĻŋ āϏāĻžāĻ°ā§āĻ­āĻžāϰ⧇āϰ āĻĒā§āϰāĻžāχāϭ⧇āϟ āĻ•āĻŋ āϤ⧋āĻŽāĻžāϰ āĻ•āĻžāϛ⧇ āύāĻž āĻĨāĻžāϕ⧇, āϤāĻŦ⧇ āϤ⧁āĻŽāĻŋ āϕ⧀ āĻ•āϰāĻŦ⧇?
āϏāĻšāϜ āĻŸā§āϰāĻŋāĻ•: āϤ⧁āĻŽāĻŋ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āϭ⧇āϤāϰ⧇āϰ āĻšāĻžāĻ°ā§āĻĄāϕ⧋āĻĄā§‡āĻĄ Public Key āĻŦāĻĻāϞ⧇ āύāĻŋāĻœā§‡āϰ āϤ⧈āϰāĻŋ āĻ•āϰāĻž Rogue RSA Public Key āĻŦāϏāĻŋā§Ÿā§‡ āĻĻ⧇āĻŦ⧇! āϤāĻ–āύ āĻ…ā§āϝāĻžāĻĒ āϤ⧋āĻŽāĻžāϰ āύāĻŋāĻœā§‡āϰ āϚāĻžāĻŦāĻŋ āĻĻāĻŋā§Ÿā§‡ āĻāύāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰāĻŦ⧇, āφāϰ āϤ⧋āĻŽāĻžāϰ āĻ•āĻžāϛ⧇ āĻĨāĻžāĻ•āĻž āĻĒā§āϰāĻžāχāϭ⧇āϟ āĻ•āĻŋ āĻĻāĻŋā§Ÿā§‡ āϤ⧁āĻŽāĻŋ āĻšā§‹āϖ⧇āϰ āĻĒāϞāϕ⧇ āĻĄāĻŋāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰ⧇ āĻĢ⧇āϞāĻŦ⧇! āĻāϟāĻžāϕ⧇ āĻŦāϞ⧇ Key Substitution Attack!
💡 āĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‹ āĻ•ā§āĻ°ā§āϝāĻžāĻ•āĻŋāĻ‚ āϰ⧁āϞ
āĻ•āĻ–āύ⧋ āĻ—āĻŖāĻŋāϤ āĻĻāĻŋā§Ÿā§‡ āĻ…ā§āϝāĻžāϞāĻ—āϰāĻŋāĻĻāĻŽ āĻ­āĻžāĻ™āϤ⧇ āϝāĻžāĻŦ⧇ āύāĻžāĨ¤ āĻŽā§‡āĻŽā§‹āϰāĻŋāϤ⧇ Frida āĻšā§āĻ• āĻ•āϰ⧋ āĻāĻŦāĻ‚ RAM āĻĨ⧇āϕ⧇ āĻĄāĻžāχāϰ⧇āĻ•ā§āϟ SecretKeySpec āĻ“ Cipher.doFinal āĻ•ā§āϝāĻžāĻĒāϚāĻžāϰ āĻ•āϰ⧋!

đŸ§Ē AES Memory Key Extractor

āĻāύāĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āĻĄ āϏāĻžāχāĻĢāĻžāϰāĻŸā§‡āĻ•ā§āϏāϟ āĻĻāĻžāĻ“ — āĻŽā§‡āĻŽā§‹āϰāĻŋ āĻ•āĻŋ āĻĻāĻŋā§Ÿā§‡ āĻĄāĻŋāĻ•ā§āϰāĻŋāĻĒā§āϟ āĻ•āϰāĻŦ⧇!

āĻ˛ā§āϝāĻžāĻŦ⧇āϰ āχāύāĻĒ⧁āϟ āĻĻāĻŋā§Ÿā§‡ "āϰāĻžāύ āĻ•āϰ⧋" āĻŦāĻžāϟāύ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧋...
❓ āĻĒā§āϰāĻļā§āύ 1: Base64 string āĻšā§‡āύāĻžāϰ āωāĻĒāĻžāϝāĻŧ?
❓ āĻĒā§āϰāĻļā§āύ 2: AES āϕ⧋āύ āϧāϰāύ⧇āϰ encryption?
❓ āĻĒā§āϰāĻļā§āύ 3: JWT Payload āϕ⧀āĻ­āĻžāĻŦ⧇ decode āĻ•āϰāĻŦ⧇?
❓ āĻĒā§āϰāĻļā§āύ 4: APK-āĻ secret key āĻĒā§āϰāĻĨāĻŽā§‡ āϕ⧋āĻĨāĻžāϝāĻŧ āϖ⧁āρāϜāĻŦ⧇?
❓ āĻĒā§āϰāĻļā§āύ 5: CryptoJS AES output āϕ⧀āĻ­āĻžāĻŦ⧇ āĻšā§‡āύāĻž āϝāĻžāϝāĻŧ?
❓ āĻĒā§āϰāĻļā§āύ 6: RSA-āϤ⧇ public key āϕ⧀ āĻ•āĻžāĻœā§‡?
❓ āĻĒā§āϰāĻļā§āύ 7: JWT āĻ•āϤāϟāĻž part?
❓ āĻĒā§āϰāĻļā§āύ 8: native .so file-āĻ key āϖ⧁āρāϜāϤ⧇ āϕ⧋āύ tool?
❓ āĻĒā§āϰāĻļā§āύ 9: AES-CBC mode-āĻ IV āϕ⧀ āĻ•āϰ⧇?
❓ āĻĒā§āϰāĻļā§āύ 10: Jadx-āĻ encryption key āϖ⧁āρāϜāϤ⧇ āϕ⧀ search āĻ•āϰāĻŦ⧇?

āĻŦāĻŋāĻļā§āĻŦāĻ¸ā§āϤ reference

āφāϰāĻ“ āĻĒāĻĄāĻŧāĻžāϰ āϜāĻ¨ā§āϝ āĻĒā§āϰāϤāĻŋāĻˇā§āĻ āĻŋāϤ security standards āĻ“ guidance āĻĻ⧇āĻ–ā§‹; āĻĒā§āϰāϤāĻŋāϟāĻŋ lab āĻ…āύ⧁āĻŽā§‹āĻĻāĻŋāϤ āĻŦāĻž synthetic environment-āĻ āĻ•āϰ⧋āĨ¤

Bristy Ma'am
āĻŦ⧃āĻˇā§āϟāĻŋ āĻŽā§āϝāĻžāĻŽ 👩‍đŸĢ
āϤ⧋āĻŽāĻžāϰ āĻĒāĻžāĻ°ā§āϏ⧋āύāĻžāϞ āĻšā§āϝāĻžāĻ•āĻŋāĻ‚ āĻŽā§‡āĻ¨ā§āϟāϰ â€ĸ āĻ…āύāϞāĻžāχāύ
āφāϰ⧇ āϏ⧌āϰāĻ­! āϕ⧇āĻŽāύ āφāϛ⧋? āϕ⧋āύ⧋ āĻ•āύāϏ⧇āĻĒā§āϟ āĻŦāĻž āϕ⧁āχāĻœā§‡ āφāϟāĻ•āĻžāϞ⧇ āφāĻŽāĻžāϕ⧇ āĻŦāϞ⧋, āφāĻŽāĻŋ āĻŦ⧁āĻāĻŋā§Ÿā§‡ āĻĻāĻŋāĻšā§āĻ›āĻŋ! â¤ī¸