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
blue-pigeon — Blue Pigeon è uno strumento di esfiltrazione dati e proxy basato su Bluetooth per consentire la comunicazione tra un server di comando e controllo (C2) remoto e un host compromesso. | Kitploit
Strumenti/GitHubGitHub/bluepigeonproject/blue-pigeon
Sicurezza AndroidSicurezza BluetoothEsfiltrazione DatiPenetration TestingSicurezza MobileCommand and ControlRed Teaming
GitHubbluepigeonproject/blue-pigeon

blue-pigeon

Blue Pigeon è uno strumento di esfiltrazione dati e proxy basato su Bluetooth per consentire la comunicazione tra un server di comando e controllo (C2) remoto e un host compromesso.

Vedi Repository
56135 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


Blue Pigeon: strumento di esfiltrazione dati e proxy basato su Bluetooth per Red Teamers

  1. La Motivazione | Nascita dell'Uccello

    ​ Come funziona Blue Pigeon?

    ​ Requisiti Chiave del Piccione

  2. I Componenti | Smontiamo il Pidgey

    ​ 1. Blue Pigeon - L'Applicazione Mobile

    ​ 2. Blue Beak - Hook Personalizzati EdXposed Framework

    ​ 3. Blue Dispatcher - Modulo .NET per l'host compromesso

  3. Configurazione di Blue Pigeon

    ​ Requisiti

    ​ Installazione e Utilizzo

  4. Considerazioni sulla Sicurezza

  5. Licenza e Contributi a Blue Pigeon

Blue Pigeon: strumento di esfiltrazione dati e proxy basato su Bluetooth per Red Teamers

Blue Pigeon è uno strumento di esfiltrazione dati e proxy basato su Bluetooth per abilitare la comunicazione tra un server di Comando e Controllo (C2) remoto e un host compromesso.

Ispirato dalla capacità del Piccione Viaggiatore di trasportare messaggi verso la sua dimora, Blue Pigeon imita il comportamento di homing e consegna messaggi/payload tra l'agente (host compromesso) e il suo nido (applicazione mobile e successivamente proxy verso il server C2).

Blue Pigeon è sviluppato come applicazione Android per il Red Teamer da dispiegare nelle vicinanze dell'host compromesso ed è particolarmente utile per operazioni di Red Team in cui le comunicazioni tramite canali tradizionali (es. web, e-mail, DNS) non sono disponibili.

Espandendo la tecnica "Esfiltrazione tramite Protocollo Alternativo" (ID: T1048) sotto la tattica di Esfiltrazione del framework MITRE AT&CK, Blue Pigeon fornisce un modo innovativo di stabilire Comando e Controllo ed eseguire esfiltrazione dati come Azione sull'Obiettivo della Cyber Kill Chain utilizzando la Condivisione File Bluetooth come mezzo di esfiltrazione.

Blue Pigeon è creato da @mahchiahui, @jingloon e @cloudkanghao


(Fonte: https://spectrum.ieee.org/tech-history/silicon-revolution/consider-the-pigeon-a-surprisingly-capable-technology)

La Motivazione | Nascita dell'Uccello

Stabilire Comando e Controllo ed eseguire esfiltrazione dati sono fasi chiave nella Cyber Kill Chain, ma spesso comportano complicazioni e gravi implicazioni se fatte male. In un'operazione Red Team, un tentativo sbagliato potrebbe lasciare tracce permanenti nei log di attività di rete e allertare i meccanismi di rilevamento.

In alcuni dei nostri esercizi di Red Teaming, ci siamo trovati nella necessità di un modo per esfiltrare dati e comunicare con l'host compromesso senza dover passare attraverso i canali tradizionali (es. web, email, DNS).

Con poche soluzioni disponibili per soddisfare questa esigenza, abbiamo esplorato varie idee di esfiltrazione basate su vettori wireless/radio-comms. Di conseguenza, Blue Pigeon è stato creato per espandere il nostro toolkit Red Team.

Come funziona Blue Pigeon?

Blue Pigeon funziona come servizio in primo piano all'interno di un telefono Android. Quando il Red Teamer/Insider Maligno posiziona il telefono in prossimità dell'host compromesso (infettato con il payload Blue Dispatcher), Blue Pigeon può fungere da punto di esfiltrazione e proxy di comando verso un server C2 remoto (a.k.a Blue Coop).


Clicca qui per un video demo di Blue Pigeon in azione

Requisiti Chiave del Piccione

Blue Pigeon è stato progettato con i seguenti requisiti chiave:

1. Furtività

Blue Pigeon deve consentire l'esfiltrazione dei dati eludendo il rilevamento a vari livelli:

  • Eludere il rilevamento del traffico di rete: L'esfiltrazione dei dati dall'host compromesso non può passare attraverso i canali di comunicazione tradizionali, poiché è probabile che vengano registrati e monitorati dai sistemi standard di Endpoint Detection and Response. (E ci sono già molte altre opzioni migliori, perché reinventare la ruota, giusto?)

    • Blue Pigeon comunica tramite Bluetooth, che (pensiamo) è un canale piuttosto oscuro e non ortodosso, ma affidabile.
  • Eludere il rilevamento umano: L'esfiltrazione dei dati deve avvenire senza indicatori visivi sulla macchina della vittima, nel peggiore dei casi, poiché ci si aspetta che la vittima stia ancora utilizzando la macchina compromessa.

    • Blue Pigeon può stabilire comunicazione senza la necessità di accoppiamento Bluetooth, che normalmente attiverebbe un popup per l'autenticazione dell'utente.

2. Invisibilità

Blue Pigeon deve mantenere l'invisibilità, cioè rimanere poco appariscente quando dispiegato sul campo.

  • Laptop ingombranti, Raspberry Pi e kit hacker fai-da-te sono un No-Go assoluto poiché limitano le possibilità e la fattibilità del dispiegamento. Abbiamo bisogno di un piccione piccolo e innocente, non di un pavone alpha maschio!

    • Blue Pigeon si nasconde all'interno di un tipico telefono Android che il Red Teamer/Insider Maligno può portare sul campo. Nessuno sospetta mai un telefono...

    • Nel raro caso in cui il Red Teamer venga contestato per un'ispezione, Blue Pigeon può essere mascherato come un'applicazione innocua per adattarsi al contesto dell'operazione. Nella prova di concetto base, l'applicazione mobile è mascherata come un'app di ottimizzazione della batteria. Sentiti libero di fare un fork del repo e dare a Blue Pigeon un restyling estetico!

  • Blue Pigeon dovrebbe evitare di far rivelare al Red Teamer segni evidenti di un tentativo di esfiltrazione durante il dispiegamento del telefono.

    • Il Red Teamer deve solo avviare l'applicazione e portare il telefono nelle vicinanze della macchina compromessa.

    • Blue Pigeon funziona in background sul telefono e non richiede che lo schermo rimanga acceso.

    • Blue Pigeon consuma automaticamente i messaggi in arrivo e non richiede al Red Teamer di accettare manualmente il popup di richiesta di trasferimento file (in realtà non apparirà nemmeno).

3. Alta Disponibilità

Blue Pigeon deve mantenere la massima disponibilità per (e solo per) l'host compromesso durante il dispiegamento.

  • Blue Pigeon deve essere in grado di rimanere attivo per catturare i messaggi in arrivo senza interventi regolari del Red Teamer.

  • Blue Pigeon deve essere in grado di resistere a richieste malevole/tentativi DoS e mantenere la disponibilità per l'host previsto.

    • Blue Pigeon è in grado di rimanere permanentemente in modalità rilevabile affinché l'host compromesso possa scansionarlo e connettersi.

    • L'autenticazione basata su HMAC e la randomizzazione dei nomi file sono impiegate per mitigare attacchi DoS e di replay. Blue Pigeon accetta le richieste di trasferimento file solo dopo l'autenticazione con una passphrase segreta configurabile.

I Componenti | Smontiamo il Pidgey

Blue Pigeon è progettato come un framework a tre parti composto dai seguenti componenti:


1. Blue Pigeon - L'Applicazione Mobile | Il magico piccolo messaggero blu

Blue Pigeon è l'applicazione mobile Android che funge da proxy intermedio tra l'host compromesso e il server C2 (a.k.a Blue Coop). Blue Pigeon comunica con l'host compromesso (infettato con il payload Blue Dispatcher) tramite la tradizionale condivisione file Bluetooth (usando OBEX). I dati vengono esfiltrati dall'host come oggetti JSON su file di testo. Questo può essere personalizzato modificando la classe BluePigeonListener nel pacchetto com.csg.bluepigeon.pigeon e può essere successivamente inoltrato a un Blue Coop remoto. Alla ricezione, una copia del messaggio verrà mantenuta anche nella directory /sdcard/blue_pigeon/backup.

In questo repo, Blue Pigeon si presenta come un'applicazione di ottimizzazione della batteria dall'aspetto semplice. Tuttavia, può essere riprogettato in altri stili UI. Sentiti libero di personalizzare l'interfaccia di Blue Pigeon per adattarla alle esigenze della tua operazione modificando il pacchetto com.csg.bluepigeon.ui.


Niente da vedere qui... solo un'innocua app di ottimizzazione della batteria!

2. Blue Beak - Hook Personalizzati EdXposed Framework | I nostri uccelli sono intelligenti e selettivi!

Il pacchetto Blue Beak contiene una serie di hook personalizzati per il EdXposed Framework* scritti per bypassare le restrizioni dell'API Bluetooth di Android moderno (Android 9/10):

  1. BlueBeakHook - ispeziona la richiesta di trasferimento file in arrivo e decide se consumarla o meno. Utilizza l'autenticazione tramite una passphrase segreta configurabile per assicurarsi che i messaggi in arrivo provengano da fonti fidate. Non vogliamo che consumi accidentalmente una richiesta malevola di grandi dimensioni (mitigazione attacco DoS per occupazione). Rifiuta anche nomi file già consumati in precedenza (mitigazione attacco DoS per replay). (Vedi Considerazioni sulla Sicurezza)

  2. CooCooHook - bypassa il timeout predefinito della Modalità Rilevabile Bluetooth di Android per assicurarsi che il telefono continui a trasmettere pacchetti di scoperta mentre è dispiegato sul campo. Questo è necessario affinché l'host compromesso possa scansionare e connettersi a Blue Pigeon in qualsiasi momento dell'operazione.

  3. NoPopupHook - bypassa la generazione del popup di Trasferimento File Bluetooth su Android e permette di accettare o rifiutare le richieste tramite codice. Questo serve a evitare che il Red Teamer debba stare costantemente al telefono per accettare i messaggi in arrivo. Sospetto, fratello, sospetto...

  4. BirdIsAliveHook - fornisce un comodo piccolo indicatore visivo accanto all'orologio di sistema per segnalare che tutto è a posto e pronto per il dispiegamento.


L'arte concettuale era azzeccata!

root@kitploit:~
*Perché EdXposed? Beh... abbiamo incontrato 2 problemi principali nella fase di concettualizzazione:

1. A causa di problemi di sicurezza, il moderno Android OS non permette più alle app di accettare o filtrare programmaticamente le richieste di trasferimento file Bluetooth in arrivo. Questo è problematico poiché il modus operandi di Blue Pigeon si basa sulla capacità di ispezionare le richieste in arrivo e accettarle o rifiutarle in tempo reale.
2. Il tempo massimo predefinito del timeout della Modalità Rilevabile Bluetooth di Android è di 3600 secondi (1 ora). Rispettare questo limite significherebbe che il Red Teamer dovrebbe aggiornare manualmente Blue Pigeon frequentemente, il che è piuttosto impraticabile e potrebbe ostacolare lo svolgimento dell'operazione.

Per affrontare efficacemente questi problemi, abbiamo deciso di utilizzare l'EdXposed Framework, che fornisce hooking del Runtime Android (ART), e scrivere i nostri hook personalizzati per bypassare le restrizioni a livello di sistema operativo in modo modulare.

3. Blue Dispatcher - Modulo .NET da iniettare nell'host compromesso | Il fattorino dietro le quinte

Il Blue Dispatcher contiene i moduli .NET per generare, inviare e ricevere payload da e verso Blue Pigeon utilizzando lo stack Bluetooth di Windows. Il modulo permette il trasferimento file senza la necessità di autenticazione di sicurezza Bluetooth tra Blue Pigeon e l'host compromesso, cioè l'accoppiamento dei dispositivi. Questo aiuta a mantenere la furtività (un requisito chiave) poiché non ci saranno popup visivi sulla macchina della vittima, che susciterebbero sospetti.


Impressione artistica dello sviluppatore di un'operazione fallita a causa di sabotaggio visivo.

La maggior parte dei moduli Bluetooth sottostanti utilizzati da Blue Dispatcher proviene dalla nota e molto potente libreria 32feet.

Esempio di Utilizzo

Il Blue Dispatcher offre opzioni che consentono agli utenti di inserire flag per la trasmissione.

FlagDescrizione
--device, -dIl dispositivo mobile a cui inviare
--message, -mIl testo da inviare
root@kitploit:~
C:\Users\user>.\BlueDispatcher.exe

Usage: BlueDispatcher [options]

Options:
  -m|--message        Message to send to server
  -d|--device         Device to send to

C:\Users\user>.\BlueDispatcher.exe -d "Pixel 3 XL" -m "fly pigeon fly"

Nota: Implementa la tua crittografia a livello applicativo in Blue Dispatcher se necessario, poiché i payload vengono trasferiti tramite RFCOMM in chiaro.

Configurazione di Blue Pigeon | Requisiti, installazione e utilizzo

Requisiti

Per distribuire Blue Pigeon per le tue esigenze di esfiltrazione dati, sono necessari:

  1. Un telefono Android 9/10 rootato con EdXposed Framework installato. Per maggiori dettagli sull'installazione di EdXposed Framework, vedi qui.
  2. L'host compromesso deve eseguire Windows 10, avere la capacità Bluetooth ed essere infettato con il payload Blue Dispatcher tramite altri mezzi.
  3. (Opzionale) Un Blue Coop/server web C2 remoto con chiamate API REST standard affinché Blue Pigeon possa inoltrare i dati.

Installazione e Utilizzo

  1. Blue Pigeon richiede un telefono Android rootato + Magisk.

  2. Installa riru-core e riru-edxposed tramite Magisk. Riavvia il dispositivo Android dopo l'installazione dei moduli.

  1. Installa l'apk di EdXposed Manager. Dovresti quindi ottenere la seguente schermata che mostra che l'EdXposed Framework è attivo.

  1. Installa BluePigeon.apk per caricare gli hook Blue Beak in EdXposed Manager. Dovresti quindi vedere il modulo Battery Optimizer nell'elenco dei moduli.

  1. Riavvia il dispositivo e dovresti vedere l'icona di Blue Pigeon accanto all'orologio se tutto è riuscito.

  1. Avvia Blue Pigeon aprendo l'applicazione "Battery Optimizer".

  2. L'endpoint di Blue Coop e la passphrase segreta (utilizzata per l'autenticazione) possono essere configurati facendo clic sui pulsanti nell'angolo in alto a sinistra.

  1. Ora, tutto ciò che il Red Teamer deve fare è portare il telefono nelle vicinanze, tenerlo carico e fare clic sul pulsante di avvio!

Considerazioni sulla Sicurezza

Come strumento offensivo, sarebbe piuttosto imbarazzante se Blue Pigeon fosse carente contro semplici tentativi di altri attaccanti o odiatori di uccelli.

Per cominciare*, Blue Pigeon è progettato con protezione contro questi pochi potenziali attacchi:

1. Prevenzione Richieste Fraudolente

Una limitazione dell'utilizzo della Condivisione File Bluetooth come mezzo di esfiltrazione è la mancanza di trasferimento asincrono. Poiché può avvenire solo 1 processo di trasferimento file alla volta, Blue Pigeon deve fare attenzione a consentire e consumare solo richieste legittime in arrivo.

Se un avversario nelle vicinanze riesce a creare una richiesta fraudolenta e ingannare Blue Pigeon facendogliela accettare, potrebbe potenzialmente indurre un attacco DoS temporaneo contro la configurazione inviando un file fittizio eccessivamente grande. L'attaccante potrebbe persino tentare di compromettere il telefono o il Blue Coop remoto con contenuti malevoli incorporati nel file.

Per mitigare tali potenziali attacchi, i nomi dei file delle richieste in arrivo vengono autenticati utilizzando uno schema di autenticazione HMAC con una passphrase condivisa configurabile.

La procedura di verifica del nome file è suddivisa nei seguenti passaggi:

  1. Il nome file deve corrispondere al formato previsto: es. BP-e2211d9e19f1669d1a09ea4828d3e2bc171a10bce71cafb53a64179f497273ea.txt
  2. La stringa esadecimale di 64 caratteri viene divisa in due parti: providedHash e rand
  3. Verificare HmacSHA512(rand, passphrase) rispetto a providedHash (confrontando le prime 32 cifre esadecimali/16 byte)
  4. La richiesta viene quindi considerata legittima.

La logica di verifica del nome file risiede in com.csg.bluepigeon.util.EncryptionManager e può essere personalizzata di conseguenza.

Nota dello sviluppatore: In realtà, la verifica dell'indirizzo MAC del mittente sarebbe la più ideale, ma abbiamo optato per la verifica del nome file poiché sarebbe difficile determinare in anticipo l'indirizzo MAC Bluetooth della vittima.

2. Prevenzione Attacchi di Replay

Un'altra via di attacco è tramite attacchi di replay. Un avversario nelle vicinanze potrebbe potenzialmente intercettare il traffico di comunicazione e ottenere un nome file precedentemente accettato. Potrebbero quindi tentare di riutilizzare/"replay" il nome file e inviare una richiesta di trasferimento file fraudolenta a Blue Pigeon. Allo stesso modo, un trasferimento file fraudolento sufficientemente grande potrebbe indurre un DoS temporaneo contro la configurazione.

Per mitigare questo problema, i nomi file non potranno essere riutilizzati. Blue Beak si assicurerà che il nome file in arrivo non sia stato consumato in precedenza (interrogando la cartella /sdcard/blue_pigeon/backup).

In questo repo di base, il componente rand del nome file è lungo 32 cifre esadecimali/16 byte, il che fornisce un tasso di collisione di circa 1 su 2^128 (calcolo banale, assumendo una buona casualità).

Le soglie di collisione possono essere regolate personalizzando la struttura del nome file e lo schema di verifica. I codici rilevanti risiedono in com.csg.bluepigeon.util.EncryptionManager.

*Se hai scoperto altre opportunità di uccisione degli uccelli che abbiamo trascurato e/o desideri contribuire ad indurire Blue Pigeon, sentiti libero di creare un issue o una pull request!

Licenza e Contributi a Blue Pigeon

Licenza

GNU General Public License

Hai un'idea per migliorare Blue Pigeon?

Sentiti libero di creare issue e inviare pull request!

Scarica lo strumento