[방어] 분석 — CVE-2021-41617
CVE-2021-41617 allows privilege escalation on OpenSSH 6.2‑8.x when AuthorizedKeysCommand/AuthorizedPrincipalsCommand are run as a different user; the immediate mitigation is to disable these commands or enforce same‑user execution.
📋 요약
- 심각도 high · CVSS 7.0 · EPSS 0.02545 · 악용난이도 hard
🔍 공격 기법
- sshd가
AuthorizedKeysCommand혹은AuthorizedPrincipalsCommand를 비기본 사용자(User 옵션) 로 실행하도록 설정된 경우, 해당 헬퍼 프로그램이 sshd 프로세스의 보조 그룹(supplemental groups)을 초기화하지 못한다. - 결과적으로 헬퍼는 sshd가 가지고 있던 고권한 그룹 권한을 그대로 물려받아, 공격자가 해당 명령을 조작하면 루트 수준 권한 상승이 가능해진다.
악용 가능성: CVSS 벡터 AV:L/AC:H/PR:L/UI:N은 공격자가 로컬에 접근해야 하며, 비표준 OpenSSH 설정과 보조 그룹 초기화 오류라는 복잡한 전제조건이 필요함을 의미합니다. 권한 상승은 sshd가 AuthorizedKeysCommand 또는 AuthorizedPrincipalsCommand를 다른 사용자로 실행하면서 보조 그룹이 제대로 정리되지 않을 때만 발생할 수 있습니다. PR:L(낮은 권한)과 UI:N(사용자
💥 영향 분석
- 성공 시 공격자는 시스템 전체에 대한 전체 기밀성(C:H), 무결성(I:H), 가용성(A:H) 를 손상시킬 수 있다.
- 영향을 받는 제품군(OpenSSH 6.2‑8.x, Fedora, NetApp ONTAP 계열 등) 전반에 걸쳐 동일한 권한 상승 경로가 존재한다.
🔗 관련 취약점·체이닝
- 동일한
AuthorizedKeysCommand/AuthorizedPrincipalsCommand설정 오류를 이용하는 과거 OpenSSH 특권 상승(CWE‑269)과 결합될 수 있다. - 로컬 권한 상승(LPE) 루틴이나 SUID 바이너리와 연계하면 공격 범위가 확대된다(구체적인 CVE 번호는 확인되지 않음).
🔎 탐지
-
로그 지표
/var/log/auth.log·/var/log/secure:AuthorizedKeysCommand혹은AuthorizedPrincipalsCommand실행 시"Executing AuthorizedKeysCommand"메시지가 기록됨.auditd(type=EXECVE) :uid!=euid또는gid!=egid로 시작되는 execve 이벤트가 발생하면 의심.
-
SIEM 탐지 규칙 예시
-
Syslog 기반
text1source:syslog2message:"AuthorizedKeysCommand" AND NOT message:"user=root"→ 비루트 사용자로 실행되는 경우 알림.
-
Auditd 기반
text1event.type=EXECVE2and execve.uid != execve.euid3and proc.name in (list_of_configured_helper_binaries)→ UID/EUID 불일치가 감지되면 경보.
-
프로세스 모니터링 (예: Osquery)
sql1SELECT pid, uid, gid, supplemental_groups FROM processes2WHERE name = 'sshd' AND supplemental_groups != ''3 AND uid != euid;→ 보조 그룹이 남아 있는 sshd 자식 프로세스 탐지.
-
-
오탐 튜닝
- 정상적인 관리 스크립트가
AuthorizedKeysCommand로 등록된 경우, 해당 경로를 화이트리스트에 추가. uid!=euid만으로는sudo사용 사례와 겹칠 수 있으므로,proc.cwd가/etc/ssh/이하인지 확인해 필터링.
- 정상적인 관리 스크립트가
🛡️ 완화 방안
-
즉시(긴급 차단)
sshd_config에서AuthorizedKeysCommand와AuthorizedPrincipalsCommand지시자를 주석 처리하거나,User옵션을 제거하여 기본 root 실행으로 강제한다.- 구현 난이도: 매우 쉬움 (파일 편집 후
systemctl reload sshd). - 운영 영향: 기존 커스텀 키 검증 로직 사용 중인 서비스는 일시 중단될 수 있음.
- 검증 방법:
sshd -T | grep authorizedkeyscommand로 비활성화 여부 확인.
- 구현 난이도: 매우 쉬움 (파일 편집 후
-
단기(완화)
-
모든 AuthorizedKeysCommand/AuthorizedPrincipalsCommand 실행 파일에 엄격한 파일 권한(0700) 및 소유자(root) 을 적용하고,
sudoers에서 해당 바이너리 실행을 제한한다.- 구현 난이도: 중간 (파일 퍼미션 변경 + sudoers 편집).
- 운영 영향: 기존 관리자가 스크립트를 별도 사용자로 실행하던 경우 권한 조정 필요.
- 검증 방법:
ls -l <binary>로 권한 확인,sudo -l로 허용 명령 검토.
-
Auditd 정책 강화 – 위 탐지 규칙을 실시간 알림으로 전환하고,
auditctl -a exit,always -F arch=b64 -S execve -F uid!=euid와 같이 UID/EUID 불일치를 기록하도록 설정한다.- 구현 난이도: 중간 (auditd 재시작 필요).
- 운영 영향: 로그 양 증가 → 저장소 용량 모니터링 필요.
- 검증 방법:
ausearch -sc execve -i | grep "uid!=euid"로 테스트 이벤트 확인.
-
-
근본(해결)
- OpenSSH 8.8 이상 버전으로 업그레이드하거나, 배포판에서 제공하는 보안 업데이트(예: Fedora 최신 security‑release) 적용한다. NetApp 제품군은 해당 벤더의 ONTAP/Active IQ Unified Manager 패치를 적용한다.
- 구현 난이도: 높음 (버전 호환성 테스트 및 서비스 재시작 필요).
- 운영 영향: 잠재적 다운타임, 설정 마이그레이션 검증 필요.
- 검증 방법:
ssh -V로 버전 확인 후, CVE‑fixed 릴리즈(8.8+) 여부 검증.
- OpenSSH 8.8 이상 버전으로 업그레이드하거나, 배포판에서 제공하는 보안 업데이트(예: Fedora 최신 security‑release) 적용한다. NetApp 제품군은 해당 벤더의 ONTAP/Active IQ Unified Manager 패치를 적용한다.
-
잔여 리스크
- 패치 적용 전까지는 위 즉시·단기 조치를 유지해야 하며, 비활성화된 커스텀 키 검증 로직이 보안 정책에 미치는 영향을 별도 평가한다.
-
인시던트 대응 플레이북 (핵심 체크리스트)
sshd_config에서 해당 지시자 존재 여부 확인 → 비활성화.- auditd 로그에서 UID/EUID 불일치 이벤트 검색 → 탐지 규칙 위반 시 즉시 조사.
- 실행 중인 sshd 프로세스의 보조 그룹(
cat /proc/<pid>/status | grep Groups) 확인 → 비정상적이면 서비스 재시작. - 패치 적용 계획 수립 및 테스트 환경에서 업그레이드 검증 후 배포.
우선순위 근거 – 다중 소스 교차검증 결과 일관성이 확인되었으며([교차검증] 다중 소스 데이터 일관성 확인됨), EPSS 0.02545(실측 악용 예측)와 CVSS 7.0을 고려해 이번 주 내 scheduled 로 지정된 점이 본 보고서의 대응 시점을 명확히 한다.
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=7.0 · non-KEV · EPSS=0.02545 · exploit=hard · in_scope=None