시트릭스 정책 우회는 취약점이 아니라 법률 위반이다
주의!!
cert.org의 VINCE를 통한 Citrix와의 논의를 바탕으로, 이 문제는 관리 권한이 필요하기 때문에 취약점으로 분류되지 않는 것으로 결론지어졌습니다. 따라서 보안상의 문제 없이 이 정보를 공유할 수 있습니다. 그러나 보안상의 이유로, 논리적으로 격리되거나 폐쇄된 네트워크와 같은 특수 환경에서는 Xendesktop (VDI)의 사용을 권장하지 않습니다. 만약 VDI를 반드시 사용해야 한다면, 관리자 권한을 제거하고 보안 전용 소프트웨어를 설치해야 합니다.
관리자 권한이 필요하다는 점은 위험을 낮출 수 있지만, 잠재적인 영향력을 완전히 제거하지는 않습니다. 아래는 Citrix 정책이 어떻게 우회될 수 있는지에 대한 상세한 기술 설명입니다.
설명
Citrix VDI 에이전트(PicaSvc2.exe)는 Citrix 관리 서버로부터 정책을 수신하고, 이를 레지스트리(HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\1\User
)에 기록한 후, 레지스트리에서 읽어 정책을 적용하는 구조로 보입니다. 공격자는 아래의 개념 증명(POC)을 참고하여, 레지스트리 조작을 통해 Citrix 정책 서버가 강제하는 드라이브, 네트워크 접근, 클립보드 작업 등의 보안 정책을 우회할 수 있습니다.
Citrix의 Common Criteria 인증 문서에 따르면, 이러한 구성 데이터(Configdata)가 공격자에 의해 변경되지 않도록 보호하는 메커니즘이 설계되어 있습니다. 이와 같은 우회는 구현상의 결함으로 간주될 수 있습니다.
폐쇄되거나 격리된 네트워크 환경에서 VDI를 사용할 경우, Citrix 정책을 우회하여 VDI를 강제로 인터넷에 연결하게 되면 민감한 내부 정보가 외부로 유출될 위험이 있습니다. 특히 대한민국에서는 이러한 행위가 명백한 법 위반으로 간주되며, 네트워크 격리 대책에 대한 재검토가 필요합니다.
개념 증명 (POC)
공격자는 우선 회사 계정에 접근한 후, 회사의 Citrix VDI(Windows 10 실행 중)에 로그인해야 합니다. VDI 환경은 일반적으로 네트워크 접근, 프린터 사용, 외부 드라이브 연결, 클립보드 접근 등이 제한되어 있습니다.
공격자는 VDI에 로그인하여 레지스트리를 지속적으로 수정하는 배치 파일(다운로드 링크)을 실행한 후, VDI 세션에서 로그아웃합니다.
배치 파일을 실행하여 레지스트리를 수정한 후, 공격자는 VDI에서 로그아웃합니다. 재로그인 시, 레지스트리 값이 변조되어 Citrix 정책을 우회할 수 있게 됩니다.
예시 레지스트리 수정 내용:
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\1\User] "AutoConnectDrives"=dword:00000001 "AllowCdromDrives"=dword:00000001 "AllowFixedDrives"=dword:00000001 "AllowFloppyDrives"=dword:00000001 "AllowNetworkDrives"=dword:00000001 "AllowRemoveableDrives"=dword:00000001 "UseAsyncWrites"=dword:00000001 "ReadOnlyMappedDrive"=dword:00000000
VDI에 다시 로그인하면,
PicaSvc2.exe
가 Citrix 서버로부터 정책 설정을 가져와 레지스트리에 저장합니다.PicaSvc2.exe
가 정책을 쓰고 읽는 동안, 이미 배치 파일에 의해 레지스트리 값이 조작되어 있습니다.PicaSvc2.exe
는 조작된 정책을 VDI 환경에 적용합니다.
추가 사항:
- 연결 PC의 레지스트리를 수정함으로써 하드웨어 리디렉션이 활성화되어 무단 네트워크 접근이 가능해질 수 있습니다.
- Citrix의 기본 정책은 USB 클래스 FFh를 허용하므로, iPhone을 테더링 용도로 사용하거나 USB 기반 무선 카드를 통해 네트워크 격리를 우회할 수 있습니다.
- iPhone 테더링을 활성화하려면, 공격자는 iTunes 설치 프로그램에서 추출한 드라이버인 Apple 네트워크 드라이버와 Apple USB 드라이버를 설치해야 합니다.
- Citrix 세션에서 iPhone을 리디렉션하면, 네트워크 격리 환경에서도 인터넷 접근이 가능해집니다.
영향
VDI를 사용하여 논리적 네트워크 분리를 유지하는 기업의 경우, 이 취약점을 통해 내부 정보 유출 및 내부 서버에 대한 무단 접근이 발생할 수 있습니다.
잠재적 영향을 고려할 때, 이러한 공격을 실시간으로 탐지하고 완화하는 것이 매우 중요합니다. 아래는 잠재적인 우회 활동을 발견하고 모니터링하는 단계입니다.
탐지
이 문제를 탐지하기 위해:
- Procmon을 사용하여
PicaSvc2.exe
의 동작을 모니터링합니다. - Citrix 에이전트가 정책 설정을 저장하는 레지스트리 키를 조사합니다.
- 해당 레지스트리 값의 변경 효과를 조작하고 관찰합니다.
설계 분석
Citrix의 Common Criteria 인증 문서에는 구성 데이터의 무단 변경을 방지하기 위한 조치들이 포함되어 있습니다. Citrix의 Common Criteria 인증 정보에 따르면, 가상 데스크탑이나 애플리케이션의 설정과 할당에 필요한 데이터의 기밀성과 무결성이 서버 간 전송 중에도 유지됩니다. 이 설계에는 공격자, 애플리케이션 사용자 또는 데스크탑 사용자가 구성 데이터를 변경하지 못하도록 하는 예방 조치도 포함되어 있습니다.
Citrix가 위에 언급된 보안 기능들을 구현했음에도 불구하고, 특히 대한민국과 같이 엄격한 네트워크 격리 법규가 적용되는 지역에서는 법적 고려사항도 반드시 검토되어야 합니다.
Citrix의 보안 목표인 O.Secure_Setup_Data
, OE.TLS
, OE.Encryption
등은 서버 간 처리 및 전송 중에 구성 데이터의 기밀성과 무결성을 보장합니다.
자세한 보안 목표와 관리 기능의 역할에 대해서는 다음을 참조하세요:
- FMT_SMF.1/Authorise: 엔드포인트 데이터 접근 제어 정책 관리
- FMT_MSA.1/Desktop
- FMT_MSA.3/Desktop
- FMT_MSA.1/Application
- FMT_MSA.3/Application
- FPT_ITT.1
법적 고려사항
대한민국에서는 전자금융거래법에 따라 금융감독원이 논리적 네트워크 분리를 선택적으로 구현할 수 있는 조치를 도입하였습니다. 금융 기관은 민감한 데이터가 외부 공격으로부터 보호받도록 네트워크 격리 조치를 채택하여 무단 접근을 차단하고 사고를 예방해야 합니다.
해당 공격은 관리자 권한이 필요하므로, 기업은 논리적으로 분리된 네트워크 환경에서 PC 사용자에 대한 관리자 권한 제거 정책을 재검토해야 합니다. 또한, 이러한 시스템의 오남용을 방지할 수 있는 규정을 포함하도록 법적 개선이 필요합니다.
한계
관리자 권한 및 설치 권한이 제한되더라도, 화면 캡처 등의 방법으로 인한 데이터 유출을 완전히 방지하기는 어렵습니다. 논리적 네트워크 격리 모델에 대한 보다 자세한 분석과 해결책은 이 보고서에서 확인할 수 있습니다.
이러한 한계는 관리자 권한이 제거된 경우에도 조직이 여전히 취약함을 시사하며, 최근 은행 부문에서 유사 사건에 대응하는 사례에서도 보듯이, 기술적 및 규제적 차원에서 이러한 문제들을 해결하는 것이 중요함을 강조합니다.
관련 이슈
2011년 농협 해킹 사건 이후, 대한민국의 여러 주요 은행은 개인 정보의 유출, 절도 또는 변조를 방지하기 위해 내부-외부 네트워크 분리를 시행하기 시작했습니다. 네트워크 격리는 개인 데이터의 안전을 보장하기 위한 핵심 권고사항으로 남아 있습니다. 관련 지침은 여기에서, ISMS-P 인증 관련 정보는 여기에서 확인할 수 있습니다.