🇰🇷 한글 설명
InvenTree 1.4.0 미만 버전에서 발생하며, 특정 API 엔드포인트가 관리자 권한을 제대로 검증하지 않는 취약점입니다. 인증된 일반 사용자(예: 창고 담당자)가 관리자 권한 없이도 등록된 모든 기기를 재시작할 수 있습니다. 이로 인해 기기의 상태가 초기화되거나 진행 중인 작업이 중단될 수 있습니다.
💡 쉬운 설명
로그인 권한만 있는 일반 사용자가 관리자처럼 기기를 마음대로 껐다 켤 수 있는 문제입니다. 이로 인해 기기가 작동을 멈추거나 작업 중이던 내용이 사라질 수 있습니다.
🇺🇸 원문 (English)
InvenTree is an Open Source Inventory Management System. Prior to 1.4.0, the POST /api/machine/{pk}/restart/ endpoint in src/backend/InvenTree/machine/api.py uses IsAuthenticatedOrReadScope without requiring the ADMIN role used by other machine management operations. Any authenticated user who lacks the ADMIN role, including a warehouse user with only the STOCK role, can cause MachineRestart to invoke registry.restart_machine() for any registered machine, resetting its status and interrupting active printing, scanning, or other machine operations. This issue is fixed in version 1.4.0.
📍 영향받는 시스템
InvenTree 1.4.0 미만 모든 버전
⚔️ 공격 벡터
인증된 일반 사용자가 POST /api/machine/{pk}/restart/ 엔드포인트로 요청을 전송
🛡️ 대응 방법
InvenTree를 1.4.0 버전 이상으로 업데이트
🔧 검증 코드
출력된 버전이 1.4.0 미만이면 취약한 상태이며, 1.4.0 이상이면 안전합니다.
pip show inventree | grep Version