피드로 돌아가기
Dev.toSecurity
원문 읽기
FIDO2 기반 Hardware-backed Key 도입을 통한 SSH Private Key 유출 원천 차단
Hardware-backed SSH keys, end to end: YubiKey, PIV, software alternatives, and where SSH CAs fit in
AI 요약
Context
파일 기반 SSH Key 저장 방식은 Filesystem 접근 권한 탈취나 설정 오류로 인한 Key 복제 및 유출 위험 상존. 특히 ssh-agent forwarding 사용 시 원격 호스트에서 사용자 모르게 서명이 수행되는 보안 취약점 발생.
Technical Solution
- FIDO2 프로토콜 기반의 Hardware-backed Key를 도입하여 Private Key의 장치 외부 유출을 원천적으로 차단하는 구조 설계
- Resident Key 설정을 통해 자격 증명을 YubiKey 내부에 저장하고 Disk에는 포인터만 남겨 Key 분실 시 ssh-keygen -K로 복구 가능한 가용성 확보
- Non-resident Key와 Passphrase 조합을 통해 자동화 도구(Ansible) 등에 필요한 Secret 관리 체계 구축
- User Presence(Touch) 옵션을 강제하여 Agent Forwarding 환경에서도 물리적 승인 없는 무단 서명을 방지하는 보안 계층 추가
- PIN 설정을 통한 장치 도난 대응 및 Resident Key 추출 방지 로직 구현
- 사용자 역할(Root, Sudo, Wheel, Robo)에 따라 PIN, Touch, Resident 설정을 조합한 차등 보안 정책 적용
실천 포인트
1. 일반 관리자 계정: Resident Key + PIN + Touch 설정 적용
2. 자동화/대량 작업: Non-resident Key + Passphrase + ssh-agent 조합 검토
3. 보안 요구사항: ssh-keygen -O no-touch-required 옵션 제거 및 물리적 Touch 강제화
4. 확장성: 관리 대상 엔지니어가 15~100명 규모로 증가 시 SSH CA(Teleport, step-ca 등) 도입 검토