[단독공격] 분석 — CVE-2021-41617
CVE-2021-41617 allows local privilege escalation on OpenSSH ≤ 8.7 when non‑default AuthorizedKeysCommand/AuthorizedPrincipalsCommand configurations are present; immediate mitigation is to upgrade to OpenSSH 8.8 or later and remove the misconfigured helpers.
📋 요약
- 심각도 high · CVSS 7.0 · EPSS 0.02545 · 악용난이도 hard
🔍 공격 기법
- 전제 조건
- 로컬 계정(권한 낮음) 보유 + sshd_config 파일을 편집하거나 해당 시스템에 대한 재시작 권한이 있어야 함.
AuthorizedKeysCommand혹은AuthorizedPrincipalsCommand가RunAsUser옵션과 함께 비표준적으로 설정돼 있을 경우만 대상이 됨. (다중 소스에서 일관성이 확인됐다)
- 정찰
ssh -V로 OpenSSH 버전 확인 → 6.2‑8.x 구버전인지 판단./etc/ssh/sshd_config에서AuthorizedKeysCommand,AuthorizedPrincipalsCommand,RunAsUser존재 여부 탐색.
- 초기 접근
- 낮은 권한 계정으로 SSH 로그인 성공 → sshd 프로세스가 해당 사용자의 세션을 시작함.
- 실행·권한 획득
- 로그인 시 sshd 가
AuthorizedKeysCommand(또는AuthorizedPrincipalsCommand) 를 실행한다. - 버그로 인해 sshd 의 보조 그룹(supplemental groups)이 초기화되지 않아, 명령이 sshd 프로세스가 가진 모든 그룹 권한을 그대로 물려받음.
- 공격자는 이 명령에 악의적인 스크립트를 삽입(예:
cat /etc/shadow > /tmp/exfil)하면, 해당 보조 그룹이 부여하는 파일·디렉터리 접근 권한으로 root 수준에 가까운 권한을 획득함. - CVSS 벡터와 매핑 → AV:L (로컬), AC:H (특정 설정 필요), PR:L (낮은 권한), UI:N (사용자 상호작용 없음), S:U, C:H/I:H/A:H.
- 로그인 시 sshd 가
- 지속
- 획득한 그룹 권한을 이용해
/etc/sudoers또는 시스템 서비스 파일에 영구적인 루트 백도어를 심음. - 동일
AuthorizedKeysCommand를 악용해 자동화된 키 삽입으로 재침투 가능.
- 획득한 그룹 권한을 이용해
- 영향
- 기밀성·무결성·가용성 전부 손상, 시스템 전체 장악.
악용 가능성: 이 취약점은 AV:L(로컬) 조건이므로 공격자는 이미 시스템에 접근한 상태여야 하며, PR:L(낮은 권한) 요구만 충족하면 됩니다. AC:H(높은 복잡도) 는 AuthorizedKeysCommand 또는 AuthorizedPrincipalsCommand 를 비표준 사용자·그룹으로 실행하도록 구성하고, 해당 명령이 그룹 멤버십을 그대로 상속받도록 하는 정확한 설정이 선행돼야 함을 의미합니다. EPSS가 0.02545 로 매우 낮고 KEV에 등재되지 않은 점은 현재까지 실전에서 악용된 사례가 거의 없으며, 공격 성공 확률이 제한적임을 보여줍니다. 노출되는 공격 표면은 sshd 프로세스와 /etc/ssh/sshd_config 파일, 그리고 위 두 명령에 전달되는 command‑path 및 argument 파라미터이며, 이들만 조작하면 그룹 권한 상승이 가능해집니다. 따라서 공격자는 로컬 계정(예: 제한된 서비스 계정)으로 로그인 후, 설정 파일을 변조하거나 해당 명령을 악의적으로 재작성해 그룹‑기반 특권을 획득해야 합니다. 전제 조건과 복잡도가 높아 hard 등급이 부여되었으며, 실제 위협은 현재 관측된 사례가 적어도 존재하지만, 비표준 설정이 배포된 환경에서는 여전히 주의가 필요합니다.
💥 영향 분석
- 성공 시 공격자는 보조 그룹이 부여하는 모든 파일·디렉터리 접근 권한을 얻어 root와 동등한 권한으로 운영 체제 제어 가능.
- 민감 데이터 탈취, 서비스 중단, 악성 코드 배포 등 전면적인 침해가 발생함.
🔗 관련 취약점·체이닝
- CWE‑665 (Improper Initialization): 보조 그룹 초기화 누락이 직접 원인.
- CWE‑269 (Improper Privilege Management): 권한이 과도하게 상속됨.
- 추정: 이미 로컬에서 코드 실행이 가능한 상황(LPE)과 결합하면, 이 취약점은 즉시 루트 상승 단계로 연결될 수 있음.
- 또한
sudo의 잘못된 설정이나setuid바이너리와 연계하면 권한 상승 체인이 완성되어 전면적인 시스템 장악이 가능함.
🔎 탐지
- 로그 기반:
/var/log/auth.log혹은journalctl -u sshd에서AuthorizedKeysCommand/AuthorizedPrincipalsCommand실행 시uid!=0 && gid list contains privileged GIDs경고 확인. - 프로세스 감시:
ps -eo pid,ppid,user,group,cmd로 sshd 자식 프로세스가 예상 외의 보조 그룹을 가지고 있는지 모니터링. - 파일 무결성:
sshd_config에RunAsUser옵션이 추가·수정될 때 알림 발생. - SELinux/AppArmor: 해당 명령 실행 시 정책 위반 이벤트 감지.
🛡️ 완화 방안
- 패치 적용 – OpenSSH 8.8 이상으로 즉시 업데이트 (우선순위: 이번 주 내 scheduled
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=7.0 · non-KEV · EPSS=0.02545 · exploit=hard · in_scope=None