[방어] 분석 — CVE-2026-10520
CVE-2026-10520 is a network‑reachable OS command injection in Ivanti Sentry that enables unauthenticated remote code execution with root privileges, and the highest‑priority mitigation is to block all inbound traffic to the vulnerable service immediately.
📋 요약
- 심각도 critical · CVSS 10.0 · EPSS 0.99889 · 악용난이도 easy · KEV
🔍 공격 기법
Ivanti Sentry의 웹 관리 인터페이스에 특수 문자(예: ;, |, `)와 시스템 명령어를 포함한 파라미터가 전달되면, 서버 측에서 해당 문자열을 그대로 OS 쉘에 넘겨 실행합니다. 원격 공격자는 인증 없이 HTTP POST/GET 요청만으로 루트 권한을 획득할 수 있습니다.
악용 가능성: 이 취약점은 CVSS AV:N/AC:L/PR:N/UI:N 로 평가되어 네트워크를 통해 직접 접근할 수 있으며, 공격자는 별도의 인증이나 사용자의 조작 없이 바로 악성 명령을 전송할 수 있습니다. 즉, 원격에서 HTTP / HTTPS 엔드포인트에 파라미터값만 변조하면 OS Command Injection이 발생해 루트 권한까지 상승합니다. EPSS 0.99889 라는 거의 100 %에 가까운 실증적 악용 가능성 점수와 KEV(실제 악용) 등재 사실은 이론적인 심각도와 무관하게 현재 활발히 공격이 이루어지고 있음을 강력히 시사합니다. 공격 표면은 Ivanti Sentry의 웹 관리 인터페이스 혹은 REST API 경로에 노출된 “command” 또는 유사 파라미터이며, 해당 URL만 알면 별도의 내부 네트워크 스캐닝 없이도 원격 코드 실행이 가능합니다. 따라서 이 취약점은 ‘easy’ 등급에 부합하는 낮은 난이도와 높은 악용 가능성을 동시에 갖춘 공격 시나리오로 판단됩니다.
💥 영향 분석
- 성공 시 루트 권한으로 임의 명령 실행 → 시스템 전체 장악
- 파일 삭제·변조, 추가 사용자 생성, 네트워크 트래픽 탈취 등 전통적인 RCE 후폭풍 전부 발생
- 서비스 중단 및 데이터 유출 위험이 극대화됩니다.
🔗 관련 취약점·체이닝
추정: 동일한 OS Command Injection (CWE‑78) 패턴은 다른 웹 기반 관리 솔루션에서도 발견되며, 성공적인 RCE 이후에는 흔히 Privilege Escalation (CWE‑269) 혹은 Credential Dumping (CWE‑522) 기법과 연계됩니다.
🔎 탐지
-
로그 지표
- Web Access Log (
uri_path,query_string):;,|,`,$(등 메타문자와ls|cat|wget|curl|nc|bash같은 명령어가 포함된 요청. - Syslog / auditd (
execve이벤트,uid=0): 비정상적인 프로세스 실행 경로(예:/tmp/,/var/tmp/)와 짧은 실행 시간.
- Web Access Log (
-
SIEM 탐지 규칙 예시
- Web 요청 기반
1index=web_logs sourcetype=access_combined 2| where uri_path="/sentry/api" 3 and (query_string matches "(;|\||`|\\$\\()" 4 or query_string matches "(ls|cat|wget|curl|nc|bash)") 5| stats count by src_ip, uri_path, query_string 6| where count > 0- 프로세스 생성 기반 (Linux audit)
1index=host_logs sourcetype=auditd 2| where exe="/usr/bin/sentry" and uid=0 3 and cmdline matches "(;|\||`|\\$\\()" 4 and cmdline matches "(ls|cat|wget|curl|nc|bash)" 5| stats count by host, exe, cmdline, user- 정규식 패턴 (WAF/IDS)
1(?i)(;|\||`|\$\() .*?\b(ls|cat|wget|curl|nc|bash)\b- 오탐 튜닝
- 정상적인 관리 스크립트가 사용하는
;나 파이프는 특정 내부 IP(예: 10.0.0.0/8)에서만 허용하도록 필터링. cmdline에 포함된 명령어 리스트를 실제 사용되는 옵션으로 제한하고,uid!=0인 경우는 제외.
- 정상적인 관리 스크립트가 사용하는
🛡️ 완화 방안
-
즉시(긴급 차단):
- WAF 혹은 네트워크 방화벽에서
POST /sentry/api/*요청 중query_string에 위 정규식 패턴이 매칭될 경우 403 응답으로 차단한다. 난이도: 낮음, 운영 영향: 일부 정상 관리 요청 차단 가능성, 검증: 차단 로그와 허용 테스트로 확인.
- WAF 혹은 네트워크 방화벽에서
-
단기(완화):
- 웹 서버(
nginx/Apache)에 ModSecurity 규칙을 적용해;|등 메타문자를 포함한 파라미터를 전부 이스케이프하거나 삭제한다. - 관리 인터페이스 접근을 내부망(IP 화이트리스트)으로 제한하고, 서비스 계정을 비루트(
uid>1000)로 재설정한다. 난이도: 중간, 운영 영향: 접근 경로 변경 및 잠재적 인증 오류, 검증: 정상 IP에서만 접속 확인.
- 웹 서버(
-
근본(해결):
- Ivanti Sentry를 버전 10.5.2 이상 혹은 10.6.3 이상으로 업그레이드한다. 최신 패키지를 적용하고, 서비스 재시작 후 취약점 스캐너(Vulners, Nessus)로 검증한다. 난이도: 높음(다운타임 필요), 운영 영향: 서비스 중단 및 버전 호환성 테스트, 검증: 업그레이드 후 CVE-2026-10520 탐지 규칙에 매칭되지 않음을 확인.
패치 적용 전까지는 위 즉시 차단 조치를 가장 먼저 실행하고, 동시에 단기 완화와 근본 해결 절차를 병행하시기 바랍니다.
⚖️ 위험도 / 우선순위
- 조치: immediate (지금 즉시(24h 내))
- 근거: CVSS=10.0 · KEV · EPSS=0.99889 · exploit=easy · in_scope=None