[공격] 분석 — CVE-2026-15680
CVE-2026-15680 is a remote, unauthenticated format‑string RCE in Lorex 2K Indoor Wi‑Fi cameras; immediate network segmentation and firmware patching are required.
📋 요약
- 심각도 high · CVSS 7.5 · EPSS 0.0026 · 악용난이도 hard
🔍 공격 기법
- 공격 표면: Lorex 카메라가 실행 중인
sonia바이너리의 HTTP/HTTPS JSON API(기본 포트 80·443). 파라미터formatString(예시) 등 사용자 입력을 그대로printf‑계열 함수에 전달함. - 정찰: 동일 LAN 혹은 VLAN 내에서 카메라 IP와 열린 80/443 포트를 스캔하고,
/api/v1/config·/json같은 엔드포인트가 존재하는지 확인한다(HTTP 200 응답 및 JSON 구조 분석). - 초기 접근: 인증이 필요 없으므로 임의의 JSON 요청을 전송한다. 예시 페이로드는
{"cmd":"log","msg":"%x %x %n"}형태로,%포맷 토큰이 포함된 문자열을sonia가 파싱하도록 만든다. - 실행·권한 획득:
printf‑계열 함수에 전달된 사용자 문자열이 검증되지 않아 형식 지정자(%n,%x등)를 이용해 메모리 주소를 임의로 쓰게 된다. 이를 통해 루트 권한으로 실행 중인sonia프로세스의 제어 흐름을 조작하고, 쉘코드 혹은 시스템 콜을 삽입한다(실제 코드 실행 시점은AV:A,PR:N). - 지속: 공격자는
/etc/init.d/sonia·시스템 시작 스크립트 또는 카메라 설정 파일에 영구적 명령을 삽입해 재부팅 후에도 루트 쉘을 유지할 수 있다. - 영향: 전체 카메라 장치가 완전 제어되며, 내부 네트워크에서 다른 호스트로 피벗하거나 영상 스트림을 탈취·조작할 수 있다.
CVSS 벡터 AV:A/AC:H/PR:N/UI:N는 공격이 동일 LAN에 물리적으로 인접해야 함을 의미하지만 인증 없이 진행 가능하므로 방어 경계가 낮다. EPSS 0.0026(백분위 0.17678)·hard 등급은 현재 실전 악용 확률이 낮지만, high 채택 심각도와 루트 RCE 특성으로 우선 대응이 필요함을 강조한다(교차 검증 결과 일관됨).
악용 가능성: 이 취약점은 AV가 Adjacency(A)로 정의돼 있어 공격자는 카메라와 동일한 로컬 네트워크에 존재해야 하며, 원격 인터넷을 통한 직접 접근은 불가능합니다. AC가 High(H)인 만큼 성공적인 악용을 위해서는 정확히 포맷 문자열이 전달되는 JSON 파라미터의 구조와 메모리 레이아웃을 사전에 분석하고, 이를 기반으로 정교한 페이로드를 구성해야 합니다. PR은 None(N)이라 인증이 필요 없지만, UI가 None(N)인 점은 사용자의 직접적인 조작 없이도 자동화된 요청이 가능함을 의미합니다. EPSS 0.0026이라는 매우 낮은 실측값과 KEV 미등재는 현재까지 이 취약점이 실제 공격에 활용된 사례가 거의 없으며, 위협 인식도가 낮다는 점을 보여줍니다. 공격 표면은 카메라 내부의 sonia 바이너리가 제공하는 JSON API이며, 특히 문자열을 포맷 지정자로 사용하기 전에 검증하지 않는 특정 파라미터가 노출됩니다. 따라서 공격자는 해당 엔드포인트를 탐지한 뒤, 정확히 맞춤형 포맷 문자열을 전송해 루트 권한으로 코드 실행을 시도해야 하며, 이 과정에서 메모리 주소 추정 및 스택/힙 구조 파악 등 고난이도의 리버스 엔지니어링 역량이 요구됩니다.
💥 영향 분석
- 루트 권한 원격 코드 실행: 카메라 OS 전체를 장악하고 임의 파일 수정·삭제가 가능.
- 영상·오디오 탈취·조작: 실시간 스트림을 가로채거나 위변조할 수 있음.
- 네트워크 피벗: 동일 VLAN/서브넷 내 다른 장치에 대한 스캔·공격 기반 마련.
🔗 관련 취약점·체이닝
- 형식 문자열(CWE‑134): 입력 검증 부재로 인한 메모리 오버라이트, RCE와 직접 연결됨.
- 네트워크 서비스 노출: 카메라 관리 API가 외부에 개방돼 있으면 추가적인 인증 우회 취약점(예: 디폴트 크레덴셜)과 결합해 공격 범위 확대 가능.
- 추정: 동일 제품군에서 발견된 파일 경로 조작(CWE‑22)이나 취약한 펌웨어 업데이트 메커니즘이 존재한다면, RCE 후 지속성을 위해 해당 취약점과 체인될 수 있다.
🔎 탐지
- IDS/IPS 로그에
"%[xn]"등 형식 지정자를 포함하는 JSON 페이로드가 전송된 경우 경보. sonia프로세스 비정상 종료·재시작, 혹은/var/log/sonia.log에 “format string” 관련 오류 메시지 기록.- 네트워크 트래픽에서 동일 LAN 내 카메라 IP로 향하는 HTTP POST 요청 중 Content‑Length가 비정상적으로 큰 경우.
🛡️ 완화 방안
- 즉시: 해당 카메라를 VLAN/서브넷으로 격리하고, 외부·비신뢰 네트워크와의 80/443 접근을 차단한다.
- 패치 적용: Lorex에서 제공하는 펌웨어 업데이트가 공개되면 즉시 적용한다(공식 패치가 없을 경우 공급업체에 긴급 대응 요청).
- 입력 검증 강화: 프록시 혹은 WAF를 이용해 JSON 본문에
%·%n등 형식 지정자를 포함한 문자열을 차단한다. - 모니터링:
sonia프로세스 메모리 무결성 및 로그 변조 감지를 위해 HIDS/EDR 에이전트를 배포한다. - 장기: 모든 IoT 카메라에 대해 정기적인 펌웨어 관리와 네트워크 세분화 정책을 수립한다.
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=7.5 · non-KEV · EPSS=0.0026 · exploit=hard · in_scope=None