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
Remote-BOF-Runner — Remote BOF Runner è un framework di estensione Havoc per l'esecuzione remota di Beacon Object Files (BOF) utilizzando un loader PIC realizzato con Crystal Palace. | Kitploit
Strumenti/GitHubGitHub/pard0p/remote-bof-runner
Frameworks per Penetration TestingEscalation di PrivilegiFramework di ExploitMovimento LateraleShellcodePost-ExploitCommand and ControlApprendimento e FormazioneRed TeamingSviluppo PayloadBinary Exploitation
102578 mesi faRevisionato da Kitploit
GitHub
pard0p/remote-bof-runner

Remote-BOF-Runner

Remote BOF Runner è un framework di estensione Havoc per l'esecuzione remota di Beacon Object Files (BOF) utilizzando un loader PIC realizzato con Crystal Palace.

Vedi Repository

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

Remote BOF Runner

Un'estensione per Havoc per l'esecuzione remota di Beacon Object Files (BOF) tramite un loader PIC realizzato con Crystal Palace.

Panoramica

Remote BOF Runner consente l'esecuzione sicura di BOF in processi arbitrari sfruttando il loader PIC di Crystal Palace. Questo framework implementa un sofisticato meccanismo di comunicazione inter-processo (IPC) tramite named pipe per inoltrare in modo trasparente l'output del beacon dai processi iniettati di nuovo al server di comando e controllo (C2).

Configurazione e Installazione

Installazione dell'Estensione

Assicurati che l'estensione sia installata nella directory delle estensioni di Havoc:

root@kitploit:~
YOUR_HAVOC_FOLDER + /data/extensions/

Dipendenze

Per compilare il loader PIC, i seguenti strumenti e librerie devono essere installati sul sistema:

  • MinGW-w64: Cross-compilatore per target Windows
  • Make: Strumento di automazione della compilazione
  • OpenJDK 11: Java Development Kit (richiesto per la compilazione di Crystal Palace)
  • Zip: Utilità di compressione

Per istruzioni dettagliate sulla configurazione, consulta la Guida all'installazione di WSL.

Comandi di Installazione

root@kitploit:~
sudo apt-get update
sudo apt-get install mingw-w64
sudo apt-get install make
sudo apt-get install openjdk-11-jdk
sudo apt-get install zip

Architettura

Componenti

1. BOF Injector

Il componente BOF è responsabile di:

  • Creare e sospendere un processo dummy.
  • Iniettare il loader Crystal Palace + il BOF target nel processo dummy.
  • Stabilire un canale IPC (named pipe) per la comunicazione dell'output.
  • Ricevere e aggregare l'output dall'esecuzione remota del BOF.

2. PIC Loader (Crystal Palace)

Il loader PIC è composto da:

  • Crystal Palace Loader: Gestisce l'allocazione della memoria, la gestione della sezione BSS e l'inizializzazione di un contesto di esecuzione sicuro.
  • Remote BOF Payload: Il codice BOF effettivo da eseguire (whoami, ipconfig, cacls, reg-query, etc.).
  • Argument Marshalling: Argomenti serializzati passati attraverso il loader per l'esecuzione remota del BOF.

Flusso di Esecuzione

root@kitploit:~
┌───────────────────────────────────────────────────────────────────┐
│ 1. Beacon Process (Havoc)                                         │
│    ├─ Execute BOF Injector                                        │
│    ├─ Create dummy process (suspended)                            │
│    ├─ Inject PIC Loader + Remote BOF                              │
│    └─ Create IPC named pipe                                       │
└────────────┬──────────────────────────────────────────────────────┘
             │
             ▼
┌───────────────────────────────────────────────────────────────────┐
│ 2. PIC Loader Execution                                           │
│    ├─ Crystal Palace loader                                       │
│    ├─ Performs BSS section allocation                             │
│    ├─ Initializes UI context (for .NET compatibility)             │
│    └─ Hooks beacon functions (BeaconPrintf, BeaconOutput, etc.)   │
└────────────┬──────────────────────────────────────────────────────┘
             │
             ▼
┌───────────────────────────────────────────────────────────────────┐
│ 3. Remote BOF Execution                                           │
│    ├─ Execute target BOF (whoami, ipconfig, etc.)                 │
│    ├─ BOF calls hooked beacon functions                           │
│    ├─ Hooked functions redirect output to IPC pipe                │
│    └─ Output accumulates in beacon process via pipe               │
└────────────┬──────────────────────────────────────────────────────┘
             │
             ▼
┌───────────────────────────────────────────────────────────────────┐
│ 4. Output Collection & Transmission                               │
│    ├─ Beacon waits for remote process termination                 │
│    ├─ Accumulates all output from IPC pipe                        │
│    ├─ Aggregates fragmented messages (8KB buffer)                 │
│    ├─ Filters protocol delimiters (@START@, @END@)                │
│    └─ Transmits consolidated output to Team Server                │
└───────────────────────────────────────────────────────────────────┘

Caratteristiche Principali

1. Isolamento del Processo

  • L'esecuzione del BOF avviene in un processo separato e isolato.
  • Riduce al minimo l'impatto sulla stabilità del processo beacon.
  • Consente l'esecuzione in contesti di processo arbitrari.

2. Inoltro dell'Output IPC

  • Canale di comunicazione basato su named pipe.
  • Reindirizzamento trasparente dell'output dal BOF remoto.
  • Gestione della frammentazione dei messaggi (buffer di accumulo di 8KB).
  • Filtraggio dei delimitatori di protocollo.

3. Esecuzione in Processi .NET

Il caso d'uso principale è l'esecuzione di BOF in processi .NET nativi:

Perché il Caricamento Diretto del CLR nel Beacon è Rischioso: Caricare assembly .NET direttamente nel processo beacon è intrinsecamente insicuro e rilevabile:

  • Il processo beacon (solitamente un binario nativo come cmd.exe o rundll32.exe) normalmente non avvia un CLR.
  • Quando un CLR viene caricato in un processo non .NET, dovrebbe generare immediati allarmi EDR/XDR.

Una Possibile Soluzione: Iniezione in Processi .NET Nativi: Invece di caricare il CLR nel beacon, iniettiamo ed eseguiamo il nostro BOF inline-execute-assembly in un processo che è già nativo .NET:

root@kitploit:~
// ❌ RILEVABILE: Esecuzione diretta nel beacon
beacon.exe (nativo) → carica ClrCreateInstance → carica assembly .NET → ALLARME EDR

// ✅ FURTIVO: Esecuzione in un processo .NET nativo
dotnet.exe (.NET nativo) → inietta BOF → inline-execute-assembly → 
esegui assembly .NET in un contesto CLR già presente → comportamento normale

Questo approccio sfrutta il fatto che eseguire .NET all'interno di un processo .NET è indistinguibile dal normale comportamento dell'applicazione.

4. Integrazione con Crystal Palace

  • Esecuzione di codice indipendente dalla posizione.
  • Risoluzione dinamica delle API tramite look-up di funzioni basate su hash.
  • Nessuna dipendenza dall'Import Address Table.
  • Adatto per scenari di iniezione profonda.

Modalità di Esecuzione

Esecuzione Locale

root@kitploit:~
remote-bof-runner whoami
remote-bof-runner ipconfig
remote-bof-runner cacls C:\Windows\System32

Esecuzione su Host Remoto

root@kitploit:~
remote-bof-runner reg-query DC01 HKLM SYSTEM\CurrentControlSet

Query di Registro

root@kitploit:~
remote-bof-runner reg-query HKLM SYSTEM\CurrentControlSet\Control\Lsa
remote-bof-runner reg-query HKLM SYSTEM\CurrentControlSet\Control\Lsa RunAsPPL

Esecuzione di Assembly .NET

root@kitploit:~
remote-bof-runner execute-assembly --dotnetassembly "/Payloads/Rubeus.exe" --assemblyargs "triage"

Esempio di Output:

execute-assembly

BOF Disponibili

  • whoami - Mostra le informazioni sull'utente e sul gruppo correnti (CS-Situational-Awareness-BOF).
  • ipconfig - Mostra la configurazione delle schede di rete (CS-Situational-Awareness-BOF).
  • cacls - Elenca i permessi dei file (CS-Situational-Awareness-BOF).
  • reg-query - Interroga il Registro di Windows (CS-Situational-Awareness-BOF).
  • execute-assembly - Carica un assembly .NET nel processo reale (https://github.com/VoldeSec/PatchlessInlineExecute-Assembly).
  • bof - Esegue binari BOF personalizzati.

Considerazioni sulla Sicurezza Operativa (OPSEC)

⚠️ Importante: Questo progetto è una Proof-of-Concept e NON dà priorità all'OPSEC per impostazione predefinita.

Modifiche Raccomandate

Sia il BOF Injector che il PIC Loader richiedono un rafforzamento significativo per simulazioni di avversari:

Rafforzamento del BOF Injector

  • Implementare metodi personalizzati di creazione dei processi (non CreateProcessW).
  • Utilizzare tecniche di iniezione alternative oltre alla standard WriteProcessMemory.
  • Offuscare la denominazione delle pipe IPC (randomizzare gli identificatori).

Rafforzamento del PIC Loader

  • Crittografare il protocollo di comunicazione (messaggi delle pipe).
  • Implementare l'evasione delle regole YARA per firme note.
  • Aggiungere un metodo per eludere gli hook di processo (syscall indiretti, metodi di unhooking, etc.).
  • Aggiungere un metodo di crittografia per memorizzare il BOF target + gli argomenti.

Riferimenti

  • Crystal Palace
  • LibIPC - Libreria condivisa di Crystal Palace per la comunicazione inter-processo, basata su Named Pipes.
  • PatchlessInlineExecute-Assembly - BOF InlineExecute-Assembly per caricare assembly .NET in un processo ma con bypass AMSI e ETW senza patch tramite hardware breakpoint.
  • CS-Situational-Awareness-BOF - Comandi di situational awareness implementati tramite Beacon Object Files.

Dichiarazione di non responsabilità

Questo strumento è fornito esclusivamente a scopo educativo e per test di sicurezza autorizzati. L'accesso non autorizzato a sistemi informatici è illegale. Gli utenti sono responsabili di garantire la conformità con tutte le leggi e i regolamenti applicabili.

Scarica lo strumento