HV-12 ESXi Shell 비활성화
가이드라인 원문
| 항목 | 내용 |
|---|---|
| 항목코드 | HV-12 |
| 점검내용 | ESXi Shell(TSM, TSM-SSH)비활성화여부점검 |
| 점검대상 | VMware ESXi 등 |
| 판단기준 | 양호: ESXi Shell(TSM, TSM-SSH)서비스가비활성화된경우 |
| 판단기준 | 취약: ESXi Shell(TSM, TSM-SSH)서비스가활성화된경우 |
| 조치방법 | ESXi Shell(TSM, TSM-SSH)서비스가비활성화설정 |
상세 설명
1. 항목 개요
ESXi Shell(이전 ESX의 Console OS)은 VMware ESXi 호스트에 직접 접속하여 명령어로 시스템을 관리할 수 있는 텍스트 기반 인터페이스입니다. TSM(Tech Support Mode)이라고도 불리며, 크게 두 가지 형태가 있습니다.
- TSM(로컬 콘솔): ESXi 호스트에 직접 키보드/모니터를 연결하여 사용
- TSM-SSH: SSH 프로토콜을 통해 원격에서 접속
ESXi Shell은 매우 강력한 관리 기능을 제공하지만, 동시에 보안상 심각한 위험을 가지고 있습니다.
2. 왜 이 항목이 필요한가요?
ESXi Shell의 보안 위험:
감사 기록 누락
- ESXi Shell에서 실행한 명령은 vCenter와 동기화되지 않음
- 중앙 감사 시스템에서 기록 부재
- 누가 언제 무엇을 했는지 추적 불가
권한 남용 가능성
- root 계정으로 직접 접속 가능
- 모든 시스템 명령 실행 가능
- 가상 머전 제어, 네트워크 설정 변경, 스토리지 조작
비인가 접속 경로
- SSH 포트(22) 스캔으로 탐지 가능
- vCenter 우회하여 직접 호스트 접속
- 방화벽 우회 가능성
악성코드 실행
- 쉘 스크립트를 통한 악성코드 실행
- 백도어 설치
- 크립토마이너 설치
위험 시나리오:
| |
실제 공격 사례:
- 내부자가 SSH로 직접 접속하여 비밀 코인 마이닝
- 관리자 계정 탈취 후 가상 머전 전체 삭제
- 네트워크 설정 변경으로 서비스 거부
3. 점검 대상
- VMware ESXi
4. 판단 기준
- 양호: ESXi Shell(TSM, TSM-SSH) 서비스가 비활성화된 경우
- 취약: ESXi Shell(TSM, TSM-SSH) 서비스가 활성화된 경우
5. 점검 방법
VMware ESXi
1) Web 콘솔 확인
Web 콘솔 접속
1https://<VMware ESXi IP>호스트 > 관리 > 서비스로 이동
다음 서비스 활성화 여부 확인:
- TSM (Tech Support Mode)
- TSM-SSH (Tech Support Mode-SSH)
양호 기준:
- TSM: 중지 또는 실행 중이 아님
- TSM-SSH: 중지 또는 실행 중이 아님
취약 기준:
- TSM: 실행 중
- TSM-SSH: 실행 중
2) CLI 확인
SSH로 ESXi 접속 (활성화된 경우)
서비스 상태 확인:
1esxcli system shell getTSM-SSH 상태 확인:
1esxcli network firewall ruleset list | grep TSM
3) SSH 접속 시도
| |
6. 조치 방법
VMware ESXi
1) Web 콘솔에서 비활성화
TSM 비활성화:
Web 콘솔 접속
1https://<VMware ESXi IP>호스트 > 관리 > 서비스로 이동
TSM 서비스 선택 > 중지 클릭
정책 변경: 정책 > 시작 및 중지 > 호스트 부팅 시 서비스 시작 해제
TSM-SSH 비활성화:
TSM-SSH 서비스 선택 > 중지 클릭
정책 변경: 정책 > 시작 및 중지 > 호스트 부팅 시 서비스 시작 해제
방화벽 규칙 비활성화:
- 네트워킹 > 방화벽 규칙 > TSM-SSH > 사�용 안 함
2) CLI에서 비활성화
TSM 비활성화:
| |
TSM-SSH 비활성화:
| |
3) vi /etc/ssh/sshd_config (직접 설정)
| |
7. ESXi Shell이 필요한 경우
일부 Troubleshooting 또는 특정 스크립트 실행을 위해 ESXi Shell이 필요할 수 있습니다. 이 경우 다음과 같이 안전하게 사용하세요.
1) 일시적 활성화
| |
2) 네트워크 접근 제한
| |
3) vSphere API 사용
ESXi Shell 대신 vSphere API 또는 PowerCLI 사용 권장:
| |
4) ESXi Shell 접속 로그 남기기
| |
8. 대체 관리 방법
| 작업 | ESXi Shell | 대체 방법 |
|---|---|---|
| 시스템 모니터링 | esxtop | vSphere Client, ESXTOP via vCenter |
| 네트워크 설정 | esxcfg-route | vSphere Client 네트워크 설정 |
| 스토리지 관리 | esxcli storage | vSphere Client 스토리지 관리 |
| 가상 머전 관리 | vim-cmd vmsvc | vSphere Client, PowerCLI |
| 로그 확인 | cat /var/log/ | vSphere Client 로그 뷰어, Syslog |
| 패치 적용 | esxcli software | vCenter Update Manager |
9. ESXi Shell 사용 시 모니터링
Shell을 활성화해야 하는 경우, 반드시 모니터링을 수행하세요.
1) 접속 로그 확인
| |
2) 명령어 기록 확인
| |
3) 비정상 활동 탐지
| |
10. 추가 보안 조치
1) SSH 키 기반 인증
비밀번호 대신 SSH 키 사용:
| |
2) 계정 잠금 정책 (HV-07 참조)
| |
3) 세션 시간 제한 (HV-01 참조)
| |
4) 방화벽 규칙
| |
11. 주의사항
- ESXi Shell 비활성화는 시스템 운영에 영향 없음
- vSphere Client를 통한 모든 관리 가능
- 일부 스크립트가 Shell을 사용하는 경우 PowerCLI로 마이그레이션 필요
- Troubleshooting을 위해 일시적으로만 활성화 권장
- 활성화 시 반드시 IP 제한과 강력한 인증 적용
요약
ESXi Shell(TSM, TSM-SSH)은 vCenter와 동기화되지 않는 감사 누락 경로이므로 반드시 비활성화해야 합니다. 대부분의 관리 작업은 vSphere Client와 PowerCLI를 통해 수행할 수 있습니다. 특별한 경우가 아니면 ESXi Shell은 항상 비활성화 상태로 유지하고, 필요할 때만 일시적으로 활성화하여 사용하세요.