Page Shield is generally available

การโจมตีซัพพลายเชนเป็นปัญหาที่เพิ่มขึ้นสำหรับ CIO และผู้เชี่ยวชาญด้านความปลอดภัย

ระหว่างการโจมตีซัพพลายเชน ผู้โจมตีจะพยายามทำลายเครื่องมือหรือไลบรารีของบุคคลที่สามที่แอปพลิเคชันเป้าหมายกำลังใช้งานอยู่ ซึ่งโดยปกติแล้วจะส่งผลให้ผู้โจมตีได้รับสิทธิ์ในการเข้าถึงสภาพแวดล้อมของแอปพลิเคชัน จนขโมยข้อมูลส่วนตัวหรือทำการโจมตีในภายหลังได้ ตัวอย่างเช่น Magecart เป็นการโจมตีแบบซัพพลายเชนโดยทั่วไป โดยที่ผู้โจมตีขโมยข้อมูลบัตรเครดิตจากแบบฟอร์มการชำระเงินของไซต์อีคอมเมิร์ซโดยการเจาะไลบรารีของบุคคลที่สามที่ไซต์ดังกล่าวใช้

แต่วันนี้เราจึงได้เปิดตัว Page Shield ใน General Availability (GA) เพื่อช่วยระบุและบรรเทาการโจมตีของซัพพลายเชนในบริบทของเว็บแอปพลิเคชัน

ด้วย Page Shield คุณจะมองเห็นได้ว่าสคริปต์ใดกำลังทำงานอยู่ในแอปพลิเคชันของคุณ และขอให้มีการแจ้งเตือนเมื่อสคริปต์มีช่องโหว่หรือแสดงพฤติกรรมที่เป็นอันตราย เช่น การพยายามกรองข้อมูลผู้ใช้

เราทำงานกันอย่างเต็มที่เพื่อทำให้ Page Shield ใช้งานง่าย: คุณสามารถค้นหาได้ภายใต้แท็บ Firewall และเปิดใช้งานด้วยการคลิกเพียงครั้งเดียว โดยไม่จำเป็นต้องกำหนดค่าเพิ่มเติม และยังสามารถตั้งค่าการแจ้งเตือนแยกกันในอาร์เรย์ของเหตุการณ์ต่าง ๆ

The Page Shield interface showing the list of scripts detected on the zone

Page Shield คืออะไร

ย้อนกลับไปในเดือนมีนาคมของปีนี้ เราประกาศให้สิทธิ์เข้าถึง Page Shield ล่วงหน้า นี่คือโซลูชันที่เราใช้ปกป้องข้อมูลผู้ใช้ปลายทางจากการหาช่องโหว่ที่มุ่งเป้าไปที่เบราว์เซอร์

ก่อนหน้านี้ เราประกาศการซื้อกิจการ Zaraz ซึ่งเป็นเครื่องมือที่สร้างขึ้นบน Workers เพื่อช่วยให้ลูกค้าสามารถโหลดเครื่องมือของบุคคลที่สามบนคลาวด์ได้อย่างง่ายดายโดยตรงจาก Cloudflare UI พร้อมประโยชน์ด้านประสิทธิภาพและความปลอดภัยทันที แทนการโหลดโค้ด JavaScript ในเบราว์เซอร์ แต่ไม่ใช่ว่าทุกแอปพลิเคชันจะใช้หรือต้องการใช้ตัวจัดการบุคคลที่สาม อย่างไรก็ตาม เราให้ความคุ้มครองแก่คุณแล้ว

Page Shield ใช้ประโยชน์จากบทบาทในฐานะ reverse proxy ของเราในเครือข่าย เพื่อรับข้อมูลเกี่ยวกับไฟล์ JavaScript และโมดูลที่กำลังโหลดจากเบราว์เซอร์โดยตรง จากนั้นเราจะให้การมองเห็นภาพรวม วิเคราะห์ และเตือนคุณเมื่อใดก็ตามที่ไฟล์ JavaScript แสดงพฤติกรรมที่เป็นอันตราย

ตัวอย่างของไฟล์ JavaScript ที่มีช่องโหว่ ได้แก่ การโจมตีของ Magecart, การขุดคริปโต และแอดแวร์ แอปพลิเคชันและบริการที่ใช้ SaaS ได้รับความนิยมเพิ่มขึ้นเรื่อย ๆ จึงเป็นเรื่องยากมากที่จะพบแอปพลิเคชันที่ไม่ใช้ประโยชน์หรือโหลดโค้ด JavaScript โดยตรงจากบุคคลที่สามที่อยู่นอกเหนือการควบคุมของเจ้าของแอปพลิเคชัน ทำให้การตรวจจับและบรรเทาผลกระทบจากไฟล์ที่ถูกบุกรุกทำได้ยากขึ้น

การรักษาความปลอดภัยฝั่งไคลเอนต์ยากเพียงใด

ข้อบ่งชี้เบื้องต้นจาก Page Shield ระบุว่า โดยเฉลี่ยแล้ว แอปพลิเคชันใด ๆ ก็ตามกำลังโหลดสคริปต์จากโฮสต์บุคคลที่สามแปดโฮสต์ องค์กรขนาดใหญ่อาจเป็นเจ้าของโฮสต์เหล่านี้ เช่น Google ให้กับบริษัทขนาดเล็กที่นำเสนอโมดูล "plug and play" เพื่อปรับปรุงฟังก์ชันการทำงานของเว็บแอปพลิเคชันได้อย่างรวดเร็ว (ระบบ think chat, ตัวเลือกวันที่ แพลตฟอร์มการชำระเงิน ฯลฯ) บุคคลที่สามเหล่านี้แต่ละรายกลายเป็นเป้าหมายการโจมตีซัพพลายเชนที่อาจเกิดขึ้นได้ ทำให้พื้นผิวการโจมตีมีขนาดใหญ่มากและยากต่อการตรวจสอบ

ที่แย่ไปกว่านั้นคือ สิ่งต่าง ๆ เปลี่ยนไปอย่างรวดเร็ว โดยเฉลี่ยแล้วประมาณ 50% ของแอปพลิเคชันกำลังโหลดสคริปต์จากโฮสต์บุคคลที่สามรายใหม่ทุกเดือน สิ่งนี้บ่งชี้ว่าพื้นผิวการโจมตีไม่เพียงแต่มีขนาดใหญ่เท่านั้น แต่ยังเปลี่ยนแปลงอย่างรวดเร็วอีกด้วย

Page Shield ทำงานอย่างไร

เราสามารถนึกถึง Page Shield ว่าคือบริการที่ให้การมองเห็น การตรวจจับ การบรรเทาผลกระทบ และการป้องกัน เช่นเดียวกับผลิตภัณฑ์รักษาความปลอดภัยอื่น ๆ ขั้นตอนแรกคือความสามารถในการมองเห็นได้

ความสามารถในการมองเห็นได้

เมื่อเปิดใช้งาน การวนซ้ำปัจจุบันของ Page Shield จะใช้นโยบายความปลอดภัยของเนื้อหา (CSP) ที่นำมาใช้ร่วมกับreport-only directive เพื่อรวบรวมข้อมูลจากเบราว์เซอร์ ซึ่งช่วยให้เราสามารถจัดเตรียมรายการสคริปต์ทั้งหมดที่ทำงานอยู่ในแอปพลิเคชันของคุณได้

ในแง่ HTTP นี่คือส่วนหัวการตอบสนอง HTTP ที่เพิ่มไปยังตัวอย่างการตอบกลับของหน้าจากเซิร์ฟเวอร์ต้นทางกลับไปที่เบราว์เซอร์ ส่วนหัว CSP มีลักษณะดังนี้:

content-security-policy-report-only: script-src 'none'; report-uri /cdn-cgi/script_monitor/report

ส่วนหัวด้านบนแนะนำเบราว์เซอร์ว่าไม่ควรโหลดสคริปต์ใด ๆ (script-src 'none') และเพื่อรายงานการละเมิดไปยังปลายทางที่ให้มา (report-uri /cdn-cgi/script_monitor/report) นอกจากนี้ โปรดทราบด้วยว่าปลายทางรายงานการละเมิดจะแก้ไขไปยังเครือข่าย Cloudflare ที่มีการประมวลผล ดังนั้นจึงไม่มีการรับส่งข้อมูลเพิ่มเติมไปยังเซิร์ฟเวอร์ต้นทาง

รายงานการละเมิดแต่ละฉบับที่ส่งโดยเบราว์เซอร์ เป็นการดำเนินการตามคำขอ HTTP POST จะให้ข้อมูลเกี่ยวกับสคริปต์กับเรา ต่อไปนี้คือตัวอย่าง:

{
   "csp-report":{
      "document-uri":"https://www.example.com/",
      "referrer":"",
      "violated-directive":"script-src-elem",
      "effective-directive":"script-src-elem",
      "original-policy":"script-src 'none'; report-uri /cdn-cgi/script_monitor/report",
      "Disposition":"report",
      "blocked-uri":"https://cdnjs.cloudflare.com/ajax/libs/jquery/3.2.1/jquery.min.js",
      "status-code":200,
      "script-sample":""
   }
}

รายงานนี้บอกเราว่า:

  • หน้าที่โหลดสคริปต์มา (document-uri)
  • ผู้อ้างอิง ถ้ามี
  • คำสั่ง CSP ใดที่ถูกละเมิด
  • CSP แบบเต็มที่รวมคำสั่ง
  • ลิงก์แบบเต็มไปยังไฟล์ JavaScript
  • รหัสตอบกลับที่เบราว์เซอร์ได้รับเมื่อกำลังโหลดไฟล์ ในตัวอย่างข้างต้น รหัสตอบกลับคือ 200 ซึ่งระบุว่าโหลดไฟล์สำเร็จแล้ว

ด้วยการรวบรวมข้อมูลทั้งหมดที่ให้ไว้ในรายงานและปรับปรุงด้วยข้อมูลเพิ่มเติม เราสามารถนำเสนอข้อมูลโดยละเอียดเกี่ยวกับทุกสคริปต์ที่โหลดโดยแอปพลิเคชันของคุณทั้งที่ผ่าน Cloudflare UI และ API

โซน Cloudflare Pro ทั้งหมดสามารถเข้าถึงรายงานสคริปต์ Page Shield ของเราได้ นอกจากนี้ โซน Business และโซน Enterprise ยังมีการเข้าถึงข้อมูลการระบุแหล่งที่มาของหน้าเพจ ซึ่งจะช่วยให้คุณระบุได้อย่างรวดเร็วว่าสคริปต์ถูกโหลดจากที่ใดภายในแอปพลิเคชันของคุณ โซน Business และโซน Enterprise สามารถตั้งค่าการเตือนเหตุการณ์การเปลี่ยนแปลงสคริปต์จำนวนหนึ่งได้

การตรวจจับ

เจ้าของแอปพลิเคชันอาจใช้นโยบายการรักษาความปลอดภัยของเนื้อหาอยู่แล้วเพื่อให้แน่ใจว่ามีการโหลดสคริปต์บางสคริปต์เท่านั้น อย่างไรก็ตาม CSP มักจะเปิดกว้างเกินไป และเบราว์เซอร์ไม่มีกลไกดั้งเดิมที่จะตรวจจับเมื่อไฟล์ JavaScript แสดงพฤติกรรมที่เป็นอันตราย ซึ่งรวมถึงโค้ด JavaScript ที่อนุญาตให้โหลดได้ตามนโยบายการรักษาความปลอดภัยของเนื้อหา ซึ่งเท่ากับเป็นการลดประสิทธิภาพของ CSP ลงอย่างมาก

เราเชื่อว่า Page Shield จะมอบโอกาสที่แท้จริงในการช่วยลูกค้าตรวจจับพฤติกรรมที่เป็นอันตราย

สำหรับไฟล์ JavaScript ที่ระบบพบในโซนของคุณนั้น เราจะดำเนินการหลายอย่างเพื่อตรวจหาพฤติกรรมที่เป็นอันตราย:

  1. ไฟล์ JavaScript ที่โหลดจากชื่อโฮสต์ที่จัดอยู่ในกลุ่มที่เป็นอันตรายในฟีดภัยคุกคามของเราจะถูกตั้งค่าสถานะอย่างเหมาะสม ซึ่งรวมถึงโดเมนหลักด้วย
  2. ในทำนองเดียวกัน หาก URL ที่เจาะจงถูกจัดประเภทว่าเป็นอันตรายในฟีดของเรา URL ก็จะถูกตั้งค่าสถานะด้วย ซึ่งในเคสหลังนี้ เนื่องจากไฟล์ถูกจัดประเภทว่าเป็นอันตราย การโจมตีจึงน่าจะดำเนินต่อไป
  3. สุดท้าย เราจะดาวน์โหลดไฟล์และเรียกใช้ผ่านตัวแยกประเภทของเรา ตัวแยกประเภทจะใช้ขั้นตอนการถอดรหัสที่สร้างความสับสน การทำให้เป็นมาตรฐาน และการถอดรหัส ก่อนที่จะค้นหาความสัมพันธ์ระหว่างการดึงข้อมูลจากช่องข้อมูลแบบฟอร์มและการเรียกการกรองข้อมูล ยิ่งมีความสัมพันธ์ที่แน่นแฟ้นมากขึ้นเท่าใด สคริปต์ก็จะทำการโจมตีประเภท Magecart มากขึ้นเท่านั้น เราจะโพสต์รายละเอียดทางเทคนิคเพิ่มเติมเกี่ยวกับเทคโนโลยีของเราในโพสต์ติดตาม อย่าลืมคอยติดตาม!

ลูกค้าองค์กรของเราสามารถซื้อชุดความสามารถของ Page Shield ทั้งชุด ซึ่งรวมถึงความสามารถในการตรวจจับ โปรดติดต่อผู้จัดการบัญชีของคุณ

ในขณะที่เราสร้างผลิตภัณฑ์เพิ่มเติมต่อในปีหน้า เราวางแผนที่จะเพิ่มสัญญาณการตรวจจับเพิ่มเติม ปรับปรุงตัวแยกประเภทและตรวจจับประเภทการโจมตีเพิ่มเติม รวมถึงแอดแวร์ แรนซัมแวร์ และการขุดคริปโต

เมื่อสัญญาณที่เป็นอันตรายถูกทริกเกอร์บนไฟล์ JavaScript สิ่งที่ Cloudflare จะทำคือแจ้งให้คุณทราบผ่านการแจ้งเตือนที่สามารถตั้งค่าผ่านอีเมล เว็บฮุค, PagerDuty และรูปแบบอื่นๆ

การป้องกันและการบรรเทาผลกระทบ

ลูกค้ารายใหญ่ของเราจำนวนมากมีนโยบายการรักษาความปลอดภัยของเนื้อหาอยู่แล้ว และแม้ว่าจะเพิ่มส่วนหัวการตอบสนองที่ปรับใช้ CSP ผ่าน Cloudflare แต่เราทำได้ดีกว่า

แม้เราไม่ได้รวมตัวเลือกการป้องกันและบรรเทาผลกระทบในการเปิดตัวนี้ในทันที แต่เรากำลังทำงานอย่างเต็มที่เพื่อรวมตัวเลือกทั้งสองนี้เข้ากับ Page Shield:

  • การป้องกันโดยอนุญาตให้สร้าง CSP ได้ง่ายตามสคริปต์ที่ใช้งานที่สังเกตได้ ทำให้สามารถแก้ไขและปรับใช้นโยบายใหม่ได้ตามต้องการผ่านแดชบอร์ดหรือผ่าน API ซึ่งเป็นส่วนหนึ่งของไปป์ไลน์การปรับใช้ได้โดยตรง
  • การปิดกั้นโดยใช้ประโยชน์จากพร็อกซีของเราเพื่ออนุญาตให้ลบสคริปต์ที่เป็นอันตรายแบบอินไลน์ออกจากเนื้อหาการตอบสนอง HTTP

เริ่มต้นใช้งาน

หากคุณมีเว็บไซต์บน Cloudflare อยู่แล้ว ให้อัปเกรดเป็นแผนชำระเงินแบบใดก็ได้ของเราเพื่อเริ่มใช้ประโยชน์จากคุณสมบัติ Page Shield วันนี้โดยไม่ต้องกำหนดค่าเพิ่มเติม หรือจะเลือกใช้ API เพื่อใช้ประโยชน์จากคุณสมบัติ Page Shield ก็ย่อมได้

หากคุณไม่มีเว็บไซต์บน Cloudflare ลงทะเบียนสมัครแค่ 5 นาทีเท่านั้น!