- หน้าแรก
- การป้องกันฝั่งไคลเอนต์
- ความสามารถของการป้องกันฝั่งไคลเอนต์
ความสามารถของการป้องกันฝั่งไคลเอนต์
F5 Distributed Cloud Client-Side Defense (CSD) ปกป้องเว็บแอปพลิเคชันจากการโจมตีฝั่งไคลเอนต์โดยการตรวจสอบพฤติกรรมของ JavaScript โดยตรงในเบราว์เซอร์ โหลดบาลานเซอร์ F5 XC สามารถกำหนดค่าให้แทรกสคริปต์เทเลเมทรีของ CSD เข้าไปในหน้าเพจที่ให้บริการแก่ไคลเอนต์ สคริปต์นี้จะสังเกตกิจกรรม JavaScript ทั้งหมด ได้แก่ สคริปต์ที่โหลด ฟิลด์ฟอร์มที่อ่าน และการเชื่อมต่อเครือข่ายที่สร้างขึ้น ข้อมูลเทเลเมทรีจะถูกส่งไปยังแพลตฟอร์ม F5 XC ซึ่งโมเดล Machine Learning จะวิเคราะห์พฤติกรรมของสคริปต์ กำหนดคะแนนความเสี่ยง และตั้งค่าสถานะความผิดปกติ ทีมความปลอดภัยตรวจสอบการตรวจจับในคอนโซล 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 สังเกต | ตัวอย่าง |
|---|---|---|
| การอ่านฟิลด์ฟอร์ม | สคริปต์ใดเข้าถึงฟิลด์ input ใดที่มีอยู่ใน DOM ของหน้าเพจขณะโหลด | main.js อ่านฟิลด์ password บน /login |
| รายการสคริปต์ | JavaScript ทั้งหมดทั้งฝั่งเจ้าของและบุคคลที่สามที่โหลดในแต่ละหน้า โดยติดตามตามโดเมนต้นทาง | แท็ก <script> ใหม่ที่โหลดจาก cdn.jsdelivr.net ปรากฏขึ้นในหน้าล็อกอิน |
| การโต้ตอบเครือข่าย | โดเมนที่เกี่ยวข้องกับกิจกรรมเครือข่ายของสคริปต์ ครอบคลุมทั้งโดเมนต้นทางของการโหลดสคริปต์และโดเมนปลายทางของ fetch/XHR | สคริปต์ที่มาจาก esm.sh และเป้าหมายการขโมยข้อมูล เช่น www.httpbin.org ปรากฏในโดเมนที่ตรวจพบ |
เมทริกซ์คุณสมบัติ
หัวข้อที่มีชื่อว่า “เมทริกซ์คุณสมบัติ”| คุณสมบัติ | คำอธิบาย | ตำแหน่งในคอนโซล |
|---|---|---|
| การให้คะแนนความเสี่ยงสคริปต์ | การจำแนกประเภทอัตโนมัติ: ไม่มีความเสี่ยง, ความเสี่ยงต่ำ, ความเสี่ยงสูง | รายการสคริปต์ → คอลัมน์ระดับความเสี่ยง |
| ความละเอียดอ่อนของฟิลด์ฟอร์ม | จำแนกฟิลด์เป็น Sensitive (โดยระบบ) อัตโนมัติตามประเภทและชื่อฟิลด์ | มุมมองฟิลด์ฟอร์ม → คอลัมน์การวิเคราะห์ |
| ไทม์ไลน์พฤติกรรม | แผนภูมิระดับความเสี่ยงของสคริปต์ โดเมนต้นทาง และประเภทตามเวลา | รายละเอียดสคริปต์ → ภาพรวม → พฤติกรรมตามเวลา |
| การระบุผู้ใช้ที่ได้รับผลกระทบ | ติดตามผู้ใช้ที่ได้รับผลกระทบโดย IP, ตำแหน่งทางภูมิศาสตร์, เบราว์เซอร์, และอุปกรณ์ | รายละเอียดสคริปต์ → แท็บผู้ใช้ที่ได้รับผลกระทบ |
| รายการโดเมนที่อนุญาต | ทำเครื่องหมายโดเมนสคริปต์ที่เชื่อถือได้เป็นรายการที่อนุญาต | แดชบอร์ด → แถวโดเมน → เพิ่มในรายการที่อนุญาต |
| รายการโดเมนที่บรรเทา | บล็อกการเรียกเครือข่ายและการอ่านฟิลด์ฟอร์มจากโดเมนสคริปต์ที่ระบุ เพื่อป้องกันการขโมยข้อมูล | แดชบอร์ด → แถวโดเมน → เพิ่มในรายการที่บรรเทา |
| การกำหนดค่าการแจ้งเตือน | การแจ้งเตือนสำหรับโดเมนใหม่ การเปลี่ยนแปลงความเสี่ยง และพฤติกรรมที่น่าสงสัย | ส่วนการแจ้งเตือน |
| การให้เหตุผลสคริปต์ | เพิ่มบันทึกอธิบายว่าเหตุใดสคริปต์จึงได้รับอนุญาต (การปฏิบัติตาม PCI DSS) | รายละเอียดสคริปต์ → ฟิลด์เหตุผล |
| การติดตามธุรกรรม | ตัวนับเหตุการณ์เทเลเมทรีรายเดือนที่ยืนยันว่า CSD ทำงานอยู่ | แดชบอร์ด → การ์ดธุรกรรมที่ใช้ |
| ตัวกรองเวลาและตำแหน่ง | กรองมุมมองทั้งหมดตามช่วงเวลา (24 ชั่วโมง, 7 วัน, 30 วัน) และตำแหน่ง | ตัวควบคุมตัวกรองในแถบด้านบน |
ขอบเขตการตรวจจับ
หัวข้อที่มีชื่อว่า “ขอบเขตการตรวจจับ”การทำความเข้าใจสิ่งที่ CSD ไม่ได้ ตรวจสอบเป็นสิ่งสำคัญสำหรับการตั้งความคาดหวังในการสาธิตที่ถูกต้อง:
| ข้อจำกัด | รายละเอียด | ยืนยันแล้ว |
|---|---|---|
| ฟิลด์ที่สร้างแบบไดนามิก | CSD ติดตามฟิลด์ input ที่มีอยู่ใน DOM ขณะโหลดหน้าเพจ ฟิลด์ที่ถูกแทรกโดย JavaScript หลังการโหลดจะไม่ถูกตรวจสอบ <input> ที่สร้างแบบไดนามิกซึ่งถูกอ่านโดยสคริปต์จะไม่ปรากฏในมุมมองฟิลด์ฟอร์ม | ใช่ — ฟิลด์ไม่ปรากฏใน /formFields หลังรอ 10 นาที |
| การสับสนโค้ด | CSD ไม่ตั้งค่าสถานะเทคนิคการรันโค้ดแบบไดนามิกหรือรูปแบบการสับสนเป็นสัญญาณการตรวจจับแยกต่างหาก โปรแกรมเก็บข้อมูลที่สับสนให้ระดับความเสี่ยงเท่ากับที่ไม่ได้สับสน — CSD ติดตามข้อมูลเมตาด้านพฤติกรรม ไม่ใช่รูปแบบซอร์สโค้ด | ใช่ — “High Risk” เหมือนกันสำหรับทั้งสองเทคนิค |
| ฟิลด์แบบฟอร์มโอเวอร์เลย์ | CSD ติดตามเฉพาะฟิลด์ฟอร์มที่มีอยู่ใน DOM ดั้งเดิมขณะโหลดหน้าเพจ แบบฟอร์มโอเวอร์เลย์ที่แทรกโดย JavaScript (เทคนิคการสกิมมิ่งดิจิทัลที่พบบ่อย) จะไม่ถูกติดตาม — ตรวจจับเฉพาะการอ่านฟิลด์ดั้งเดิมเท่านั้น | ใช่ — ฟิลด์โอเวอร์เลย์ไม่ปรากฏใน /formFields หลังรอ 10 นาที |
| พฤติกรรมตัวนับในแดชบอร์ด | จำนวนสรุป “Found & Mitigated” และ “Found & Allowed” จะเปลี่ยนแปลงเฉพาะเมื่อผู้ดูแลระบบเพิ่มโดเมนในรายการบรรเทาหรืออนุญาตอย่างชัดเจน จำนวน “Action Needed” และ “Total Found” จะอัปเดตอัตโนมัติเมื่อตรวจพบโดเมนใหม่ | ใช่ — “Found & Allowed” เปลี่ยนจาก 0 เป็น 1 หลังจาก POST ไปที่ /allowed_domains เท่านั้น |
การแมปกับ PCI DSS v4.0
หัวข้อที่มีชื่อว่า “การแมปกับ PCI DSS v4.0”CSD ตอบสนองความต้องการ PCI DSS v4.0 สองรายการสำหรับความปลอดภัยของหน้าชำระเงินโดยตรง:
| ข้อกำหนด PCI DSS | สิ่งที่กำหนด | วิธีที่ CSD ตอบสนอง |
|---|---|---|
| 6.4.3 — การจัดการสคริปต์บนหน้าชำระเงิน | รักษารายการสคริปต์ทั้งหมด ให้การอนุญาตและเหตุผลเป็นลายลักษณ์อักษรสำหรับแต่ละรายการ ยืนยันความสมบูรณ์ของสคริปต์ | รายการสคริปต์ให้รายการสินค้าคงคลังที่ครบถ้วน ฟิลด์เหตุผลบันทึกการอนุญาต ไทม์ไลน์พฤติกรรมติดตามการเปลี่ยนแปลง |
| 11.6.1 — การตรวจจับการแทรกแซงบนหน้าชำระเงิน | ตรวจจับการแก้ไขที่ไม่ได้รับอนุญาตในส่วนหัว HTTP และเนื้อหาหน้าชำระเงิน | เทเลเมทรี CSD ตรวจจับการแทรกสคริปต์ใหม่ การอ่านฟิลด์ฟอร์มที่ไม่ได้รับอนุญาต และโดเมนเครือข่ายใหม่ — แจ้งเตือนเมื่อพฤติกรรมของหน้าเพจเปลี่ยนแปลง |
เมทริกซ์ความครอบคลุมภัยคุกคาม
หัวข้อที่มีชื่อว่า “เมทริกซ์ความครอบคลุมภัยคุกคาม”ตารางต่อไปนี้แมปประเภทการโจมตีฝั่งไคลเอนต์ทั่วไปกับสัญญาณการตรวจจับของ CSD ที่จะทำงานระหว่างการโจมตีแต่ละประเภท ประเภทการโจมตีที่ทำเครื่องหมายด้วย * ได้รับการยืนยันโดย เอกสารทางการของ F5 ประเภทที่ไม่มีเครื่องหมายเป็นการอนุมานตามประเภทสัญญาณการตรวจจับของ CSD และอาจไม่ได้รับการอ้างสิทธิ์อย่างชัดเจนโดย F5
| ประเภทการโจมตี | คำอธิบาย | การอ่านฟิลด์ | การแทรกสคริปต์ | เครือข่าย |
|---|---|---|---|---|
| Formjacking * | สคริปต์อันตรายอ่านค่าฟิลด์ฟอร์มและขโมยออกไป | ใช่ | — | ใช่ |
| Digital skimming * | แทรกแบบฟอร์มโอเวอร์เลย์หรือสคริปต์เพื่อดักจับข้อมูลการชำระเงิน | ใช่ | ใช่ | ใช่ |
| Supply chain attack * | ไลบรารีบุคคลที่สามที่ถูกโจมตีโหลดโค้ดอันตราย | — | ใช่ | ใช่ |
| Data exfiltration * | อ่านข้อมูลที่ละเอียดอ่อนและส่งไปยังโดเมนภายนอก | ใช่ | — | ใช่ |
| Script injection * | แทรกแท็ก <script> ที่ไม่ได้รับอนุญาตเข้าไปในหน้าเพจ | — | ใช่ | ใช่ |
| Cryptojacking * | แทรกสคริปต์ขุดสกุลเงินดิจิทัล | — | ใช่ | ใช่ |
| DOM manipulation | แทรกหรือแก้ไของค์ประกอบหน้าเพจเพื่อหลอกลวงผู้ใช้ | — | ใช่ | — |
| Man-in-the-Browser | ดักจับข้อมูลฟอร์มภายในเซสชันเบราว์เซอร์ — ดู OWASP และ MITRE T1185 | ใช่ | — | ใช่ |
| Clickjacking | วางเฟรมที่มองไม่เห็นทับเพื่อจี้การคลิกของผู้ใช้ — ดู OWASP | — | ใช่ | — |
| Web skimmer persistence | แทรกสคริปต์สกิมเมอร์ซ้ำข้ามการนำทางหน้าเพจ — ดู Sansec Magecart Research | — | ใช่ | ใช่ |