hacktricks/reversing/reversing-tools
2024-02-10 13:03:23 +00:00
..
blobrunner.md Translated to Italian 2024-02-10 13:03:23 +00:00
README.md Translated to Italian 2024-02-10 13:03:23 +00:00

Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!

Altri modi per supportare HackTricks:

Guida alla decompilazione di Wasm e alla compilazione di Wat

Nel campo di WebAssembly, gli strumenti per la decompilazione e la compilazione sono essenziali per gli sviluppatori. Questa guida introduce alcune risorse online e software per gestire i file Wasm (WebAssembly binario) e Wat (WebAssembly testo).

Strumenti online

Soluzioni software

  • Per una soluzione più robusta, JEB di PNF Software offre funzionalità estese.
  • Il progetto open-source wasmdec è disponibile anche per compiti di decompilazione.

Risorse per la decompilazione di .Net

La decompilazione degli assembly .Net può essere realizzata con strumenti come:

  • ILSpy, che offre anche un plugin per Visual Studio Code, consentendo l'utilizzo multipiattaforma.
  • Per compiti di decompilazione, modifica e ricompilazione, è altamente consigliato dnSpy. Fare clic con il tasto destro su un metodo e scegliere Modify Method consente di apportare modifiche al codice.
  • dotPeek di JetBrains è un'altra alternativa per la decompilazione degli assembly .Net.

Miglioramento del debug e del logging con DNSpy

Logging di DNSpy

Per registrare informazioni su un file utilizzando DNSpy, incorporare il seguente frammento di codice .Net:

%%%cpp using System.IO; path = "C:\inetpub\temp\MyTest2.txt"; File.AppendAllText(path, "Password: " + password + "\n"); %%%

Debugging di DNSpy

Per un debugging efficace con DNSpy, si consiglia una sequenza di passaggi per regolare gli attributi dell'Assembly per il debugging, assicurandosi che le ottimizzazioni che potrebbero ostacolare il debugging siano disabilitate. Questo processo include la modifica delle impostazioni di DebuggableAttribute, la ricompilazione dell'assembly e il salvataggio delle modifiche.

Inoltre, per eseguire il debug di un'applicazione .Net eseguita da IIS, l'esecuzione di iisreset /noforce riavvia IIS. Per collegare DNSpy al processo IIS per il debugging, la guida fornisce istruzioni su come selezionare il processo w3wp.exe all'interno di DNSpy e avviare la sessione di debugging.

Per una visione completa dei moduli caricati durante il debugging, si consiglia di accedere alla finestra Modules in DNSpy, seguita dall'apertura di tutti i moduli e dalla classificazione delle assembly per una navigazione e un debugging più semplici.

Questa guida racchiude l'essenza della decompilazione di WebAssembly e .Net, offrendo un percorso per gli sviluppatori per affrontare queste attività con facilità.

Decompilatore Java

Per decompilare il bytecode Java, questi strumenti possono essere molto utili:

Debugging delle DLL

Utilizzando IDA

  • Rundll32 viene caricato da percorsi specifici per le versioni a 64 bit e a 32 bit.
  • Windbg viene selezionato come debugger con l'opzione di sospendere il caricamento/spegnimento delle librerie abilitata.
  • I parametri di esecuzione includono il percorso della DLL e il nome della funzione. Questa configurazione interrompe l'esecuzione ad ogni caricamento delle DLL.

Utilizzando x64dbg/x32dbg

  • Similmente a IDA, rundll32 viene caricato con modifiche alla riga di comando per specificare la DLL e la funzione.
  • Le impostazioni vengono regolate per interrompere l'esecuzione all'ingresso della DLL, consentendo di impostare un punto di interruzione al punto di ingresso desiderato della DLL.

Immagini

  • I punti di interruzione dell'esecuzione e le configurazioni sono illustrati attraverso screenshot.

ARM & MIPS

  • Per l'emulazione, arm_now è una risorsa utile.

Shellcode

Tecniche di debugging

  • Blobrunner e jmp2it sono strumenti per allocare shellcode in memoria e debuggarli con Ida o x64dbg.
  • Blobrunner versioni
  • jmp2it versione compilata
  • Cutter offre un'emulazione e ispezione del shellcode basata su GUI, evidenziando le differenze nella gestione del shellcode come file rispetto al shellcode diretto.

Deobfuscation e analisi

  • scdbg fornisce informazioni sulle funzioni del shellcode e capacità di deobfuscation. %%%bash scdbg.exe -f shellcode # Informazioni di base scdbg.exe -f shellcode -r # Rapporto di analisi scdbg.exe -f shellcode -i -r # Hooks interattivi scdbg.exe -f shellcode -d # Dump del shellcode decodificato scdbg.exe -f shellcode /findsc # Trova l'offset di inizio scdbg.exe -f shellcode /foff 0x0000004D # Esegui dall'offset %%%

  • CyberChef per disassemblare il shellcode: Ricetta CyberChef

Movfuscator

  • Un obfuscator che sostituisce tutte le istruzioni con mov.
  • Risorse utili includono una spiegazione su YouTube e slide in PDF.
  • demovfuscator potrebbe invertire l'obfuscation di movfuscator, richiedendo dipendenze come libcapstone-dev e libz3-dev, e l'installazione di keystone.

Delphi

  • Per i file binari Delphi, si consiglia l'uso di IDR.

Corsi

Impara l'hacking di AWS da zero a eroe con htARTE (HackTricks AWS Red Team Expert)!

Altri modi per supportare HackTricks: