🇰🇷 한글 설명
gitlab-shell 1.7.3 이전 버전의 SSH 키 업로드 기능에서 공개 키 입력값이 적절히 검증되지 않아 쉘 메타문자를 포함한 공개 키를 통해 임의의 명령을 실행할 수 있는 취약점입니다. GitLab 5.0-5.4.1 및 6.x-6.2.3 버전이 영향을 받습니다.
💡 쉬운 설명
GitLab에 SSH 공개 키를 등록할 때 악의적인 명령어가 숨겨진 공개 키를 업로드하면 서버가 그 명령어를 실행해버리는 보안 구멍입니다. 원격 사용자가 인증만 되면 서버에서 마음대로 명령을 실행할 수 있게 됩니다.
🇺🇸 원문 (English)
The SSH key upload feature (lib/gitlab_keys.rb) in gitlab-shell before 1.7.3, as used in GitLab 5.0 before 5.4.1 and 6.x before 6.2.3, allows remote authenticated users to execute arbitrary commands via shell metacharacters in the public key.
📍 영향받는 시스템
gitlab-shell < 1.7.3; GitLab 5.0 ~ 5.4.1; GitLab 6.x ~ 6.2.3
⚔️ 공격 벡터
인증된 사용자가 쉘 메타문자(예: ;, |, &&, backtick)를 포함한 공개 키를 SSH 키 업로드 기능에 제출하여 서버에서 임의 명령 실행
🛡️ 대응 방법
gitlab-shell을 1.7.3 이상으로, GitLab을 5.4.1 이상 또는 6.2.3 이상으로 업그레이드
🔧 검증 코드
출력된 버전이 1.7.3 미만이면 취약함. 1.7.3 이상이면 패치됨. 패키지가 없으면 설치되지 않음.
dpkg -l | grep gitlab-shell | head -1 | awk '{print $3}'