🇰🇷 한글 설명
Nuclio는 실시간 이벤트 및 데이터 처리를 위한 서버리스 프레임워크입니다. 1.16.4 버전 이전의 Nuclio 컨트롤러는 cron 트리거를 위한 curl 호출 문자열을 생성할 때 event.headers의 키와 event.body를 적절한 검증 없이 포함하여 Kubernetes CronJob 컨테이너의 인자로 저장합니다.
💡 쉬운 설명
서버리스 시스템이 정해진 시간에 작업을 실행할 때, 공격자가 조작한 데이터를 끼워 넣어 시스템을 마음대로 조종할 수 있는 보안 약점이 발견되었습니다. 이는 잘못된 명령어가 실행되게 만드는 명령 주입 공격으로 이어질 수 있습니다.
🇺🇸 원문 (English)
Nuclio is a "Serverless" framework for Real-Time Events and Data Processing. Prior to version 1.16.4, the Nuclio controller builds a curl invocation string for each cron trigger and stores it as the args of a Kubernetes CronJob container (/bin/sh, -c, <command>). Two fields in the trigger specification flow into this string without adequate sanitization: event.headers keys and event.body. This issue has been patched in version 1.16.4.
📍 영향받는 시스템
Nuclio version prior to 1.16.4
⚔️ 공격 벡터
조작된 event.headers 또는 event.body를 포함한 이벤트를 전송하여 Kubernetes CronJob의 인자에 악성 명령어를 주입
🛡️ 대응 방법
Nuclio를 1.16.4 버전 이상으로 업데이트하십시오.
🔧 검증 코드
출력된 Nuclio의 버전을 확인하여 1.16.4 미만인지 체크합니다.
nuclio-controller --version 2>/dev/null || kubectl get deployments -n nuclio -o json | grep -i 'nuclio'