Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
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.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
tscopy — Strumento Python che analizza la $MFT di NTFS per copiare file bloccati durante la risposta agli incidenti, bypassando i blocchi del sistema operativo tramite la lettura di posizioni raw del disco. Supporta la copia ricorsiva, con wildcard e multi-file con caching per prestazioni. | Kitploit
Strumenti/GitHubGitHub/trustedsec/tscopy
Disk ForensicsInformatica ForenseRecupero DatiDigital ForensicsRisposta agli Incidenti
GitHubtrustedsec/tscopy

tscopy

Vedi Repository
103234 anni faRevisionato da Kitploit

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 →

Informazioni

Strumento Python che analizza la $MFT di NTFS per copiare file bloccati durante la risposta agli incidenti, bypassando i blocchi del sistema operativo tramite la lettura di posizioni raw del disco. Supporta la copia ricorsiva, con wildcard e multi-file con caching per prestazioni.

Condividi

TScopy

TScopy Logo

Aggiornato il 2022-03-31

Introduzione a TScopy

È un requisito durante un impegno di Incident Response (IR) avere la capacità di analizzare i file sul filesystem. A volte questi file sono bloccati dal sistema operativo (OS) perché sono in uso, il che è particolarmente frustrante per i log degli eventi e i registry hive. TScopy consente all'utente, che esegue con privilegi di amministratore, di accedere ai file bloccati analizzando la loro posizione raw nel filesystem e copiandoli senza chiedere al sistema operativo.

Esistono altri strumenti che eseguono funzioni simili, come RawCopy, che abbiamo utilizzato ed è la base per questo strumento. Tuttavia, ci sono alcuni svantaggi di RawCopy che ci hanno portato a sviluppare TScopy, tra cui prestazioni, dimensioni e la possibilità di incorporarlo in altri strumenti.

Questo blog ha lo scopo di presentare TScopy ma anche di chiedere assistenza. Come in ogni sviluppo software, più uno strumento viene utilizzato, più casi limite possono essere trovati. Chiediamo alle persone di provare lo strumento e segnalare eventuali bug.

Cos'è TScopy?

TScopy è uno script Python utilizzato per analizzare il file NTFS $MFT per individuare e copiare file specifici. Analizzando la Master File Table (MFT), lo script bypassa i blocchi del sistema operativo sui file. Lo script era originariamente basato sul lavoro di RawCopy. RawCopy è scritto in AutoIT ed è difficile da modificare per i nostri scopi. La decisione di convertire RawCopy in Python è stata presa per la necessità di incorporare questa funzionalità nativamente nel nostro set di strumenti.

TScopy è progettato per essere eseguito come programma autonomo o incluso come modulo Python. L'implementazione Python fa uso degli strumenti python-ntfs disponibili all'indirizzo https://github.com/williballenthin/python-ntfs. TScopy si basa sulla funzionalità di base di python-ntfs per isolare la posizione di ciascun file dal disco raw.

Cosa rende TScopy diverso?

TScopy è scritto in Python e organizzato in classi per renderlo più manutenibile e leggibile di AutoIT. AutoIT può essere segnalato come dannoso da software antivirus o di rilevamento perché alcuni malware hanno sfruttato il suo potenziale.

La differenza principale tra TScopy e RawCopy è la capacità di copiare più file per esecuzione e di mettere in cache la struttura dei file. Come mostrato nell'immagine seguente, TScopy ha opzioni per scaricare un singolo file, più file separati da virgole, il contenuto di una directory, percorsi con caratteri jolly (file o directory singoli) e directory ricorsive.

TScopy memorizza nella cache la posizione di ogni directory e file mentre itera il percorso completo del file di destinazione. Utilizza quindi questa cache per ottimizzare la ricerca di altri file, garantendo che le copie future vengano eseguite molto più velocemente. Questo è un notevole vantaggio rispetto a RawCopy, che itera l'intero percorso per ogni file.

Opzioni di TScopy

root@kitploit:~
.\TScopy_x64.exe -h

usage: 
    TScopy_x64.exe -r -o c:\test -f c:\users\tscopy\ntuser.dat 
        Description: Copies only the ntuser.dat file to the c:\test directory 
    TScopy_x64.exe -o c:\test -f c:\Windows\system32\config 
        Description: Copies all files in the config directory but does not copy the directories under it.  
    TScopy_x64.exe -r -o c:\test -f c:\Windows\system32\config 
        Description: Copies all files and subdirectories in the config directory.  
    TScopy_x64.exe -r -o c:\test -f c:\users\*\ntuser*,c:\Windows\system32\config 
        Description: Uses Wildcards and listings to copy any file beginning with ntuser under users accounts and recursively copies the registry hives.
    

Copy protected files by parsing the MFT. Must be run with Administrator privileges

optional arguments:
  -h, --help            show this help message and exit
  -f FILE, --file FILE  Full path of the file or directory to be copied.
                        Filenames can be grouped in a comma ',' seperated
                        list. Wildcard '*' is accepted.
  -o OUTPUTDIR, --outputdir OUTPUTDIR
                        Directory to copy files too. Copy will keep paths
  -i, --ignore_saved_ref_nums
                        Script stores the Reference numbers and path info to
                        speed up internal run. This option will ignore and not
                        save the stored MFT reference numbers and path
  -r, --recursive       Recursively copies directory. Note this only works with
                        directories.

C'è un'opzione nascosta '--debug', che abilita l'output di debug.

Esempi

root@kitploit:~
TScopy_x64.exe -f c:\windows\system32\config\SYSTEM -o e:\outputdir

Copia il registro SYSTEM in e:\outputdir Il nuovo file si troverà in e:\outputdir\windows\system32\config\SYSTEM

root@kitploit:~
TScopy_x64.exe -f c:\windows\system32\config\SYSTEM -o e:\outputdir -i

Copia il registro SYSTEM in e:\outputdir ma ignora eventuali file cache precedenti e non salva la cache corrente su disco

root@kitploit:~
TScopy_x64.exe -f c:\windows\system32\config\SYSTEM,c:\windows\system32\config\SOFTWARE -o e:\outputdir

Copia i registri SYSTEM e SOFTWARE in e:\outputdir

root@kitploit:~
TScopy_x64.exe -f c:\windows\system32\config\ -o e:\outputdir

Copia il contenuto della directory config in e:\outputdir

root@kitploit:~
TScopy_x64.exe -r -f c:\windows\system32\config\ -o e:\outputdir

Copia ricorsivamente il contenuto della directory config in e:\outputdir

root@kitploit:~
TScopy_x64.exe  -f c:\users\*\ntuser.dat -o e:\outputdir

Copia il file NTUSER.DAT di ogni utente in e:\outputdir

root@kitploit:~
TScopy_x64.exe  -f c:\users\*\ntuser.dat* -o e:\outputdir

Per ogni utente copia tutti i file che iniziano con NTUSER.DAT in e:\outputdi

root@kitploit:~
TScopy_x64.exe  -f c:\users\*\AppData\Roaming\Microsoft\Windows\Recent,c:\windows\system32\config,c:\users\*\AppData\Roaming\Microsoft\Windows\PowerShell\PSReadLine\ConsoleHost_history.txt -o e:\outputdir

Per ogni utente copia tutti i jumplist, i registry hive e i comandi della cronologia di PowerShell in e:\outputdi

Informazioni per la segnalazione di bug

Si prega di segnalare i bug nella sezione issues della pagina GitHub.

Correzioni di bug e miglioramenti

Version 4.0

  • Corretta la copia di file contenenti dati sparsi. Issue #13 (Errore nella copia di c:$extend$usnjrnl$j)
  • I file non vengono più letti in memoria prima della scrittura su disco. Le scritture vengono ora eseguite mediante data run read. Dovrebbe ridurre l'utilizzo della memoria su file di grandi dimensioni.

Version 3.0

  • Aggiunto supporto per Alternative Data Stream. Richiedere il file radice e i flussi ADS vengono copiati
  • Carattere jolly per la lettera di unità. Solo unità fisse. Esempio "*:$MFT" troverà il $MFT per tutte le unità locali
  • Problemi di registrazione. Le copie fallite vengono nuovamente segnalate come fallite.
  • Rimosso il limite di 256 caratteri per il percorso del file.

Version 2.0

  • Issue 1: Modificato sys.exit per sollevare un'eccezione
  • Issue 2: La doppia copia dei file. Nome completo e nome breve.
  • Issue 3: Aggiunta la possibilità di copiare ricorsivamente una directory
  • Issue 4: Aggiunto il supporto per i caratteri jolly nel percorso. Attualmente supporta solo *
  • Issue 5: Rimossa la dimensione MFT hardcoded. La dimensione MFT è determinata dal Boot Sector
  • Issue 6: Convertita la classe TScopy in un singleton. Ciò consente di istanziare la classe una volta e riutilizzare l'oggetto metadati MFT corrente per tutte le copie.
  • Issue 7: Il tipo di attributo ATTRIBUTE_LIST ora viene gestito.
  • Issue 9: Il tipo di attributo ATTRIBUTE_LIST non era gestito per i file. Ciò causava un fallimento silenzioso per file come il registry hive SOFTWARE.
  • Modifiche: Sono stati aggiunti commenti generali al codice
  • Modifiche: I parametri di input sono cambiati. Ridotte le tre opzioni --file, --list e --directory a --file.
  • Modifiche: Ristrutturazione del backend per supportare nuove funzionalità.

TODO:

Scarica lo strumento