⚡ Shadow Academy
📱 Chapter 42

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

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

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

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

📱
āĻŽā§‹āĻŦāĻžāχāϞ āĻĢāϰ⧇āĻ¨ā§āϏāĻŋāĻ•ā§āϏ — Digital Evidence!
āϞ⧋āĻ•āĻžāϞ āĻ…ā§āϝāĻžāĻĒ āĻ¸ā§āĻŸā§‹āϰ⧇āϜ āĻāĻ•ā§āϏāĻŸā§āĻ°ā§āϝāĻžāĻ•āĻļāύ, SQLite āĻĄā§‡āϟāĻžāĻŦ⧇āϏ āĻĢāϰ⧇āĻ¨ā§āϏāĻŋāĻ•ā§āϏ āĻ“ SharedPreferences āĻĄāĻŋāϕ⧋āĻĄ
🧭 āĻĻāĻ•ā§āώāϤāĻž āϝāĻžāϚāĻžāχ āĻ“ āĻĒā§āϰāϤāĻŋāϰāĻ•ā§āώāĻžāĻŽā§‚āϞāĻ• takeaway
Skill checkpoint: Mobile database evidence read-only copy-āϤ⧇ āĻŦāĻŋāĻļā§āϞ⧇āώāĻŖ āĻ“ āύāĻĨāĻŋāϭ⧁āĻ•ā§āϤ āĻ•āϰ⧋āĨ¤
Defense checkpoint: Consent, chain of custody āĻ“ verified hash āĻŦāϜāĻžā§Ÿ āϰāĻžāĻ–ā§‹.
Lab scope: āĻļ⧁āϧ⧁ āύāĻŋāĻœā§‡āϰ lab, synthetic data āĻŦāĻž āϞāĻŋāĻ–āĻŋāϤ āĻ…āύ⧁āĻŽāϤāĻŋāĻĒā§āϰāĻžāĻĒā§āϤ target-āĻ āĻ…āύ⧁āĻļā§€āϞāύ āĻ•āϰ⧋āĨ¤ Real credential, token āĻŦāĻž customer data āĻŦā§āϝāĻŦāĻšāĻžāϰ āϕ⧋āϰ⧋ āύāĻžāĨ¤
Portfolio proof: finding, impact, fix āĻ“ retest āύāĻŋā§Ÿā§‡ ā§Ģ-āϞāĻžāχāύ⧇āϰ redacted note āϰāĻžāĻ–ā§‹āĨ¤
đŸ”Ŧ āĻ—āĻ˛ā§āĻĒ ā§§: āĻĄāĻŋāϜāĻŋāϟāĻžāϞ āĻ—ā§‹ā§Ÿā§‡āĻ¨ā§āĻĻāĻžāĻ—āĻŋāϰāĻŋ — āĻĢā§‹āύ āϝāĻž āĻ•āĻŋāϛ⧁ āϞ⧁āĻ•āĻŋā§Ÿā§‡ āϰāĻžāϖ⧇!
āĻ…āύ⧇āϕ⧇ āĻŽāύ⧇ āĻ•āϰ⧇ āĻŽā§‹āĻŦāĻžāχāϞ āĻĨ⧇āϕ⧇ āϕ⧋āύ⧋ āĻŽā§‡āϏ⧇āϜ āĻĄāĻŋāϞāĻŋāϟ āĻ•āϰ⧇ āĻĻāĻŋāϞ⧇ āĻŦāĻž āϕ⧋āύ⧋ āĻ…ā§āϝāĻžāĻĒ āφāύāχāύāĻ¸ā§āϟāϞ āĻ•āϰ⧇ āĻĻāĻŋāϞ⧇ āϏāĻŦ āϤāĻĨā§āϝ āĻŽā§āϛ⧇ āϝāĻžā§ŸāĨ¤ āĻ•āĻŋāĻ¨ā§āϤ⧁ āĻĄāĻŋāϜāĻŋāϟāĻžāϞ āĻĢāϰ⧇āĻ¨ā§āϏāĻŋāĻ•ā§āϏ⧇ āϏāĻ¤ā§āϝ āĻ•āĻ–āύ⧋ āĻŽāϰ⧇ āύāĻž!

āĻ…ā§āϝāĻžāĻ¨ā§āĻĄā§āϰāϝāĻŧ⧇āĻĄ āĻĢā§‹āύ⧇āϰ āϭ⧇āϤāϰ⧇āϰ āĻĒā§āϰāϤāĻŋāϟāĻŋ āĻ…ā§āϝāĻžāĻĒ āϤāĻžāϰ āύāĻŋāϜāĻ¸ā§āĻŦ āϏ⧁āϰāĻ•ā§āώāĻŋāϤ āĻ­āĻ˛ā§āϟ āĻŦāĻž āĻĒā§āϰāĻžāχāϭ⧇āϟ āĻĄāĻŋāϰ⧇āĻ•ā§āϟāϰāĻŋāϤ⧇ (`/data/data/package_name/`) āϏāĻŽāĻ¸ā§āϤ āĻĄā§‡āϟāĻž āϞ⧁āĻ•āĻŋā§Ÿā§‡ āϰāĻžāϖ⧇āĨ¤ āϏ⧇āĻ–āĻžāύ⧇ āĻĨāĻžāϕ⧇ āχāωāϜāĻžāϰāĻĻ⧇āϰ āĻ—ā§‹āĻĒāύ āĻšā§āϝāĻžāϟ, āĻĒāĻžāϏāĻ“ā§ŸāĻžāĻ°ā§āĻĄā§‡āϰ āĻ•ā§āϝāĻžāĻļ, āϕ⧁āĻ•āĻŋ āĻ“ āϞ⧋āϕ⧇āĻļāύ āĻšāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ!
📂 āĻ—āĻ˛ā§āĻĒ ā§¨: SQLite āĻĄā§‡āϟāĻžāĻŦ⧇āϏ āĻ“ SharedPreferences āĻĄāĻŋāϕ⧋āĻĄ
āĻŽā§‹āĻŦāĻžāχāϞ āĻĢāϰ⧇āĻ¨ā§āϏāĻŋāĻ•ā§āϏ⧇ āĻšā§āϝāĻžāĻ•āĻžāϰāϰāĻž āĻĒā§āϰāϧāĻžāύāϤ āϤāĻŋāύāϟāĻŋ āϜāĻžā§ŸāĻ—āĻžā§Ÿ āϤāĻ˛ā§āϞāĻžāĻļāĻŋ āϚāĻžāϞāĻžā§Ÿ:
ā§§. `shared_prefs/` āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ: āϏāĻžāϧāĻžāϰāĻŖ XML āĻĢāĻžāχāϞ āϝ⧇āĻ–āĻžāύ⧇ āχāωāϜāĻžāϰ⧇āϰ API āĻŸā§‹āϕ⧇āύ, āϞāĻ—āχāύ āĻ¸ā§āĻŸā§‡āϟāĻžāϏ āĻ“ āχāωāϜāĻžāϰ āφāχāĻĄāĻŋ āĻĒā§āϞ⧇āχāύāĻŸā§‡āĻ•ā§āϏāϟ āĻšāĻŋāϏ⧇āĻŦ⧇ āϏ⧇āĻ­ āĻĨāĻžāϕ⧇!
⧍. `databases/` āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ: āϏāĻŦ āĻ…ā§āϝāĻžāĻĒ⧇āϰ āĻŽā§‚āϞ āĻšā§ƒāĻĻāĻĒāĻŋāĻŖā§āĻĄ! āĻāϟāĻŋ āϏāĻŽā§āĻĒā§‚āĻ°ā§āĻŖ SQLite āĻĄā§‡āϟāĻžāĻŦ⧇āϏāĨ¤ āĻāĻ–āĻžāύ⧇ āϏāĻ‚āϰāĻ•ā§āώāĻŋāϤ āĻĨāĻžāϕ⧇ āϏāĻŽāĻ¸ā§āϤ āĻŽā§‡āϏ⧇āϜ, āĻ…āĻ°ā§āĻĄāĻžāϰ⧇āϰ āϤāĻžāϞāĻŋāĻ•āĻž āĻāĻŦāĻ‚ āĻŦā§āϰāĻžāωāϜāĻŋāĻ‚ āĻšāĻŋāĻ¸ā§āĻŸā§āϰāĻŋ!
ā§Š. `cache/` āĻĢā§‹āĻ˛ā§āĻĄāĻžāϰ: āχāωāϜāĻžāϰ āϝ⧇ āĻ›āĻŦāĻŋ āĻŦāĻž āĻĄāϕ⧁āĻŽā§‡āĻ¨ā§āϟāϗ⧁āϞ⧋ āĻĻ⧇āϖ⧇āĻ›āĻŋāϞ, āϤāĻžāϰ āφāύ-āĻāύāĻ•ā§āϰāĻŋāĻĒā§āĻŸā§‡āĻĄ āĻŸā§‡āĻŽā§āĻĒā§‹āϰāĻžāϰāĻŋ āĻ•āĻĒāĻŋ!
# ADB āĻĻāĻŋā§Ÿā§‡ āϰ⧁āϟ āĻĄāĻŋāĻ­āĻžāχāϏ⧇āϰ āĻ…ā§āϝāĻžāĻĒ āĻ­āĻ˛ā§āϟ āĻāĻ•ā§āϏāĻŸā§āĻ°ā§āϝāĻžāĻ•ā§āϟ āĻ•āϰāĻž:
adb root
adb shell "tar -czf /sdcard/app_dump.tar.gz /data/data/com.target.app"
adb pull /sdcard/app_dump.tar.gz .

# āĻĒāĻžāχāĻĨāύ āĻĻāĻŋā§Ÿā§‡ āĻĄāĻžāĻŽā§āĻĒ āĻ•āϰāĻž SQLite āĻĄā§‡āϟāĻžāĻŦ⧇āϏ āĻĒ⧜āĻž:
import sqlite3

conn = sqlite3.connect("app_database.db")
cursor = conn.cursor()
cursor.execute("SELECT name, phone, auth_token, secret_note FROM user_profiles")
for row in cursor.fetchall():
    print(f"đŸ•ĩī¸ Profile Found: {row}")
🔍 āĻ—āĻ˛ā§āĻĒ ā§Š: āĻĄāĻŋāϞāĻŋāĻŸā§‡āĻĄ āĻĄā§‡āϟāĻž āϰāĻŋāĻ•āĻ­āĻžāϰāĻŋ āĻ“ WAL āϞāĻ— āϰāĻšāĻ¸ā§āϝ
SQLite āĻĄā§‡āϟāĻžāĻŦ⧇āϏ⧇ āϕ⧋āύ⧋ āϰ⧋ āĻĄāĻŋāϞāĻŋāϟ āĻ•āϰāϞ⧇āĻ“ āĻĄā§‡āϟāĻžāĻŦ⧇āϏ āĻĢāĻžāχāϞāϟāĻŋ āϏāĻžāĻĨ⧇ āϏāĻžāĻĨ⧇ āϏāĻ‚āϕ⧁āϚāĻŋāϤ āĻšā§Ÿ āύāĻžāĨ¤ āϤāĻžāĻ›āĻžā§œāĻž āĻĄā§‡āϟāĻžāĻŦ⧇āϏ⧇āϰ āĻĒāĻžāĻļ⧇ āĻĨāĻžāϕ⧇ `-wal` (Write-Ahead Logging) āĻāĻŦāĻ‚ `-shm` āĻĢāĻžāχāϞāĨ¤ āĻĢāϰ⧇āĻ¨ā§āϏāĻŋāĻ• āϟ⧁āϞāϏ (āϝ⧇āĻŽāύ Autopsy āĻŦāĻž FTK Imager) āĻĻāĻŋā§Ÿā§‡ āϏ⧇āχ WAL āϞāϗ⧇āϰ āĻšā§‡āĻ•ā§āϏ āĻĄāĻžāĻŽā§āĻĒ āĻ¸ā§āĻ•ā§āϝāĻžāύ āĻ•āϰ⧇ āĻ•ā§Ÿā§‡āĻ• āĻŽāĻžāϏ āφāϗ⧇āϰ āĻŽā§āϛ⧇ āĻĢ⧇āϞāĻž āĻšā§āϝāĻžāϟ āĻŦāĻž āĻŸā§āϰāĻžāύāĻœā§āϝāĻžāĻ•āĻļāύ āĻ…āĻŦāĻŋāĻ•āϞ āĻĢāĻŋāϰāĻŋā§Ÿā§‡ āφāύāĻž āϝāĻžā§Ÿ!
💡 āĻŽā§‹āĻŦāĻžāχāϞ āĻĢāϰ⧇āĻ¨ā§āϏāĻŋāĻ•ā§āϏ āĻĒā§āϰ⧋ āϟāĻŋāĻĒ
āϕ⧋āύ⧋ āĻ…ā§āϝāĻžāĻĒ āϰāĻŋāĻ­āĻžāĻ°ā§āϏ āĻ•āϰāĻžāϰ āφāϗ⧇ āϏāĻŦāϏāĻŽā§Ÿ āϤāĻžāϰ `/data/data//shared_prefs/*.xml` āĻšā§‡āĻ• āĻ•āϰāĻŦ⧇āĨ¤ āĻ…āύ⧇āĻ• āϏāĻŽā§Ÿ āĻšāĻžāϜāĻžāϰ āϞāĻžāχāύ⧇āϰ āϕ⧋āĻĄ āύāĻž āϘāĻŋāϰ⧇āχ āϏ⧇āĻ–āĻžāύ⧇ āĻĄāĻžāχāϰ⧇āĻ•ā§āϟ API Key āĻ“ āϞāĻ—āχāύ āϏ⧇āĻļāύ āĻĒāĻžāĻ“ā§ŸāĻž āϝāĻžā§Ÿ!

đŸ§Ē Mobile Forensic DB Inspector

āĻ…ā§āϝāĻžāĻĒ āĻĒāĻžāĻĨ āĻĻāĻžāĻ“ — āϞ⧋āĻ•āĻžāϞ SQLite āĻĄā§‡āϟāĻžāĻŦ⧇āϏ⧇āϰ āĻ—ā§‹āĻĒāύ āϰ⧇āĻ•āĻ°ā§āĻĄāϏ āĻĻ⧇āĻ–ā§‹!

āĻ˛ā§āϝāĻžāĻŦ⧇āϰ āχāύāĻĒ⧁āϟ āĻĻāĻŋā§Ÿā§‡ "āϰāĻžāύ āĻ•āϰ⧋" āĻŦāĻžāϟāύ⧇ āĻ•ā§āϞāĻŋāĻ• āĻ•āϰ⧋...
đŸŽ¯ āĻ…āĻ§ā§āϝāĻžā§Ÿ 42 āĻĻāĻ•ā§āώāϤāĻž āϝāĻžāϚāĻžāχ (ā§ŠāϟāĻŋ āĻĒā§āϰāĻļā§āύ)
āϏāĻ āĻŋāĻ• āωāĻ¤ā§āϤāϰ āĻŦ⧇āϛ⧇ āύāĻžāĻ“; āĻĒā§āϰāϤāĻŋāϟāĻŋ āωāĻ¤ā§āϤāϰ⧇āϰ āĻŦā§āϝāĻžāĻ–ā§āϝāĻž āĻĒā§œā§‹āĨ¤
❓ āĻĒā§āϰāĻļā§āύ 1: Mobile evidence-āĻāϰ chain of custody āϕ⧇āύ?
❓ āĻĒā§āϰāĻļā§āύ 2: Forensic review-āĻ āύāĻŋāϰāĻžāĻĒāĻĻ āĻĒāĻĻā§āϧāϤāĻŋ āϕ⧋āύāϟāĻŋ?
❓ āĻĒā§āϰāĻļā§āύ 3: SQLite WAL āĻĢāĻžāχāϞ āϏāĻžāϧāĻžāϰāĻŖāϤ āϕ⧇āύ āĻĻ⧇āĻ–āĻž āĻšā§Ÿ?

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

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

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