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
nimrm — Shell WinRM nativa in Nim con NTLM, Kerberos, trasferimento file, helper in memoria e reporting AD/OPSEC. | Kitploit
Strumenti/GitHubGitHub/blue0x1/nimrm
Generazione di PayloadMovimento LateraleRaccolta InformazioniPost-ExploitPenetration TestingCommand and ControlAutenticazioneRed TeamingStrumento di Accesso Remoto
GitHubblue0x1/nimrm

nimrm

Shell WinRM nativa in Nim con NTLM, Kerberos, trasferimento file, helper in memoria e reporting AD/OPSEC.

51 mese 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
Vedi RepositorySito web

nimrm

Rilascio Download

Client shell WinRM nativo scritto in Nim

Versione 1.2.0 · Autore Chokri Hammedi (blue0x1) · Licenza MIT

NTLM Kerberos PowerShell Trasferimento file Helper in-memory Multi-sessione

Documentazione Libreria WinRM


immagine

Avviso legale

nimrm è pensato per l'amministrazione legittima, i test di sicurezza e la ricerca su sistemi di tua proprietà o per i quali hai esplicita autorizzazione all'accesso. L'autore non è responsabile per usi impropri o danni causati da questo strumento.

Sommario

  • Panoramica
  • Caratteristiche
  • Requisiti
  • Installazione
  • Compilazione
  • Prestazioni
  • Utilizzo
  • Opzioni
  • Comandi interattivi
  • Gestione delle sessioni
  • Esempi
  • Note
  • Licenza

Panoramica

nimrm fornisce una shell WinRM compatta e veloce con pratici helper per autenticazione, esecuzione di comandi, trasferimento e report. È costruito come binario Nim nativo senza dipendenze da pacchetti Nim.

Caratteristiche

Requisiti

Componente

Installazione

Nimble:

root@kitploit:~
nimble install nimrm

Scarica l'ultima release:

root@kitploit:~
curl -L -o nimrm https://github.com/blue0x1/nimrm/releases/latest/download/nimrm
chmod +x nimrm

Binario di release per Windows:

root@kitploit:~
Invoke-WebRequest -Uri https://github.com/blue0x1/nimrm/releases/latest/download/nimrm.exe -OutFile nimrm.exe

Pacchetto Debian:

root@kitploit:~
curl -L -o nimrm_1.2.0_amd64.deb https://github.com/blue0x1/nimrm/releases/latest/download/nimrm_1.2.0_amd64.deb
sudo dpkg -i nimrm_1.2.0_amd64.deb

BlackArch:

root@kitploit:~
sudo pacman -S nimrm

Il PKGBUILD di BlackArch segue l'ultimo commit git upstream, quindi le nuove release raggiungono gli utenti BlackArch al successivo aggiornamento di sistema. Se nimrm è già installato, aggiornalo con:

root@kitploit:~
sudo pacman -Syu nimrm

Compila dal sorgente:

root@kitploit:~
git clone https://github.com/blue0x1/nimrm.git
cd nimrm
make linux

Compilazione

root@kitploit:~
make linux
root@kitploit:~
make ssl
root@kitploit:~
make windows

Compilazione manuale:

root@kitploit:~
nim c -d:release --opt:speed -o:nimrm nimrm.nim

Prestazioni

nimrm è progettato per restare veloce grazie a un binario Nim nativo, runspace WinRM persistente, logica di trasferimento a blocchi e rendering compatto dell'avanzamento.

Utilizzo

Password NTLM:

root@kitploit:~
./nimrm -T 192.168.1.10 -A 'CORP\administrator' -P 'Password123'

NTLM pass-the-hash:

root@kitploit:~
./nimrm -T 192.168.1.10 -A 'CORP\user' -N aad3b435b51404eeaad3b435b51404ee:0123456789abcdef0123456789abcdef

Kerberos:

root@kitploit:~
KRB5CCNAME=FILE:/tmp/user.ccache ./nimrm -k -T dc01.corp.local -Z CORP.LOCAL

Forza la crittografia dei messaggi NTLM su HTTP:

root@kitploit:~
./nimrm -T 192.168.1.10 -A 'CORP\user' -P 'Password123' --seal

Porta personalizzata:

root@kitploit:~
./nimrm -T 192.168.1.10 -A 'CORP\user' -P 'Password123' -p 5985

Comando singolo:

root@kitploit:~
./nimrm -T 192.168.1.10 -A 'CORP\user' -P 'Password123' -c 'whoami'

Salta la verifica del certificato TLS (certificati self-signed):

root@kitploit:~
./nimrm -T 192.168.1.10 -A 'CORP\user' -P 'Password123' --tls --insecure

Opzioni

Comandi interattivi

Gestione delle sessioni

nimrm supporta più sessioni WinRM concorrenti. Puoi passare da un host all'altro e cambiare utente senza uscire dalla shell.

Crea una nuova sessione dall'interno di una esistente:

root@kitploit:~
PS C:\Users\Administrator> session -T 10.0.0.5 -A 'CORP\user2' -P 'Pass123'
PS C:\Users\Administrator> session -T dc02.corp.local -A [email protected] -N aad3b435:0123456789abcdef -n dc02
PS C:\Users\Administrator> session -T dc03.corp.local -k -Z CORP.LOCAL -n dc03

Elenca le sessioni attive:

root@kitploit:~
PS C:\Users\Administrator> sessions

  ID  Name              Target                    User              Auth
  --  ----              ------                    ----              ----
 * 1  session-1         dc01.corp.local:5985      administrator     Kerberos
   2  session-2         10.0.0.5:5985             user2             NTLM
   3  dc02              dc02.corp.local:5985      user              NTLM

Passa da una sessione all'altra:

root@kitploit:~
[session-2] PS C:\Users\user2> use 1
[*] Switched to session: session-1 (dc01.corp.local:5985)
[session-1] PS C:\Users\Administrator> use dc02
[*] Switched to session: dc02 (dc02.corp.local:5985)

Chiudi una sessione:

root@kitploit:~
[dc02] PS C:\Users\user> kill 2
[*] Killed session: session-2

Copia file tra sessioni attive:

root@kitploit:~
[session-1] PS C:\Users\user1> rupload C:\Users\user1\tool.exe session-2 C:\Users\user2\Desktop\tool.exe
[*] Download mode: WinRS binary stream
✔  rupload-read  [━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━]  100%  442.0 KB/442.0 KB  done in 0.7s
[*] Upload mode: WinRS stream
✔  rupload-write  [━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━]  100%  442.0 KB/442.0 KB  done in 0.4s
[+] Remote uploaded 452608 bytes from session-1:C:\Users\user1\tool.exe to session-2:C:\Users\user2\Desktop\tool.exe

[session-1] PS C:\Users\user1> rdownload session-2 C:\Users\user2\Desktop\out.txt C:\Users\user1\out.txt
[+] Remote downloaded 1024 bytes from session-2:C:\Users\user2\Desktop\out.txt to session-1:C:\Users\user1\out.txt

rupload e rupload-dir usano la sessione attiva come origine e la sessione indicata come destinazione. rdownload e rdownload-dir usano la sessione indicata come origine e la sessione attiva come destinazione. Questi comandi instradano i byte attraverso la memoria di nimrm, quindi l'host controller non scrive una copia temporanea su disco.

Opzioni di sessione:

Esempi

PowerShell e CMD:

root@kitploit:~
PS> hostname
PS> Get-Process
PS> !ipconfig /all

Trasferimenti:

root@kitploit:~
PS> upload ./tool.exe C:\Temp\tool.exe
PS> download C:\Temp\out.txt ./out.txt
PS> rupload C:\Temp\tool.exe session-2 C:\Temp\tool.exe
PS> rdownload session-2 C:\Temp\out.txt C:\Temp\out.txt
PS> rupload-dir C:\Temp\logs session-2 C:\Temp\logs
PS> rdownload-dir session-2 C:\Temp\loot C:\Temp\loot
PS> upload-dir ./payloads C:\Temp\payloads
PS> download-dir C:\Temp\logs ./logs

Direzione del relay tra sessioni remote:

root@kitploit:~
# Active session -> another session
PS> rupload C:\Temp\payload.exe session-2 C:\Users\Public\payload.exe

# Another session -> active session
PS> rdownload session-2 C:\Users\Public\loot.zip C:\Temp\loot.zip

Completamento automatico:

root@kitploit:~
PS> upl<Tab>
PS> upload ./pay<Tab>

Il prompt interattivo completa i nomi dei comandi e i percorsi del filesystem locale per i comandi con origine locale come upload, upload-dir, invoke-script ed execute-assembly.

Helper in-memory:

root@kitploit:~
PS> invoke-script ./AdminTools.ps1
PS> execute-assembly ./tool.exe arg1 arg2

Report:

root@kitploit:~
PS> ad-info
PS> opsec-check

Note

  • execute-assembly supporta solo assembly .NET gestiti.
  • invoke-script importa nel runspace remoto corrente.
  • rupload, rdownload, rupload-dir e rdownload-dir non scrivono file temporanei sull'host controller, ma i byte passano comunque attraverso la memoria del controller e usano due passaggi di trasferimento WinRM.
  • ad-info e opsec-check sono comandi di report in sola lettura.
  • Alcuni dati di report richiedono privilegi remoti sufficienti.

Offrimi un caffè

Licenza

MIT. Vedi LICENSE.

Scarica lo strumento
AreaSupporto
AutenticazionePassword NTLM, hash NTLM, Kerberos tramite KRB5CCNAME
Trasporto WinRMHTTP, HTTPS/TLS, porta personalizzata
ShellPowerShell interattivo, prefisso CMD, modalità comando singolo, completamento automatico di comandi e percorsi locali
TrasferimentiCaricamento/scaricamento file, trasferimento ricorsivo di directory, relay di file e directory tra sessioni remote
In-memoryImportazione di script PowerShell, esecuzione di assembly .NET gestiti
ReportisticaContesto AD/dominio, posture di logging e auditing
AffidabilitàAvvolgimento messaggi Kerberos, gestione reset/retry del trasporto
Requisito
CompilazioneNim >= 1.6.0
Kerberoslibgssapi_krb5.so.2 su Linux o libgssapi_krb5.dylib su macOS
Compilazione TLSOpenSSL e -d:ssl
DestinazioneWinRM raggiungibile sulla porta selezionata
OperazioneImplementazione
CaricamentoScritture Base64 a blocchi con retry adattivo per envelope di grandi dimensioni
ScaricamentoBlocchi Base64 in streaming con monitoraggio dell'avanzamento e percorso rapido per file piccoli
Relay tra sessioni remoteLegge da una sessione WinRM e scrive in un'altra attraverso la memoria del controller senza scrivere il file su disco locale
Trasferimento directoryEnumerazione ricorsiva dei file tramite lo stesso percorso di trasferimento a blocchi
Esecuzione comandiRiutilizza la shell/runspace WinRM attiva invece di riconnettersi a ogni comando
OpzioneDescrizione
-T, --targetIP o hostname di destinazione
-A, --accountNome utente: user, user@domain o DOMAIN\user
-P, --secretPassword NTLM
-p, --portPorta WinRM
-N, --nt-proofHash NT o hash LM:NT
-Z, --krb-zoneOverride del realm Kerberos
-K, --kerb-spnOverride dello SPN Kerberos
-k, --kerbUsa l'autenticazione Kerberos
-c, --commandEsegue un comando ed esce
--tlsUsa HTTPS/TLS
--insecureSalta la verifica del certificato TLS
-h, --helpMostra l'aiuto
ComandoDescrizione
/helpMostra l'aiuto
exit, quitChiudi la shell
!<cmd>Esegui tramite cmd.exe
upload <local> [remote]Carica un file
download <remote> [local]Scarica un file
rupload <remote> <session> [dest]Copia un file remoto dalla sessione attiva a un'altra sessione tramite memoria
rdownload <session> <remote> [dest]Copia un file remoto da un'altra sessione alla sessione attiva tramite memoria
rupload-dir <remote> <session> [dest]Copia una directory remota dalla sessione attiva a un'altra sessione tramite memoria
rdownload-dir <session> <remote> [dest]Copia una directory remota da un'altra sessione alla sessione attiva tramite memoria
upload-dir <local> [remote]Carica una directory
download-dir <remote> [local]Scarica una directory
invoke-script <ps1> [args]Importa PowerShell locale dalla memoria
execute-assembly <exe> [args]Esegui .NET gestito dalla memoria
ad-infoMostra il contesto AD/dominio
opsec-checkMostra la postura di logging e auditing
sessionsElenca tutte le sessioni attive
session <opts>Crea una nuova sessione
use <name|id>Passa a una sessione
kill <name|id>Chiudi e rimuovi una sessione
OpzioneDescrizione
-THost di destinazione
-ANome utente
-PPassword
-NHash NT
-kAutenticazione Kerberos
-ZRealm Kerberos
-KOverride SPN
-pPorta
--tlsUsa HTTPS
-nNome personalizzato della sessione