English Advisory →
CVE-2023-389507.5/HIGHCISA KEV 등재CWE-22CWE-22

ZKTeco ZKBioTime iclock API 경로 이탈(Path Traversal) 임의 파일 읽기 취약점 (CVE-2023-38950) 보안 권고

⚡ 패치 명령어 바로가기
영향받는 벤더 / 생태계
zkteco
대상 컴포넌트 / 패키지
biotime, zkbiotime
권고문 발행일
2023-08-03
CVSS v3.1
7.5
HIGH
30일 악용확률
92.5%
FIRST.org
CISA KEV
악용 확인됨

실무자 핵심 요약 (Executive Summary)

SECOPS ASSESSMENT
영향 대상

ZKTeco ZKBioTime v8.5.5 및 9.0.120240617.19506 미만 버전

파급 효과

인증되지 않은 원격 공격자가 특수하게 조작된 페이로드를 전송하여 서버 내 임의의 민감한 시스템 파일을 무단으로 탈취할 수 있습니다

권장 조치

즉시 공식 패치가 적용된 최신 버전(9.0.120240617.19506 이상)으로 업그레이드하고 외부 노출을 차단하십시오

영향받는 제품 및 버전 범위

ZKTeco ZKBioTime v8.5.5를 포함하여 버전 9.0.120240617.19506 미만의 모든 빌드 버전

권장 패치 및 임시 완화(Workaround) 가이드

패치 및 우회 명령어

1. 공식 보안 패치 및 버전 업그레이드 명령어

ZKTeco 공식 지원 채널을 통해 제공되는 최신 보안 패치 버전(9.0.120240617.19506 이상)으로 즉시 업그레이드를 수행하십시오.

bash
# ZKBioTime 서비스를 중지하고 최신 설치 패키지를 적용합니다.
# (Windows 환경의 경우 서비스 관리자에서 'ZKBioTime' 관련 서비스를 중지하십시오)
net stop 'ZKBioTime Service'

# 최신 패치 버전 설치 프로그램을 실행하여 업그레이드를 완료한 후 서비스를 재시작합니다.
net start 'ZKBioTime Service'

2. 패치 전 임시 완화(Workaround) 및 접근 제어 설정

즉각적인 패치 적용이 어려운 경우, 리버스 프록시(Nginx 등) 또는 WAF(웹 애플리케이션 방화벽)를 사용하여 외부로부터의 iclock API 직접 접근을 차단하거나 디렉터리 탐색 패턴을 필터링하십시오.

nginx
# Nginx 리버스 프록시 설정 예시: iclock API에 대한 경로 이탈 공격 패턴 차단
server {
    listen 80;
    server_name biotime.local;

    location /iclock/ {
        # 경로 이탈 문자열(..)이 포함된 요청을 원천 차단
        if ($request_uri ~* '\.\./') {
            return 403 'Access Denied: Malicious Request Detected';
        }
        proxy_pass http://127.0.0.1:8081;
    }
}

3. 침해 흔적(IoC) 및 로그·버전 점검 스크립트

웹 서버 및 ZKBioTime 액세스 로그에서 디렉터리 탐색 공격 시도가 있었는지 점검하십시오.

bash
# Linux 환경에서 Nginx/Apache 액세스 로그 내 경로 이탈 공격 흔적 검색
grep -Ei 'iclock.*(\.\./|\.\.\\)' /var/log/nginx/access.log /var/log/apache2/access.log 2>/dev/null

# Windows PowerShell을 이용한 IIS 또는 애플리케이션 로그 내 공격 패턴 검색
Get-ChildItem -Path 'C:\Program Files\BioTime\logs' -Recurse | Select-String -Pattern 'iclock.*(\.\./|\.\.\\)'
실무자 패치 대응 자가 점검 체크리스트
0/4 (0%)
권장 아키텍처 방어 통제 (Recommended Security Control)
Cloudflare Enterprise & Pro WAF
CISA KEV에 등재되어 실제 악용이 확인된 고위험 취약점이므로, 즉시 ZKBioTime을 최신 안전 버전으로 업데이트하십시오.

코드 수정 전에도 가상 패치(Virtual Patching)로 웹 공격을 즉시 차단하세요

서버 재시작이나 긴급 패치가 어려운 운영 환경이라면 클라우드 WAF 관리형 룰셋을 활성화하여 SQLi, RCE, XSS 익스플로잇 페이로드를 엣지에서 1분 만에 차단할 수 있습니다.

평균 설정 시간 3분 · Zero-Day 자동 룰 업데이트
이 웹 취약점(WAF 우회 & RCE)을 안전한 실습 랩에서 직접 재현해 보세요
실습 랩 & 보안 강의 보러가기

취약점 발생 원리 및 공격 메커니즘

1. 취약점 개요 및 발생 원인 (Root Cause)

본 취약점(CVE-2023-38950)은 ZKTeco ZKBioTime 근태관리 솔루션의 iclock API 엔드포인트에서 발생하는 경로 이탈(Path Traversal, CWE-22) 취약점입니다. 외부 입력값에 대한 적절한 검증 및 필터링 메커니즘이 결여되어 있어, 공격자가 상위 디렉터리로 이동할 수 있는 특수 문자열(예: ../ 또는 이의 인코딩 형태)을 삽입하여 웹 루트 디렉터리를 벗어난 시스템 내부 파일에 접근할 수 있습니다.

2. 공격 메커니즘 및 익스플로잇 시나리오

공격자는 별도의 사용자 인증을 거치지 않은 상태(Unauthenticated)에서 iclock API를 대상으로 HTTP 요청을 전송합니다. 요청 매개변수 내에 파일 경로를 지정하는 부분에 디렉터리 탐색 시퀀스(../../../../etc/passwd 또는 Windows 환경의 경우 ..\..\..\..\windows\win.ini)를 삽입하여 전송하면, 취약한 서버는 이를 그대로 해석하여 해당 경로의 파일 콘텐츠를 HTTP 응답 바디에 담아 반환합니다. 이 취약점은 실제 야생에서 악용된 사례가 확인되어 CISA KEV(Known Exploited Vulnerabilities) 카탈로그에 등재되었습니다.

3. 비즈니스 및 인프라 파급 영향

이 취약점이 성공적으로 악용될 경우, 공격자는 데이터베이스 연결 정보(DB Credentials), 환경 설정 파일, 시스템 계정 정보 및 기타 민감한 비즈니스 데이터를 무단으로 획득할 수 있습니다. 이는 2차 공격으로 이어져 데이터베이스 침해, 관리자 권한 탈취, 나아가 내부 네트워크 전체로의 횡적 이동(Lateral Movement)을 허용하는 심각한 보안 위협을 초래합니다.

공식 보안 권고문 및 참조 링크

자주 묻는 실무 질문 (FAQ — CVE-2023-38950)

FAQ

Q1. CVE-2023-38950 취약점의 위험도와 실제 악용 가능성은 어느 정도입니까?

CVE-2023-38950의 기본 점수는 CVSS 7.5 (HIGH)이며, 향후 30일 내 실제 악용 확률을 나타내는 EPSS 점수는 92.5%입니다. 현재 미국 CISA KEV(실제 악용이 확인된 취약점 카탈로그)에 등재되어 있으므로 최우선 긴급 패치가 필요합니다.

Q2. CVE-2023-38950에 영향을 받는 벤더와 제품은 무엇입니까?

주요 영향 벤더는 zkteco이며, 대상 컴포넌트는 biotime, zkbiotime입니다. 상세 영향 범위: ZKTeco ZKBioTime v8.5.5를 포함하여 버전 9.0.120240617.19506 미만의 모든 빌드 버전

Q3. 서버 재기동이나 정규 패치 전 즉시 적용할 수 있는 완화 조치(Workaround)는 무엇입니까?

[권장 조치] 즉시 공식 패치가 적용된 최신 버전(9.0.120240617.19506 이상)으로 업그레이드하고 외부 노출을 차단하십시오 본문의 패치 및 우회 명령어 섹션과 자가 점검 체크리스트를 참고하여 외부 노출 포트를 차단하거나 WAF 탐지 규칙을 선적용하십시오.

실무자 보고서 워크벤치 연동

CVE-2023-38950 사내 보안 패치 공지문 · CISO 경영진 보고서 초안 자동 생성

클릭 한 번으로 사내 이메일·노션·결재 문서에 바로 붙여넣을 수 있는 공식 보고서 양식을 생성합니다.

보고서 초안 생성하기 →

🔗 함께 점검해야 할 동일 벤더·스택 연관 취약점 (zkteco)

동일 카테고리 전체 보기 →
SecOps Advisory Dispatch & RSS Feed

일간 취약점 브리핑 및 긴급 Zero-Day 경보 구독

보안 실무자와 인프라·백엔드 엔지니어를 위해 매일 아침 주요 취약점과 패치 우선순위를 요약해 발송합니다.

Slack / Teams / RSS 리더 연동:
패치 명령EN
CVE-2023-38950 ZKTeco ZKBioTime iclock API 경로 이탈(Path Traversal) 임의 파일 읽기 취약점 (CVE-2023-38950) 보안 권고 (CVSS 7.5) - 패치 및 보안 권고 | CVE Pulse