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

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

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

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

도구 디렉토리

카테고리

모든 카테고리 보기
Loading categories
CVE-2026-56111 — CVE-2026-56111에 대한 개념 증명 익스플로잇으로, Marlin 펌웨어의 M421 G-코드 핸들러에서의 out-of-bounds 쓰기이며, 조작된 G-코드 명령어를 통해 제한된 메모리 손상을 입증합니다. | Kitploit
도구/GitHubGitHub/christbowel/cve-2026-56111
Embedded Systems SecurityVulnerability AnalysisExploitationFuzzingHardware SecurityBinary Exploitation
GitHubchristbowel/cve-2026-56111

CVE-2026-56111

CVE-2026-56111에 대한 개념 증명 익스플로잇으로, Marlin 펌웨어의 M421 G-코드 핸들러에서의 out-of-bounds 쓰기이며, 조작된 G-코드 명령어를 통해 제한된 메모리 손상을 입증합니다.

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

인기

모두 보기 →

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

모든 도구 탐색

도구 컬렉션을 둘러보세요

모든 도구 보기 →
공유

CVE-2026-56111 - Marlin M421 경계 외 쓰기

CVE-2026-56111의 개념 증명으로, MESH_BED_LEVELING으로 빌드된 Marlin Firmware의 M421 G-code 핸들러에서 발생하는 경계 외 쓰기입니다.

  • 보안 권고: https://www.vulncheck.com/advisories/marlin-firmware-out-of-bounds-write-via-m421-g-code-handler
  • 영향 받는 버전: Marlin <= 2.1.2.7, 커밋 1f255d1에서 수정됨
  • 심각도: 높음 (CVSS 8.3)

버그

MBL M421 핸들러는 I/J 인덱스가 음수가 아닌지만 확인합니다. 상한 경계는 전혀 확인하지 않습니다. 그런 다음 set_z()가 z_values[ix][iy] = z를 경계 검사 없이 기록합니다. 그리드를 벗어난 인덱스는 제어된 32비트 부동소수점 값을 z_values 배열 너머 인접한 펌웨어 상태에 기록합니다.

이 쓰기는 제한적이며, 임의적이지 않습니다. 대상은 z_values + (ix*GRID_Y + iy)*4 바이트이며, 인덱스는 int8_t(최대 127)로 제한되므로, 접근 가능한 범위는 z_values에서 약 2KB입니다. 값(Z 부동소수점)과 오프셋(인덱스)을 제어할 수 있습니다. 절대 주소는 제어할 수 없습니다.

이 도구는 G-code 라인만 전송합니다. 경계 외 쓰기는 펌웨어 내부에서 발생합니다. 관찰 가능한 영향은 서비스 거부, 펌웨어 충돌 또는 모션 손상입니다. 정확한 메모리 쓰기는 이 도구가 아닌 보안 권고에 나와 있습니다.

빌드

root@kitploit:~
gcc -O2 -o exp exploit.c

사용

채널을 선택하십시오:

  • --serial <dev>: USB 사용 시, 예: /dev/ttyUSB0 또는 /dev/ttyACM0 (필요 시 --baud N 추가; 많은 보드에서 250000 사용)
  • --tcp <host:port>: 텔넷/네트워크 G-code를 노출하는 프린터용, 예: 192.168.1.50:23

쓰기 모드

선택한 인덱스와 값으로 M421을 전송하십시오:

root@kitploit:~
./exp --serial /dev/ttyUSB0 write -i 3 -j 0 -z 99.0
./exp --tcp 192.168.1.50:23  write -i 5 -j 0 -z 99.0

기본 3x3 그리드(유효 인덱스 0..2)에서:

  • -i 3 -j 0은 오프셋 36바이트에 기록하며, 이는 z_offset(베드 Z 오프셋)입니다.
  • -i 5 -j 0은 오프셋 60바이트에 기록하며, 이는 파서 객체입니다.

dos 모드

범위를 벗어난 인덱스와 NaN Z 값을 전송합니다. NaN은 모션 계산으로 전파되어 펌웨어를 확실히 충돌시키거나 중단시킵니다:

root@kitploit:~
./exp --serial /dev/ttyUSB0 dos
./exp --tcp 192.168.1.50:23  dos

수정

커밋 1f255d1이 포함된 Marlin 빌드로 업데이트하십시오. 이 커밋은 ABL 및 UBL 핸들러가 이미 수행하는 방식과 동일하게 인덱스를 경계 검사합니다.

면책 조항

연구 및 승인된 테스트 전용입니다. 소유하거나 테스트에 대한 명시적 허가를 받은 장치에서만 사용하십시오. 이러한 명령을 전송하면 프린터가 충돌하거나 인쇄가 중단될 수 있습니다.

도구 다운로드