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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-36522 — CVE-2026-36522: unauthenticated NaN injection via MAVLink PARAM_SET in ArduPilot ArduPlane (CWE-1287, DoS/integrity) | Kitploit
도구/GitHubGitHub/deepwoodssec/cve-2026-36522
Embedded Systems SecurityIoT SecurityVulnerability AnalysisExploitationFuzzingPenetration Testing
GitHubdeepwoodssec/cve-2026-36522

CVE-2026-36522

CVE-2026-36522: unauthenticated NaN injection via MAVLink PARAM_SET in ArduPilot ArduPlane (CWE-1287, DoS/integrity)

저장소 보기
2개월 전아직 검토되지 않음

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-36522

ArduPilot ArduPlane에서 MAVLink PARAM_SET을 통한 인증되지 않은 NaN 주입

CVECVE-2026-36522
CWECWE-1287 (지정된 입력 유형의 부적절한 검증)
CVSS 3.19.1 치명적 — AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:H
영향ArduPilot ArduPlane 4.0.1 (확인됨)
구성 요소GCS_MAVLINK::handle_param_set() — libraries/GCS_MAVLink/GCS_Param.cpp
공격 경로원격, 인증되지 않은 MAVLink
영향서비스 거부 (SITL) / 무음 비행 매개변수 손상 (하드웨어)
제보자Sebastien Arseneault, Deep Woods Security

요약

handle_param_set()은 인증되지 않은 MAVLink PARAM_SET 메시지로부터 IEEE 754 부동소수점 값을 수신할 때 NaN 또는 무한대 유효성 검사를 수행하지 않습니다. 변형된 값은 유형 또는 값 검사 없이 부동소수점 비교(AP_Math.cpp의 is_equal<float,float>())에 도달합니다.

이는 코드 실행 취약점이 아닙니다. 영향은 서비스 거부 및 무결성 손상입니다.

영향

  • SITL / FP 예외가 활성화된 빌드: NaN이 부동소수점 예외(SIGFPE)를 트리거하고 자동조종 프로세스가 중단됩니다 — 서비스 거부.
  • FP 예외가 비활성화된 프로덕션 하드웨어(STM32/Pixhawk): 변형된 값이 비행에 중요한 매개변수에 조용히 저장되며, 충돌이나 운영자가 볼 수 있는 경고가 발생하지 않습니다. 이것이 더 위험한 경우입니다: 손상된 비행 매개변수가 운영자에게 아무런 표시 없이 제어 수학에 전파됩니다.

검증 결함은 공통 매개변수 핸들러에 있으므로 모든 부동소수점 유형 매개변수가 영향을 받습니다.

개념 증명

ARSPD_FBW_MIN을 대상으로 하는 조용한 NaN(0x7FC00000)을 전달하는 단일 인증되지 않은 PARAM_SET:

root@kitploit:~
python3 poc/CVE-2026-36522.py [host:port]    # 기본값 tcp:127.0.0.1:5760

poc/CVE-2026-36522.py를 참조하십시오.

증거

캡처된 SITL 스택 추적(stacktrace.txt)은 외부 입력이 보호되지 않은 비교에 도달하는 것을 보여줍니다:

root@kitploit:~
#6  is_equal<float, float> (v_1=nan(0x400000), v_2=0) at AP_Math.cpp:35
#7  GCS_MAVLINK::handle_param_set ... at GCS_Param.cpp:299
    packet = {param_value = nan(0x400000), param_id = "ARSPD_FBW_MIN", param_type = 9}

호출 체인(update_receive -> packetReceived -> handle_common_message -> handle_param_set)은 인증되지 않은 네트워크 입력에서 해당 경로에 도달할 수 있음을 확인합니다.

수정 방법

사용하기 전에 수신 값을 검증하십시오:

root@kitploit:~
if (isnan(packet.param_value) || isinf(packet.param_value)) {
    // 거부: 값이 범위를 벗어남
    return;
}

공개 일정

날짜이벤트
2026-02-26MITRE에 CVE 요청 제출
2026-02-26공급업체(ArduPilot)에 통보
2026-06-15CVE-2026-36522 할당; PoC 및 스택 추적 게시

크레딧

Sebastien Arseneault — Deep Woods Security

도구 다운로드