한 줄 요약

공격자들이 Citrix NetScaler 장비의 제로데이 취약점(CVE-2026-88772, CVE-2026-88771)을 악용해 웹셸을 심고 관리자 권한(root)을 탈취하는 사건이 발생했습니다. Mandiant(맨디언트)에 따르면 9월 초부터 시작된 이 공격은 북미와 유럽의 정부, 금융, 교육, 법률, 전문 서비스 기관을 노렸습니다. 공격자는 인증 없이 시스템을 마음대로 실행할 수 있는 취약점을 이용해 시스템 파일을 조작하고, 자격증명을 훔치고, 내부 네트워크로 침투를 확산했습니다. Citrix는 두 취약점 모두 패치를 배포했으며, 완전한 방어를 위해서는 최신 보안 업데이트 설치가 유일한 해결책이라고 강조했습니다. 이 취약점은 실제 공격에 악용되고 있는 것으로 CISA(미국 사이버보안 기관)의 실제 악용 목록에도 등재되었습니다.

사건

공격자들이 Citrix NetScaler ADC/Gateway 장비의 제로데이 취약점 두 건(CVE-2026-88771, CVE-2026-88772)을 악용해 웹셸과 터널링 악성코드를 설치하고 root 권한을 획득했다.

영향

북미·유럽의 정부, 금융, 교육, 법률, 전문 서비스 기관이 피해를 입었으며, 자격증명 탈취와 내부 네트워크 확산이 발생했다.

원인

CVE-2026-88771은 인증 없이 원격 코드 실행이 가능한 취약점이며, CVE-2026-88772는 DTLS 활성화 시 메모리 오버플로우로 원격 코드 실행이나 서비스 거부를 유발하는 취약점이다.

대응

Citrix는 두 취약점에 대한 보안 업데이트를 배포했으며, Mandiant는 패치가 어려운 경우 DTLS 비활성화와 인바운드 UDP/443 차단을 임시 완화책으로 권고했다.

실무 포인트

httpd.conf의 비정상적인 PHP 핸들러나 별칭, 의심스러운 .deb/.sig 파일, /bin/sh의 setuid 권한 변경 여부, /tmp/.uxdport 및 /tmp/.uxdlock 파일 존재 여부를 점검해야 한다.

본문

보안 업체들은 공격자들이 Citrix NetScaler의 CVE-2026-88772 제로데이 취약점을 악용해 맞춤형 웹셸과 터널링 악성코드를 배포하고, root 권한을 획득했으며, 자격증명을 훔치고 내부 네트워크로 확산했다고 밝혔다.

Mandiant(맨디언트)는 이 공격이 최소 9월 초부터 시작되었으며, 북미와 유럽의 정부, 금융 서비스, 교육, 법률, 전문 서비스 분야 조직들이 영향을 받은 것으로 보인다고 말했다.

이 공격 캠페인은 주말 동안 Citrix 관리자들이 IT 공급업체, 보안팀, CERT(컴퓨터 비상 대응팀), 국가 사이버보안 기관으로부터 패치되지 않은 두 건의 NetScaler 제로데이에 대해 비공개로 경고를 받았고, 일부 경우에는 영향받은 장비를 종료하라는 권고를 받았다는 사실이 알려지면서 처음 드러났다.

보안 업체 watchTowr는 이후 두 건의 NetScaler 원격 코드 실행 제로데이가 실제로 악용되고 있으며 Citrix가 패치를 준비 중이라는 보고를 확인했다고 밝혔다.

Citrix는 결국 일요일에 이 취약점들을 CVE-2026-88771과 CVE-2026-88772로 공개했으며, 일부 연구자들은 이 취약점을 "PitScaler"라고 명명했다.

Citrix는 완화 조치가 적용되지 않은 NetScaler 배포 환경에서 두 취약점 모두 악용되었음을 확인했으며 이를 해결하기 위한 보안 업데이트를 배포했다.

CVE-2026-88771은 모든 NetScaler ADC 및 Gateway 배포 환경에 영향을 미치는 인증되지 않은 원격 코드 실행 취약점이며, CVE-2026-88772는 DTLS가 활성화된 경우 원격 코드 실행이나 서비스 거부로 이어질 수 있는 메모리 오버플로우 취약점이다.

제로데이 공격에서 악용됨

GreyNoise는 Citrix가 CVE-2026-88771과 CVE-2026-88772를 공개적으로 발표하기 사흘 전인 9월 24일, 한 위협 행위자가 Citrix NetScaler Gateway를 악용하려 시도하는 것을 관찰했다.

GreyNoise에 따르면 이 공격은 149.104.78.141에서 시작되었으며, 자사 플랫폼은 CVE 탐지 정보가 공개되기 전에 이를 탐지했다.

GreyNoise는 공격자가 /bin/sh를 수정해 root 셸을 확보하고, /var/netscaler/logon/LogonPoint/custom/.ctxs.receiver 경로에 비밀번호로 보호된 PHP 웹셸을 설치하려 시도했다고 밝혔다.

공격자는 또한 /etc/httpd.conf를 수정해 receiver.min.css를 포함해 CSS 파일처럼 보이는 요청이 실제로는 숨겨진 PHP 웹셸을 열도록 만들려 시도했다.

NetScaler에 PHP 웹셸을 배포하는 데 사용된 명령어

출처: GreyNoise

이 회사는 현재로서는 전체 익스플로잇을 공개하지 않고 있지만, 방어자들에게 .ctxs.receiver 파일, httpd.conf 내 관련 Alias 또는 AliasMatch 항목, /bin/sh 권한 변경, 그리고 관찰된 출발지 IP로부터의 연결을 조사할 것을 권고했다.

새로 공개된 Mandiant 보고서는 CVE-2026-88772가 어떻게 악용되는지에 대해 더 자세한 내용을 제공하며, GreyNoise가 관찰한 것과 동일한 공격 패턴 일부를 확인했다.

Mandiant는 이 익스플로잇이 인증을 우회하고 NetScaler Packet Processing Engine(NSPPE)를 예기치 않게 종료시켜 공격자에게 root 수준 접근 권한을 부여한다고 밝혔다.

"Google Threat Intelligence Group은 익스플로잇 코드를 보유하고 있지는 않지만, 최전선 텔레메트리 분석 결과 특별히 조작되거나 조각화된 레코드 헤더를 전송하면 패킷 엔진 내에서 힙 메모리 경계 손상이 유발되어, 기반 FreeBSD 플랫폼에서 root 수준 운영체제 권한으로 임의의 셸코드를 실행하도록 제어 흐름이 우회된다"고 Mandiant는 설명한다.

Google은 침해 사고에서 유사한 침해 후 활동을 관찰했는데, 여기에는 공격자가 PHP 웹셸을 설치하고 실행 불가능한 파일 확장자를 PHP로 처리하도록 NetScaler 웹 서버 설정을 수정한 것이 포함된다.

한 침해 사고에서 Mandiant는 공격자가 /etc/httpd.conf를 수정해 .deb 파일이 PHP로 실행되도록 만들었으며, 이를 통해 일반적으로 NetScaler 클라이언트 소프트웨어를 보관하는 디렉터리에서 웹셸을 사용할 수 있게 했다고 밝혔다.

다른 공격에서는 위협 행위자가 .sig 파일을 사용하고, /vpn/media/ 경로 아래 .ico 이미지 요청이 악성 PHP 파일로 매핑되도록 웹 서버 설정을 수정했다.

Google은 이를 통해 악성 웹셸 요청이 이미지 파일이나 CSS 요청처럼 보이면서도 shell_exec() 또는 eval() PHP 함수를 통해 공격자 명령을 실행할 수 있었다고 밝혔다.

일부 웹셸은 명령을 실행할 때 가짜 HTTP 404 응답을 반환해 악성 활동을 더욱 은폐했다.

Mandiant는 위협 행위자들이 WHIPSHOT과 SLAPSHOT으로 추적되는, 이전에 문서화되지 않은 두 개의 악성코드 계열을 배포했다고 밝혔다.

WHIPSHOT은 Debian 패키지로 위장되어 NetScaler VPN 스크립트 디렉터리에 저장된 PHP 웹셸이다.

이 악성코드는 SLAPSHOT을 위한 HTTP 프록시 역할을 하며, HTTP 요청 헤더에서 Base64로 인코딩된 데이터를 추출해 손상된 장비에서 실행 중인 터널링 악성코드로 전달한다.

WHIPSHOT은 또한 SLAPSHOT이 실행 중인지 확인하며, 내장된 Python 페이로드를 백그라운드에서 추출하고 실행할 수 있다.

SLAPSHOT은 손상된 NetScaler 장비와 내부 장치를 연결하는 Python 기반 TCP 터널링 도구로, 공격자가 네트워크 내부로 더 깊이 침투할 수 있게 해준다.

이 악성코드는 WHIPSHOT으로부터 명령을 받으며, 내부 호스트로 연결을 열고 해당 연결을 통해 데이터를 주고받으며 작업이 끝나면 세션을 종료할 수 있다.

Google은 공격자들이 최소 한 건의 관찰된 침해 사고에서 정찰 활동을 수동으로 수행하고 자격증명을 훔치기 위해 이 프록시를 사용했다고 밝혔다.

Mandiant는 이 악성코드가 일정 시간 활동이 없으면 스스로 종료될 수 있어 탐지를 더 어렵게 만든다고 밝혔다.

익스플로잇이 처음에는 root 권한을 부여하지만, 웹셸이 실행하는 명령은 일반적으로 NetScaler 웹 서버가 실행되는 낮은 권한의 계정 하에서 실행된다.

root 접근 권한을 유지하기 위해 Google은 공격자들이 명령이 상승된 권한으로 실행되도록 /bin/sh의 권한을 수정했다고 밝혔다.

"웹셸에 지속적인 root 수준 실행 권한을 확보하기 위해, 위협 행위자는 경량 설치 웹셸을 이용해 /bin/sh 실행 파일에 setuid(사용자 ID 설정) 비트를 부여했다"고 Mandiant는 밝혔다.

위협 행위자는 또한 설정 변경 사항을 적용하기 위해 NetScaler 장비를 재부팅하거나 웹 서버를 재시작했다.

NetScaler ADC 및 Gateway 장비는 인터넷에 노출되어 있고 흔히 내부 네트워크의 경계에 위치하면서도 EDR(엔드포인트 탐지 및 대응) 소프트웨어의 보호를 받지 못하는 경우가 많아 매력적인 공격 대상이 된다.

Mandiant는 방어자들이 최신 Citrix 보안 업데이트 설치를 최우선으로 해야 하며, NetScaler 장비에서 침해 흔적을 점검해야 한다고 밝혔다.

잠재적인 침해 지표로는 httpd.conf 내 승인되지 않은 PHP 핸들러나 별칭, PHP 코드를 포함한 의심스러운 .deb 또는 .sig 파일, 비정상적인 HTTP 404 응답, 예기치 않은 NSPPE 크래시, 그리고 SLAPSHOT과 관련된 /tmp/.uxdport 또는 /tmp/.uxdlock 파일의 존재 등이 있다.

조직들은 또한 /bin/sh가 setuid root 권한으로 실행되도록 수정되었는지 확인하고, nohup으로 실행되거나 Base64로 인코딩된 페이로드를 포함한 의심스러운 Python 프로세스를 찾아봐야 한다.

Mandiant는 이 활동을 CVE-2026-88772와 연관짓고 있지만, Citrix는 CVE-2026-88771 역시 공격에 악용되었다고 밝혔다.

즉시 패치를 적용할 수 없는 조직을 위해, Mandiant는 운영상 가능한 경우 DTLS를 비활성화하고, DTLS가 필요하지 않은 경우 인바운드 UDP/443을 차단할 것을 권고한다.

그러나 Google은 이러한 완화 조치가 CVE-2026-88772에만 적용되며, 별도로 악용되고 있는 CVE-2026-88771 취약점에는 방어 효과가 없다고 경고한다.

Mandiant는 최신 NetScaler 보안 업데이트를 설치하는 것만이 두 취약점을 모두 해결할 수 있는 유일한 방법이라고 밝혔다.

출처
BleepingComputer · bleepingcomputer.com
원문 보기

분야별 뉴스

관심 분야의 보안 이슈를 모아 보세요.

TORUN SECURITY

투런이 제공하는 보안 솔루션

공격 표면 관리부터 엔드포인트·내부정보 보호까지, 기업 환경에 맞는 보안 솔루션을 투런이 함께 설계합니다.