🇰🇷 한글 설명
Signal K Server의 특정 버전에서 인증되지 않은 원격 공격자가 내비게이션 데이터 소스의 우선순위를 수정할 수 있는 취약점이 발견되었습니다. 공격자는 PUT /signalk/v1/api/sourcePriorities 엔드포인트를 통해 GPS나 AIS와 같은 센서 데이터의 신뢰 순위를 조작할 수 있습니다. 이 변경 사항은 서버 재시작 후에도 유지되어 시스템의 항해 데이터 무결성을 지속적으로 위협할 수 있습니다.
💡 쉬운 설명
배의 항해 정보를 관리하는 서버에 아무나 접속하여 GPS 같은 센서 데이터의 순서를 바꿀 수 있는 문제입니다. 공격자가 가짜 위치 정보를 진짜처럼 믿게 만들어 배의 경로를 방해할 수 있습니다.
🇺🇸 원문 (English)
Signal K Server is a server application that runs on a central hub in a boat. Prior to version 2.24.0-beta.1, the SignalK Server exposes an unauthenticated HTTP endpoint that allows remote attackers to modify navigation data source priorities. This endpoint, accessible via PUT /signalk/v1/api/sourcePriorities, does not enforce authentication or authorization checks and directly assigns user-controlled input to the server configuration. As a result, attackers can influence which GPS, AIS, or other sensor data sources are trusted by the system. The changes are immediately applied and persisted to disk, allowing the manipulation to survive server restarts. This issue has been patched in version 2.24.0-beta.1.
📍 영향받는 시스템
Signal K Server version prior to 2.24.0-beta.1
⚔️ 공격 벡터
인증이 필요 없는 HTTP PUT 요청을 통한 원격 데이터 조작
🛡️ 대응 방법
Signal K Server를 버전 2.24.0-beta.1 이상으로 업데이트하십시오.
🔧 검증 코드
해당 엔드포인트에 접근하여 응답을 확인하거나 설치된 패키지 버전을 체크하여 2.24.0-beta.1 미만인지 확인합니다.
curl -s http://localhost:3000/signalk/v1/api/sourcePriorities | grep -q 'error' && echo 'Endpoint exists' || echo 'Endpoint not found'