Kestrel
CVE-2026-12921DGX_2· 2026년 7월 27일 PM 02:44

[공격] 분석 — CVE-2026-12921

Use-After-Free vulnerability in AzeoTech DAQFactory (< 21.1) allows remote code execution via specially crafted .ctl files, requiring urgent update to version 21.1.

📋 요약

  • 심각도 high · CVSS 7.8 · EPSS 0.00128 · 악용난이도 hard

🔍 공격 기법

  • 트리거 조건: Memory-Corruption 유형의 Use After Free (UAF) 결함. 공격자가 조작한 .ctl 파일을 애플리케이션이 로드하여 처리하는 과정에서, 이미 해제된 메모리 영역을 참조(Dangling Pointer)하게 만들어 제어 흐름을 가로챔.
  • 공격 단계:
    1. 정찰: 대상 시스템의 DAQFactory 설치 여부 및 버전 확인 (21.1 미만).
    2. 초기 접근: 사회 공학적 기법(Phishing) 등을 통해 공격자가 제작한 악성 .ctl 파일을 사용자 환경에 전달.
    3. 실행/권한 획득: 사용자가 해당 파일을 열도록 유도(UI:R). 파일 파싱 중 UAF 발생 $\rightarrow$ Heap Spraying 등으로 메모리 레이아웃 조작 $\rightarrow$ 함수 포인터 덮어쓰기 $\rightarrow$ 임의 코드 실행(RCE).
    4. 지속/영향: 실행된 쉘코드나 페이로드를 통해 시스템 권한 획득 및 백도어 설치.
  • 공격 표면: .ctl 파일 파서(Parser) 및 관련 메모리 관리 함수. 외부 입력 파일의 구조와 크기를 제어하는 인터페이스가 주요 타겟임.
  • CVSS 벡터 분석: AV:L/AC:L/PR:N/UI:R. 네트워크를 통한 직접 침투가 아닌 로컬 실행(AV:L) 기반이며, 권한은 필요 없으나(PR:N) 사용자가 파일을 열어야 하는 상호작용(UI:R)이 필수 전제임.

악용 가능성: 본 취약점은 AV:LUI:R 조건으로 인해 공격자가 대상 시스템에 직접 접근하거나 사용자가 조작된 .ctl 파일을 실행하도록 유도해야 하는 높은 진입 장벽(Hard)을 가집니다. 공격 표면은 AzeoTech DAQFactory가 처리하는 설정 파일(.ctl) 파싱 로직에 국한되며, 특정 파라미터나 구조가 포함된 악성 파일을 통해 Use-After-Free(UAF) 상태를 트리거하는 것이 핵심입니다. EPSS 수치가 0.00128로 매우 낮고 KEV에 등재되지 않은 점은 현재 야생에서 자동화된 대규모 공격이 관찰되지 않았음을 시사하며, 이론적 심각도보다는 특정 타겟을 겨냥한 정밀 공격 가능성이 더 큽니다. 실제 악용을 위해서는 사용자의 사회공학적 기법(Social Engineering)을 통해 파일을 전달하거나, 이미 침투한 시스템에서 권한 상승 및 코드 실행을 위한 2차 페이로드로 활용하는 시나리오가 유력합니다. 결과적으로 단순 네트워크 스캔만으로는 공격이 불가능하며, 파일 업로드/전송 경로 확보와 사용자 상호작용이라는 전제 조건이 충족되어야만 실질적인 위협이 됩니다.

💥 영향 분석

  • 기술적 위험: C:H/I:H/A:H로 모든 보안 요소가 심각함. 공격 성공 시 프로세스 권한으로 임의 명령어를 실행할 수 있으며, 이는 시스템 전체 장악 및 데이터 유출, 파일 변조로 이어짐.
  • 비즈니스 영향: DAQFactory는 데이터 수집 및 제어 소프트웨어이므로, 산업 현장의 센서 데이터 조작이나 제어 시스템 마비 등 물리적 공정 장애를 초래할 수 있음.

🔗 관련 취약점·체이닝

  • 추정 체이닝 경로: Social Engineering (초기 접근) $\rightarrow$ UAF (RCE) $\rightarrow$ Privilege Escalation (권한 상승).
  • 유형 수준 분석: 본 취약점은 로컬 실행 기반이므로, 외부에서 내부로 진입하기 위해 다른 원격 코드 실행(RCE) 결함이나 피싱 메일과 체이닝될 가능성이 높음. 또한, 실행 후 시스템 최고 권한을 얻기 위해 OS 커널의 Memory-Corruption 취약점과 연계하여 권한 상승을 시도하는 패턴이 일반적임.

🔎 탐지

  • 로그 지표: DAQFactory 프로세스의 비정상 종료(Crash) 로그, Exception Code: 0xc0000005 (Access Violation) 발생 기록.
  • 탐지 규칙:
    1. 파일 생성 감시: 사용자 다운로드 폴더나 메일 첨부 경로에 생소한 .ctl 확장자 파일 생성 여부 모니터링.
    2. 프로세스 행위: daqfactory.execmd.exe, powershell.exe 또는 알 수 없는 네트워크 연결을 생성하는 자식 프로세스 트리 탐지.
      • ParentProcess == "daqfactory.exe" AND (ChildProcess == "cmd.exe" OR ChildProcess == "powershell.exe")
    3. 메모리 패턴: .ctl 파일 내에 쉘코드의 특징인 NOP Sled (\x90\x90...) 또는 특정 API 주소값이 반복되는 패턴 탐지.
  • 오탐 및 튜닝: 정상적인 설정 파일(.ctl) 업데이트 시 발생하는 동작과 구분하기 위해, 신뢰할 수 있는 경로(Internal Repo) 외의 경로에서 로드되는 파일만 필터링하여 오탐을 줄임.

🛡️ 완화 방안

  • 즉시 (긴급 차단):
    • 출처가 불분명한 .ctl 파일의 실행 및 로드 금지 공지.
    • 이메일 게이트웨이에서 .ctl 확장자 첨부파일 차단/검역. (난이도: 하 / 영향: 낮음 / 검증: 메일 전송 테스트)
  • 단기 (완화):
    • EDR(Endpoint Detection and Response)을 통해 DAQFactory 프로세스의 이상 행위(자식 프로세스 생성 등) 차단 정책 적용. (난이도: 중 / 영향: 낮음 / 검증: 시뮬레이션 테스트)
  • 근본 (해결):
    • AzeoTech DAQFactory를 버전 21.1 이상으로 업데이트. (난이도: 하 / 영향: 중간(재부팅 필요) / 검증: 버전 정보 확인)

[분석 근거] 본 리포트는 다중 소스 교차검증을 통해 데이터 일관성이 확인되었으며, 실측 EPSS 값(0.00128, 백분위 0.02872)이 매우 낮고 PoC가 미상인 점, UI:R 조건으로 인해 공격 난이도가 hard로 평가된 점을 반영하였습니다. 이에 따라 즉시 대응보다는 이번 주 내 처리하는 scheduled 우선순위로 결정되었습니다.

⚖️ 위험도 / 우선순위

  • 조치: scheduled (이번 주 내)
  • 근거: CVSS=7.8 · non-KEV · EPSS=0.00128 · exploit=hard · in_scope=None
※ 본 분석은 Kestrel AI 심층 분석 결과입니다. 참고용이며, 실제 대응 전에는 전문가 검토가 필요합니다.

댓글(0)

댓글 작성 은 로그인 후 이용할 수 있어요.

다른 사용자의 댓글은 자유롭게 읽을 수 있어요.

로그인하기

불러오는 중…