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
ASM-Obfuscator — Offusca l'assembly x86-64 con iniezione di istruzioni, codice spazzatura, offuscamento delle costanti e decrittazione a runtime per ostacolare il reverse engineering e l'anti-analisi. | Kitploit
Strumenti/GitHubGitHub/gmh5225/asm-obfuscator
Strumenti DifensiviReverse EngineeringDebuggerAnalisi di Binari
GitHubgmh5225/asm-obfuscator

ASM-Obfuscator

Offusca l'assembly x86-64 con iniezione di istruzioni, codice spazzatura, offuscamento delle costanti e decrittazione a runtime per ostacolare il reverse engineering e l'anti-analisi.

Vedi Repository
71713 anni 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

Obfuscator ASM

Obfuscatore avanzato per assembly x86-64. Licenza

Descrizione

L'Obfuscator di Codice Assembly è uno strumento potente e versatile progettato per aumentare la sicurezza del tuo codice assembly x86-64. Protegge i tuoi progetti da reverse engineering e analisi impiegando un'ampia gamma di tecniche di offuscamento e misure anti-analisi.

Caratteristiche

  • Iniezione di Istruzioni: Inietta sequenze di byte personalizzate prima di ogni istruzione assembly per confondere i disassemblatori.

  • Randomizzazione: Introduce casualità nella struttura del codice, rendendolo meno prevedibile.

  • Rilevamento Debugger: Rileva la presenza di debugger durante l'esecuzione del codice e impiega misure anti-debug.

  • Tecniche Anti-Analisi: Confonde gli strumenti di analisi dinamica con ramificazioni condizionali e controlli temporali.

  • Decrittazione Dinamica: Crittografa e decritta dinamicamente sezioni di codice in fase di esecuzione, aumentando la complessità.

  • Decompressione Dinamica: Comprime e decompone dinamicamente sezioni di codice, nascondendo la vera natura del codice.

  • Offuscamento delle Costanti: Offusca costanti e valori di dati utilizzando tecniche come XOR e manipolazione dei bit.

  • Rinomina delle Variabili: Rinomina variabili e registri, rendendo il codice meno leggibile.

  • Inserimento di Codice Spazzatura: Inserisce partizioni di codice spazzatura per offuscare ulteriormente il codebase.

Funzionamento

1. Iniezione di Istruzioni

Il cuore del processo di offuscamento consiste nell'iniettare sequenze di byte personalizzate prima di ogni istruzione assembly nel file di codice. Queste sequenze di byte, progettate strategicamente, hanno lo scopo di confondere disassemblatori e analisti. Esaminiamo questo processo in dettaglio:

Istruzione Originale:

4005d2:   55                      push   rbp

In memoria (hex):

0x55

Dopo l'Iniezione:

400665:   eb 01                jmp    400668 <main+0x3>
400667:   b0 55                mov    al,0x55
400669:   eb 01                jmp    40066c <main+0x7>

In memoria (hex):

0xEB, 0x01, 0xB0, 0x55

Ecco una spiegazione della trasformazione:

  • L'istruzione originale PUSH RBP viene assemblata in 0x55. L'obfuscator inserisce i byte 0xEB, 0x01, 0xB0 prima di essa.

  • Il risultato è una sequenza di istruzioni che, una volta disassemblata, può apparire completamente diversa dal codice originale. Questo rende difficile per il reverse engineering comprendere il vero scopo del codice.

2. Randomizzazione

Introduce elementi di casualità nel codice. Comprende tecniche come la permutazione delle istruzioni, lo scambio degli operandi e la sostituzione degli opcode.

3. Rilevamento Debugger

Integra meccanismi per rilevare la presenza di debugger durante l'esecuzione del codice. Esegue controlli in fase di esecuzione per identificare artefatti legati ai debugger e attivare misure anti-analisi.

4. Tecniche Anti-Analisi

Integra diverse misure anti-analisi, come ramificazioni condizionali e controlli temporali. Ad esempio, può inserire salti condizionali e cicli di ritardo per rallentare il processo di analisi.

5. Decrittazione Dinamica

Impiega tecniche di decrittazione dinamica. Crittografa alcune sezioni di codice e le decritta in fase di esecuzione utilizzando una chiave segreta. Questo processo di decrittazione avviene dinamicamente durante l'esecuzione del codice.

6. Decompressione Dinamica

Comprime sezioni specifiche di codice e le decomprime al volo durante l'esecuzione.

7. Offuscamento delle Costanti

Utilizza tecniche come XOR, manipolazione dei bit e operazioni aritmetiche per offuscare le costanti. Ciò garantisce che i valori costanti non siano facilmente riconoscibili.

8. Rinomina delle Variabili

Lo strumento rinomina variabili e registri, rendendo il codice meno leggibile. Il processo prevede la sostituzione dei nomi delle variabili con stringhe generate casualmente o identificatori numerici.

9. Inserimento di Codice Spazzatura

Per offuscare ulteriormente il codice, l'obfuscator inserisce partizioni di codice spazzatura in punti strategici. Questo codice spazzatura consiste in istruzioni irrilevanti che non influiscono sulla logica del programma ma servono a ingombrare il codebase.

Esempio di Inserimento di Codice Spazzatura:

; Codice Originale
mov eax, 1

; Dopo l'Inserimento di Codice Spazzatura
mov ebx, 2
sub ecx, ecx
add edx, edx

In memoria (hex):

0x89, 0xD8, 0x31, 0xC9, 0x01, 0xD2

Il codice spazzatura inserito è progettato per distogliere l'attenzione e far apparire il codice più contorto.

10. Rilevamento Falso UPX

Include anche una funzionalità per rilevare header UPX falsi. Scansiona il codice alla ricerca di segni di manomissione degli header UPX, garantendo l'integrità dell'eseguibile.

Prima della Trasformazione (Codice Originale):

section .text
global _start

_start:
    ; Calculate the sum of the first 10 natural numbers
    mov ecx, 10        ; Initialize loop counter
    mov eax, 0         ; Initialize sum to 0

loop_start:
    add eax, ecx       ; Add current value of ECX to EAX (sum)
    loop loop_start    ; Decrement ECX and loop if not zero

    ; Exit program
    mov eax, 1         ; SYS_exit
    int 0x80           ; Invoke syscall

Rappresentazione Esadecimale (Codice Originale):

31 C9                 xor    ecx,ecx
B8 00 00 00 00        mov    eax,0x0
EB 0E                 jmp    0x1c
01 C8                 add    eax,ecx
E2 FB                 loop   0x11
B8 01 00 00 00        mov    eax,0x1
CD 80                 int    0x80

Dopo la Trasformazione (Codice Offuscato):

section .text
global _start

_start:
    ; Calculate the sum of the first 10 natural numbers
    mov eax, 0x1
    add eax, 0x2
    add eax, 0x3
    add eax, 0x4
    add eax, 0x5
    add eax, 0x6
    add eax, 0x7
    add eax, 0x8
    add eax, 0x9
    add eax, 0xa

    ; Exit program
    mov eax, 0x1
    int 0x80

Rappresentazione Esadecimale (Codice Offuscato):

B8 01 00 00 00        mov    eax,0x1
83 C0 02              add    eax,0x2
83 C0 03              add    eax,0x3
83 C0 04              add    eax,0x4
83 C0 05              add    eax,0x5
83 C0 06              add    eax,0x6
83 C0 07              add    eax,0x7
83 C0 08              add    eax,0x8
83 C0 09              add    eax,0x9
83 C0 0A              add    eax,0xa
B8 01 00 00 00        mov    eax,0x1
CD 80                 int    0x80

Nel codice offuscato, abbiamo reso meno evidente la logica originale del programma aggiungendo istruzioni ADD ridondanti e utilizzando valori esadecimali come operandi immediati.

Licenza

Questo progetto è concesso in licenza sotto la Licenza MIT. Vedere il file LICENSE per i dettagli.

Contributi

I contributi sono benvenuti!.

Supporto

Per problemi, richieste di funzionalità o domande generali, si prega di creare un'issue.

Disclaimer

Questo strumento è destinato a scopi educativi ed etici.

Scarica lo strumento