🇰🇷 한글 설명
OpenC3 COSMOS 5.12.0부터 7.3.0 버전 사이에서 인증된 사용자가 pypi_url 설정을 조작하여 임의의 운영체제 명령을 실행할 수 있는 취약점이 발견되었습니다. 공격자가 쉘 메타문자를 포함한 설정을 입력하면 플러그인 설치 과정에서 해당 명령이 실행되어 서비스 권한으로 시스템 제어가 가능해집니다.
💡 쉬운 설명
로그인한 사용자가 시스템 설정값을 악의적인 명령어로 바꿔치기하여 컴퓨터를 마음대로 조종할 수 있는 보안 약점입니다. 이로 인해 시스템의 중요한 데이터나 비밀번호가 유출될 위험이 있습니다.
🇺🇸 원문 (English)
OpenC3 COSMOS provides the functionality needed to send commands to and receive data from one or more embedded systems. From 5.12.0 until 7.3.0, an authenticated actor can write the pypi_url setting through set_setting at POST /openc3-api/api, then cause OpenC3::PluginModel.install_phase2 in openc3/lib/openc3/models/plugin_model.rb to interpolate the value into a shell command while installing a plugin with Python dependency metadata. Shell metacharacters in the setting are interpreted by the command shell, allowing arbitrary operating-system commands to run as the openc3 service user with access to Redis and bucket credentials. Open-source deployments permit any authenticated user to reach the affected operations, while Enterprise deployments require an administrator. This issue is fixed in version 7.3.0.
📍 영향받는 시스템
OpenC3 COSMOS 5.12.0 ~ 7.3.0
⚔️ 공격 벡터
인증된 사용자가 API를 통해 pypi_url 설정값에 쉘 메타문자를 삽입하여 명령을 실행하는 방식
🛡️ 대응 방법
OpenC3 COSMOS를 최신 버전인 7.3.0 이상으로 업데이트하십시오.
🔧 검증 코드
명령어 실행 결과로 버전 번호 7.3.0이 출력되면 취약점이 해결된 상태입니다.
curl -s http://<target_ip>/openc3-api/api/version | grep -E '7.3.0'