콘텐츠로 이동

클라이언트 측 방어 기능

F5 Distributed Cloud 클라이언트 측 방어(CSD)는 브라우저에서 직접 JavaScript 동작을 모니터링하여 웹 애플리케이션을 클라이언트 측 공격으로부터 보호합니다. F5 XC 로드 밸런서는 클라이언트에 제공되는 페이지에 CSD 텔레메트리 스크립트를 삽입하도록 구성할 수 있습니다. 이 스크립트는 모든 JavaScript 활동(어떤 스크립트가 로드되는지, 어떤 폼 필드를 읽는지, 어떤 네트워크 연결을 생성하는지)을 관찰합니다. 텔레메트리 데이터는 F5 XC 플랫폼으로 전송되며, 머신러닝 모델이 스크립트 동작을 분석하고 위험 점수를 부여하며 이상 징후를 표시합니다. 보안 팀은 CSD 콘솔에서 탐지 결과를 검토하고 스크립트 도메인을 허용하거나 완화하는 조치를 취합니다.

flowchart LR
    A["Browser JS"] --> B["CSD Telemetry Script"]
    B --> C["F5 XC Platform"]
    C --> D["ML Analysis"]
    D --> E["CSD Dashboard"]

CSD는 브라우저 측 동작의 세 가지 범주를 모니터링합니다:

신호CSD가 관찰하는 내용예시
폼 필드 읽기페이지 로드 시 DOM에 존재하는 input 필드에 어떤 스크립트가 액세스하는지/loginpassword 필드를 읽는 main.js
스크립트 인벤토리각 페이지에 로드된 모든 자사 및 서드파티 JavaScript를 소스 도메인별로 추적로그인 페이지에 cdn.jsdelivr.net에서 로드되는 새 <script> 태그가 나타남
네트워크 상호작용스크립트 네트워크 활동과 관련된 도메인 — 스크립트 로드 소스 도메인과 fetch/XHR 대상 도메인 모두 포함esm.sh에서 소싱된 스크립트와 탐지된 도메인에 나타나는 www.httpbin.org와 같은 데이터 유출 대상
기능설명콘솔 위치
스크립트 위험 점수자동 분류: 위험 없음, 낮은 위험, 높은 위험Script List → Risk Level 열
폼 필드 민감도필드 유형 및 이름을 기반으로 시스템이 자동으로 필드를 민감 항목으로 분류Form Fields 보기 → Analysis 열
동작 타임라인시간에 따른 스크립트 위험 수준, 소스 도메인 및 유형을 차트로 표시Script detail → Overview → Behaviors Over Time
영향받은 사용자 귀속IP, 지리적 위치, 브라우저 및 기기별로 영향받은 사용자 추적Script detail → Affected Users 탭
도메인 허용 목록신뢰할 수 있는 스크립트 도메인을 허용됨으로 표시Dashboard → domain row → Add To Allow List
도메인 완화 목록특정 스크립트 도메인의 네트워크 호출 및 폼 필드 읽기를 차단하여 데이터 유출 방지Dashboard → domain row → Add To Mitigate List
알림 구성새 도메인, 위험 변경, 의심스러운 동작에 대한 알림Notifications 섹션
스크립트 정당성스크립트가 승인된 이유를 설명하는 메모 추가 (PCI DSS 준수)Script detail → Justification 필드
트랜잭션 추적CSD가 활성 상태임을 확인하는 월별 텔레메트리 이벤트 카운터Dashboard → Transactions Consumed 카드
시간 및 위치 필터시간 범위(24h, 7d, 30d) 및 위치별로 모든 보기 필터링상단 표시줄 필터 컨트롤

CSD가 모니터링하지 않는 항목을 이해하는 것은 정확한 데모 기대치 설정에 매우 중요합니다:

제한 사항세부 정보확인됨
동적으로 생성된 필드CSD는 페이지 로드 시 DOM에 존재하는 input 필드를 추적합니다. 로드 후 JavaScript에 의해 삽입된 필드는 모니터링되지 않습니다. 스크립트가 읽는 동적으로 생성된 <input>은 Form Fields 보기에 나타나지 않습니다.예 — 10분 대기 후 /formFields에서 필드 부재 확인
코드 수준 난독화CSD는 동적 코드 실행 기법이나 난독화 패턴을 별도의 탐지 신호로 표시하지 않습니다. 난독화된 수집기는 난독화되지 않은 것과 동일한 위험 수준을 생성합니다 — CSD는 소스 코드 패턴이 아닌 동작 메타데이터를 추적합니다.예 — 두 기법 모두 동일하게 “High Risk”
폼 오버레이 필드CSD는 페이지 로드 시 원본 DOM에 있는 폼 필드만 추적합니다. JavaScript에 의해 삽입된 오버레이 폼(일반적인 디지털 스키밍 기법)은 추적되지 않으며 원본 필드 읽기만 탐지됩니다.예 — 10분 대기 후 /formFields에서 오버레이 필드 부재 확인
대시보드 카운터 동작”Found & Mitigated” 및 “Found & Allowed” 요약 카운트는 관리자가 도메인을 완화 또는 허용 목록에 명시적으로 추가한 후에만 변경됩니다. “Action Needed” 및 “Total Found” 카운트는 새 도메인이 탐지될 때 자동으로 업데이트됩니다.예 — “Found & Allowed”는 /allowed_domains에 POST 후에만 0에서 1로 변경됨

CSD는 결제 페이지 보안을 위한 두 가지 PCI DSS v4.0 요구사항을 직접적으로 처리합니다:

PCI DSS 요구사항요구 내용CSD의 처리 방식
6.4.3 — 결제 페이지의 스크립트 관리모든 스크립트의 인벤토리 유지, 각 스크립트에 대한 서면 승인 및 정당성 제공, 스크립트 무결성 검증Script List는 전체 인벤토리를 제공; Justification 필드는 승인을 문서화; 동작 타임라인은 변경 사항 추적
11.6.1 — 결제 페이지의 변조 탐지HTTP 헤더 및 결제 페이지 콘텐츠에 대한 무단 수정 탐지CSD 텔레메트리는 새 스크립트 삽입, 무단 폼 필드 읽기 및 새 네트워크 도메인을 탐지하여 페이지 동작 변경에 대한 알림 제공

다음 표는 일반적인 클라이언트 측 공격 범주를 각 공격 유형 중에 발동될 CSD 탐지 신호에 매핑합니다. *로 표시된 공격 유형은 F5 공식 문서에 의해 확인된 것입니다. 표시되지 않은 유형은 CSD의 탐지 신호 범주를 기반으로 추론된 것으로 F5에서 명시적으로 주장하지 않을 수 있습니다.

공격 범주설명필드 읽기스크립트 삽입네트워크
Formjacking *악성 스크립트가 폼 필드 값을 읽어 유출
디지털 스키밍 *결제 데이터를 캡처하기 위한 오버레이 폼 또는 스크립트 삽입
공급망 공격 *손상된 서드파티 라이브러리가 악성 코드 로드
데이터 유출 *민감한 데이터를 읽어 외부 도메인으로 전송
스크립트 삽입 *페이지에 무단 <script> 태그 삽입
크립토재킹 *암호화폐 채굴 스크립트 삽입
DOM 조작사용자를 기만하기 위한 페이지 요소 삽입 또는 수정
브라우저 내 중간자 공격브라우저 세션 내에서 폼 데이터 가로채기 — OWASPMITRE T1185 참조
클릭재킹사용자 클릭을 탈취하기 위한 보이지 않는 프레임 오버레이 — OWASP 참조
웹 스키머 지속성페이지 탐색 전반에 걸쳐 스키머 스크립트 재삽입 — Sansec Magecart Research 참조