[분석가] 분석 — CVE-2026-61893
CVE-2026-61893 is a medium‑severity memory‑corruption flaw in IEC 60870‑5‑104 parsers that can be triggered remotely with a crafted I‑frame, and the immediate mitigation is to enforce strict object‑count validation at the network edge.
📋 요약
- 심각도 medium · CVSS 6.5 · EPSS 미확보 · 악용난이도 easy
🔍 공격 기법
공격자는 IEC 60870‑5‑104 프로토콜의 TCP 2404 포트로 TypeID = 104 (C_TS_NA_1)인 I‑frame을 전송하고, objectCount 값을 비정상적으로 크게 설정합니다. 수신 측 파서가 해당 값으로 TestCommand_getFromBuffer를 호출하면서 힙에 할당된 메시지 버퍼 끝을 1바이트 초과하여 읽게 되어 OOB read가 발생합니다. 이 단계만으로도 서비스 거단(DoS) 또는 이후 메모리 조작을 통한 추가 공격이 가능해집니다[교차검증].
악용 가능성: 해당 취약점은 네트워크를 통해 원격에서 접근 가능(AV:N)하고, 공격 복잡도가 낮으며(AC:L) 인증이 전혀 필요하지 않으므로(PR:N), 사용자 개입 없이 자동으로 실행될 수 있습니다(UI:N). IEC 60870‑5‑104 프로토콜의 TCP 2404 포트가 열려 있는 시스템이라면, TypeID 104(C_TS_NA_1)를 포함한 I‑frame을 조작해 객체 개수를 과다하게 설정함으로써 버퍼 끝을 한 바이트 초과 읽는 상황을 쉽게 재현할 수 있습니다. EPSS 점수가 현재 제공되지 않아 실제 악용 빈도는 확인되지 않았지만, CVSS 벡터가 보여 주듯 공격 전제조건이 매우 단순하므로 이론적으로 높은 위험성을 가지고 있습니다. KEV 리스트에 등재되지 않은 점은 아직 공개된 대규모 악용 사례가 없음을 의미하지만, 취약점 자체가 원격 코드 실행이나 서비스 거부로 이어질 가능성이 있으므로 주의가 필요합니다. 따라서 공격 표면은 IEC 60870‑5‑104 엔드포인트와 해당 I‑frame 구조(특히 객체 개수 파라미터)이며, 이 부분이 노출된 모든 장비가 잠재적 타깃이 됩니다.
💥 영향 분석
- 기술적 위험
- OOB read는 프로세스 크래시를 초래할 수 있어 가용성(C) L 수준의 서비스 중단을 야기합니다.
- 동일 메모리 영역에 이후 쓰기 연산이 존재한다면, 메모리 내용 유출 및 잠재적인 원격 코드 실행(RCE)으로 확대될 가능성이 있습니다(추정).
- 비즈니스 리스크
- IEC 60870‑5‑104를 사용하는 전력·자동화 시스템에서 서비스 중단은 운영 차질, 생산 손실 및 복구 비용 증가로 이어집니다.
- 산업 설비 안전을 규제하는 NERC CIP·IEC 61850 등 표준 준수 의무가 있는 경우, 가용성 저하가 컴플라이언스 위반으로 판단될 수 있습니다.
- 영향 제품·노출 규모
- 현재 영향을 받는 구체적인 제품은 공개되지 않아 “미상”이며, 다중 소스에서 일관성이 확인되었습니다[교차검증]. 따라서 IEC 60870‑5‑104 구현을 사용하는 모든 서버/클라이언트가 잠재적 대상이 됩니다.
🔗 관련 취약점·체이닝
동일한 메모리 오버플로/오프바운드 읽기 패턴은 과거 IEC 60870‑5‑101·102 시리즈에서 보고된 CVE‑2022‑xxxx와 유사합니다. 현재 확인된 직접적인 체이닝 CVE는 없으나, OOB read를 이용해 메모리 레이아웃을 파악한 뒤 ROP 가젯이나 함수 포인터 오버라이트를 수행하는 공격으로 연계될 가능성이 있습니다(추정).
🔎 탐지
- 네트워크: IDS/IPS에서
iec60870.typeid==104 && iec60870.objectCount>255와 같이 비정상적인 객체 개수 값을 경보로 설정합니다. - 호스트:
TestCommand_getFromBuffer호출 직후 발생하는 접근 위반(access violation) 또는 세그멘테이션 폴트 로그를 모니터링하고, 해당 프로세스 ID와 타임스탬프를 알림으로 전송합니다. - 실시간 메모리: eBPF 기반 커널 감시로 해당 버퍼 영역에 대한 비정상적인 읽기 시도를 기록하도록 구성할 수 있습니다.
🛡️ 완화 방안
- 즉시 조치
- IEC 60870‑5‑104 수신 모듈에서
objectCount값이 합리적인 범위(예: 0~255)를 초과하면 패킷을 폐기하도록 입력 검증 로직을 강화합니다. TestCommand_getFromBuffer앞에 경계 검사 코드를 삽입하여 OOB read를 차단합니다.- 네트워크 방화벽·IPS에서 위와 같은 비정상 프레임을 차단하는 규칙을 적용합니다.
- IEC 60870‑5‑104 수신 모듈에서
- 근본 해결
- 공급업체가 제공하는 보안 패치가 발표되면 신속히 배포하고, 패치 적용 현황을 주기적으로 검증합니다[우선순위 결정].
- 장기적으로는 메모리 안전성을 강화한 IEC 60870‑5‑104 스택(예: bounds‑checked 라이브러리)으로 교체를 고려하십시오.
우선순위: CVSS 6.5·exploit easy·KEV 미등재·EPSS 미확보인 점을 종합해 이번 주 내에 위 조치를 수행하도록 scheduled로 지정되었습니다.
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=6.5 · non-KEV · EPSS=미확보 · exploit=easy · in_scope=None