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
SlackShell — C2 da PowerShell a Slack | Kitploit
Strumenti/GitHubGitHub/bkup/slackshell
Post-ExploitPenetration TestingCommand and ControlRed TeamingStrumento di Accesso RemotoSviluppo Payload
GitHubbkup/slackshell

SlackShell

C2 da PowerShell a Slack

Vedi Repository
107208 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 →
Condividi

SlackShell

Descrizione e Changelog

v1.0

Questo modulo PowerShell include varie funzioni che utilizzano l'API Slack per creare un canale di comando e controllo. La funzione principale, Start-Shell, si connette a un canale Slack specificato dall'utente e autentica utilizzando un token di autenticazione API fornito per un determinato team e utente Slack. Qualsiasi comando digitato nel canale verrà quindi eseguito, in PowerShell, sull'host.

Il progetto SlackShell richiede PowerShell v3 o superiore a causa dell'uso di Invoke-RestMethod per le chiamate API. Lo sviluppo futuro continuerà a utilizzare i cmdlet e le funzioni PowerShell correnti. Tuttavia, è stata creata una versione per PowerShell v2 in SlackShell-Poshv2.psm1.

v1.1

Ulteriori script PS possono essere importati nella sessione in esecuzione caricandoli prima sul canale Slack. La funzione di importazione scaricherà i file, ospitati per impostazione predefinita su https://slack-files.com, e li importerà in memoria. I file non vengono scritti su disco. Al contrario, la funzione di download può essere utilizzata per salvare una copia locale di qualsiasi file su disco.

I file locali possono essere caricati sul canale Slack tramite l'API utilizzando la funzione di upload.

Se necessario, è possibile avviare un processo PS separato per eseguire un comando che utilizza il cmdlet Invoke-Command integrato.

Funzioni

Start-Shell

Avvia il monitoraggio di un canale Slack per i comandi da eseguire in PowerShell. Si connette al canale Slack ogni $sleep secondi e recupera tutti i nuovi comandi. I comandi verranno eseguiti sull'host in PowerShell.

Send-Message

Invia un messaggio al canale Slack specifico tramite l'API. I messaggi vengono inviati con un'intestazione di testo e il corpo del messaggio come allegato Slack.

Invoke-Job

Avvia un nuovo processo ed esegue un comando in PowerShell sull'host. Utilizza il metodo Start-Job in PowerShell per generare un nuovo processo, attendere il completamento del job e restituire l'output.

Invoke-Command

Esegue un comando in PowerShell sull'host nel contesto corrente del processo in esecuzione e restituisce l'output.

Get-SlackMessage

Restituisce tutti i messaggi in un canale Slack specifico dal periodo più vecchio al presente. I messaggi vengono restituiti in formato JSON secondo le specifiche API.

Test-Connection

Utilizza una chiamata API Slack per verificare se il token API fornito è valido.

Get-FileList

Utilizza una chiamata API Slack per restituire un elenco dei file attualmente ospitati nel canale Slack.

Import-File

Aggiorna l'elenco dei file, quindi scarica il file specificato in memoria, crea un nuovo modulo e lo importa. I comandi specifici di quel modulo possono quindi essere inseriti direttamente nel canale Slack. Il file scaricato non viene scritto su disco. Questa funzione è da considerarsi in Beta mentre sono in corso test aggiuntivi. Alcuni moduli si comportano in modo irregolare

Receive-File

Aggiorna l'elenco dei file e poi scarica il file specificato su disco. È possibile includere un percorso di archiviazione aggiuntivo; per impostazione predefinita viene utilizzata la posizione corrente.

Send-file

Carica un file locale sul canale Slack.

Parametri chiave

Token

Il token API utilizzato per l'autenticazione. Questo token rappresenta un utente specifico su un team Slack specifico. Ulteriori informazioni sono disponibili qui: https://api.slack.com/custom-integrations/legacy-tokens

Channel

L'identificatore del canale che specifica quale canale Slack del team verrà utilizzato. Tutto il testo in questo canale verrà quindi elaborato come comandi sull'host quando Start-Shell viene eseguito. L'ID del canale si trova nell'URL quando si accede alla pagina del canale dal sito Slack basato sul Web.

Esempio: https://slackteam1.slack.com/messages/ABC123456. L'ID del canale è "ABC123456".

Utilizzo

Import-Module ./SlackShell.psm1

Start-Shell -Token "xoxp-175828824580-175707545555-176600001223-826315a84e533c482bb7e20e8312fh45k" -Channel "ABC123456" -Sleep 5

Unisciti allo stesso canale Slack con un utente diverso da quello utilizzato per creare il token. Qualsiasi cosa scritta nel canale come utente diverso verrà eseguita sull'host nello stesso contesto utente locale utilizzato per avviare lo script. In alternativa, "runjob" può essere utilizzato per eseguire comandi in un processo PowerShell appena avviato.

Comandi Shell riservati (nel canale Slack)

exit

Chiude la shell e la connessione.

cd <path>

Cambia la directory nel contesto del processo principale. È possibile utilizzare percorsi relativi (ad es. cd ..)

sleep <int>

Modifica il tempo di sleep.

files

Elenca i file disponibili nel canale Slack associato.

import <filename>

Importa il file specificato. Il file deve essere condiviso con il canale Slack in uso.

download <filename> <path>

Scarica il file specificato su disco e lo salva nella posizione facoltativa del parametro path. Il file deve essere condiviso con il canale Slack in uso.

upload <local filename>

Carica il file locale su Slack e lo condivide con il canale in uso.

runjob <command>

Esegue il comando specificato in un nuovo processo PowerShell.

Ringraziamenti

L'ispirazione per lavorare con l'API Slack in PowerShell è attribuita a Warren Frame. Il suo repository è stato un'ottima risorsa per iniziare: https://github.com/RamblingCookieMonster/PSSlack

Un ringraziamento speciale a @thesubtlety per la conversione a POSHv2 e per i miglioramenti aggiunti.

Scarica lo strumento