Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

FeedContattoPrivacy© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
sclock — VM polimorfica a 256 slot vincolata all'hardware, MBA non lineare e protettore di binari Apple Secure Enclave per macOS arm64 (Apple Silicon) — CrackMe pubblico e documentazione SDK | Kitploit
Strumenti/GitHubGitHub/planners1490/sclock
Reverse EngineeringCrittografiaCTFAnalisi di BinariAnti-Bot
GitHubplanners1490/sclock

sclock

VM polimorfica a 256 slot vincolata all'hardware, MBA non lineare e protettore di binari Apple Secure Enclave per macOS arm64 (Apple Silicon) — CrackMe pubblico e documentazione SDK

Vedi Repository
141 giorno faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi
Sito web
scLock — Supercluster Lock di relay

scLock (Supercluster Lock)

VM polimorfica a 256 slot vincolata all'hardware, MBA non lineare ($\mathbb{Z}_{2^{64}}$) e protettore binario Apple Secure Enclave per macOS (arm64 Apple Silicon)

Sviluppato da relay (relay // SYSTEMS)

Platform: macOS arm64 Hot-Path Latency: 8.15 µs Ghidra Decompiler: >330s Timeout Commercial SDK: $79 on Gumroad

Ottieni l'SDK Commerciale su Gumroad ($79) · Prova la Public CrackMe Challenge · Landing Page Live · 한국어 안내 (Korean)


Perché scLock?

I binari macOS Mach-O (arm64) standard compilati da C, C++, Rust, Swift o Objective-C espongono grafi di flusso di controllo puliti e costanti in chiaro in Ghidra, IDA Pro e Binary Ninja in pochi secondi. Gli offuscatori software convenzionali si basano su una singola chiave statica o su un dispatcher centrale switch(opcode) in cui il recupero di una chiave rivela l'intero flusso di bytecode.

scLock (Supercluster Lock) combina virtualizzazione polimorfica a 256 slot in fase di compilazione, frammentazione delle chiavi MBA per ogni handler e binding dual-tier all'Apple Silicon Secure Enclave (SEP):

  1. ISA Polimorfica a 256 Slot per Build + 84 Trappole Chaff: Ogni compilazione (sclock compile) sintetizza un set di istruzioni completamente nuovo a 256 voci (172 micro-operazioni attive + 84 gestori chaff che corrompono lo stato) da un seed polimorfico a 64 bit. Non esistono mai due build che condividono la stessa codifica bytecode o la stessa tabella dei gestori.
  2. Frantumazione del Sale MBA con Runtime-Entanglement per Gestore (black_box + vm.anchor): Anche quando un analista calcola le chiavi esterne dello sponge (k0, k1) in modalità Portable, i pacchetti bytecode non possono essere decifrati da tabelle statiche o costanti immediate. I sali grezzi dei gestori (op_secret_salt) sono omessi dalle sezioni dati statiche (sostituiti da ANCHOR_SHARDS one-way Davies-Meyer) e pre-mascherati rispetto all'anchor di integrità del codice. All'interno di ciascuno dei 256 gestori ARM64 compilati (__sc_lut_op_000..255), h_salt e le maschere degli operandi (hm1, hm2, hm3) vengono ricostruiti a runtime combinando parametri affini protetti da std::hint::black_box con il vm.anchor live ([x0, #0xa0]) tramite polinomi MBA non lineari—vanificando il constant folding di LLVM (-C opt-level=3) e la semplificazione di InstCombine.
  3. Mixed Boolean-Arithmetic Non Lineare ($\mathbb{Z}_{2^{64}}$) e Biezioni 2-adiche: Aritmetica, moltiplicazione, costanti e transizioni di control-flow vengono sollevate in identità MBA non lineari di grado 2/3 su $\mathbb{Z}_{2^{64}}$ accoppiate a predicati opachi 2-adici di teoria dei numeri ($7x^2 - 1 \neq y^2 \pmod{2^{64}}$).
  4. Architettura Dual-Tier Apple Secure Enclave (SEP):
    • Modalità Portable Multi-Mac (Predefinita, SCP1): Realizzata per la distribuzione universale macOS agli utenti finali e per il CrackMe pubblico, così che il binario funzioni offline su qualsiasi Mac Apple Silicon (M1 / M2 / M3 / M4). Deriva le chiavi esterne dello sponge (k0, k1) tramite una KDF White-Box Code-Anchor SHA-256 a 1.024 round accoppiata a un Gate Anti-Emulazione / Anti-Hooking Double-ECDH P-256 Commutativo SEP Live ($d_{\text{SEP}} \cdot Q_P \stackrel{?}{=} d_P \cdot Q_{\text{SEP}}$ eseguito sulla Secure Enclave per avvelenare l'esecuzione sotto emulatori non-SEP o hook API). Poiché l'esecuzione offline su tutti i Mac richiede una derivazione deterministica delle chiavi, la difesa contro l'estrazione statica in SCP1 è fornita dalla frantumazione del sale MBA con runtime-entanglement per gestore (vm.anchor + black_box) e dal chaining dello sponge dipendente dallo stato su tutti i 256 gestori.
    • Modalità Node-Locked con UID Hardware (--sep-lock / --host-sep-lock): Sigilla la chiave privata P-256 direttamente nell'UID fisico della Secure Enclave del Mac di destinazione (blob rk1/dacl hardware-wrapped kSecAttrTokenIDSecureEnclave). Non esiste alcun materiale di chiave sbloccabile all'interno del binario Mach-O—la derivazione offline della chiave è fisicamente impossibile senza il silicio Secure Enclave del Mac di destinazione.
  5. Entanglement dello Stato Anti-Debug Branchless e Camuffamento Zero-Leak: Invece di rami patchabili if (is_debugged) exit(), scLock mescola il bit P_TRACED del sysctl del kernel e le scansioni BRK (0xD4200000) del prologo ARM64 direttamente nell'accumulatore di stato dello sponge a 256 bit, con pulizia automatica dei simboli e dei percorsi della toolchain (sclock protect-app).

Sfida Pubblica di Reverse-Engineering (CrackMe)

Non fidarti solo della nostra parola—metti alla prova scLock nel tuo disassembler e debugger adesso.

Questo repository include un binario Mach-O arm64 standalone protetto da scLock (v1.0.0, compilato in modalità Portable SCP1 così da funzionare su qualsiasi Mac Apple Silicon):

  • Percorso del Binario: crackme/challenge_protected (oppure scarica scLock-CrackMe-Challenge-macOS-arm64.zip)
  • Architettura: Mach-O 64-bit executable arm64 (Apple Silicon M1 / M2 / M3 / M4)

Eseguilo e Verificalo Tu Stesso

# 1. Clone this repository (or unzip the release archive)
git clone https://github.com/planners1490/sclock.git
cd sclock/crackme

# 2. Clear macOS Gatekeeper quarantine (if downloaded via browser) & make executable
xattr -cr ./challenge_protected
chmod +x ./challenge_protected

# 3. Inspect symbol table & strings (Zero VM/Obfuscator leaks)
nm -gU ./challenge_protected
strings ./challenge_protected | grep -iE "sclock|vm|opcode|mba|chaff" || echo "0 leaks found"

# 4. Execute the protected binary on any Apple Silicon Mac
./challenge_protected            # Runs built-in self-test (seats=20, pin=1234 -> 83300)
./challenge_protected 20 1234    # Pass custom <seats> <unlock_pin>

L'obiettivo della sfida

Apri crackme/challenge_protected in Ghidra, IDA Pro, Binary Ninja o LLDB e prova a:

  1. Recuperare tutti i 256 salt MBA per-handler (h_salt) e decompilare la routine di pricing/verifica virtualizzata senza attivare il timeout del decompilatore di Ghidra (>330s).
  2. Collegare lldb ed eseguire passo-passo il ciclo di dispatch virtualizzato senza corrompere lo stato della sponge intrecciato con P_TRACED.
  3. Trovare il PIN master secondario nascosto a 4 cifre (arg2 != 1234) e le esatte costanti algebriche di mixing a 64 bit all'interno della routine virtualizzata.

Hai trovato un'analisi o un write-up interessante? Pubblicalo in Issue #1 (Official CrackMe Challenge Thread)!


Benchmark empirici

Scarica lo strumento