End User Security: Account Takeover Protections with Cloudflare

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

คุณลักษณะมากมายของแพลตฟอร์ม Cloudflare สามารถช่วยเสริมการป้องกันการยึดครองบัญชีได้ ในโพสต์นี้ เราจะมาดูตัวอย่างต่างๆ รวมถึงประกาศคุณลักษณะใหม่ๆ อีกหลายรายการ ซึ่งรวมถึงคุณลักษณะต่อไปนี้

  • รายการพร็อกซีเปิดที่ได้รับการจัดการ (ใหม่): ตรวจสอบการดำเนินการยืนยันตัวตนในแอปของคุณว่าไม่ได้มาจากบริการพร็อกซี
  • Super Bot Fight Mode (ใหม่): ป้องกันการรับส่งข้อมูลอัตโนมัติจากปลายทางการยืนยันตัวตนของคุณ
  • การตรวจสอบข้อมูลประจำตัวที่ถูกเปิดเผย (ใหม่): รับคำเตือนเมื่อผู้ใช้เข้าสู่ระบบด้วยข้อมูลประจำตัวที่ถูกละเมิด คุณสมบัตินี้สามารถใช้เพื่อเริ่มขั้นตอนการยืนยันตัวตนแบบสองขั้นตอนหรือรีเซ็ตรหัสผ่านได้
  • Cloudflare Access: เพิ่มการยืนยันตัวตนอีกขั้นด้วยการผสานการทำงานอย่างง่ายดายกับบริการ OATH จากภายนอก และเร็วๆ นี้จะมาพร้อมกับตัวเลือกการบังคับใช้อุปกรณ์ที่ได้รับการจัดการ (ใหม่)
  • การจํากัดอัตราการเข้าสู่ระบบล้มเหลว: หยุดยั้งความพยายามโจมตีแบบ Credential Stuffing อย่างรุนแรงกับแอปพลิเคชันของคุณ

เมื่อใช้งานร่วมกัน คุณลักษณะเหล่านี้จะเป็นเครื่องมือที่มีประสิทธิภาพและใช้งานง่ายเพื่อเพิ่มความปลอดภัยของบัญชีผู้ใช้ปลายทาง

รายการพร็อกซีเปิดของ Cloudflare

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

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

The new Open Proxies managed list - can be found under Account Home → Configurations → Lists or used directly in a custom rule
รายการพร็อกซีเปิดที่ได้รับการจัดการใหม่จะอยู่ในส่วน "หน้าหลักบัญชี → การกำหนดค่า → รายการ" หรือใช้งานได้โดยตรงในกฎที่กำหนดเอง

เมื่อรวมรายการ IP เข้ากับตัวกรองเพิ่มเติมในตอนที่เขียนกฎไฟร์วอลล์แบบกำหนดเอง คุณจะสามารถลดความเสี่ยงจากความพยายามเข้าสู่ระบบที่เป็นอันตรายในปลายทางการยืนยันตัวตนของคุณได้ การเขียนกฎที่ใช้รายการใหม่ด้วย Wirefilter Syntax จะมีลักษณะดังนี้

http.request.uri.path contains "/login" and (not ip.src in $cf.open_proxies and cf.bot_management.score < 30)

การดำเนินการยืนยันตัวตนใดๆ จะถูกบล็อกหรือตรวจสอบตามการดำเนินการที่เลือกในกฎ SOCK และรายการ IP พร็อกซีมีให้บริการสำหรับลูกค้าองค์กรทั้งหมด

Super Bot Fight Mode และการตรวจจับการละเมิด API

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

โชคดีที่เมื่อไม่นานมานี้ เราได้เปิดตัว Super Bot Fight Mode ซึ่งเป็นคุณลักษณะที่รวมอยู่ในแผนโปรและแผนธุรกิจทั้งหมด และเราได้นำไปจับคู่กับการวิเคราะห์แบบเรียลไทม์ เพื่อให้คุณเห็นการโจมตีตามเวลาที่เกิดขึ้นจริง Super Bot Fight Mode สร้างขึ้นมาเพื่อหยุดยั้ง Credential Stuffing เราใช้กลไกการตรวจจับมากมายในเบื้องหลังเช่นเดียวกันกับที่ใช้สร้างผลิตภัณฑ์การจัดการบอทสำหรับองค์กร

Our new Super Bot Fight Mode. Can be found under Firewall → Bots
โหมด Super Bot Fight Mode ใหม่ของเรา จะอยู่ภายใต้ไฟร์วอลล์ → บอท

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

การตรวจสอบข้อมูลประจำตัวที่ถูกเปิดเผย

ผู้โจมตีแบบ Credential Stuffing จะพยายามเข้าสู่ระบบบัญชีเป้าหมายด้วยการจับคู่ชื่อผู้ใช้/รหัสผ่าน ซึ่งเป็นข้อมูลประจำตัวของผู้ใช้ที่เคยถูกขโมยมาจากการละเมิดบริการอื่น และก็มักจะได้ผลด้วย เนื่องจากผู้ใช้มากกว่า 50% ใช้รหัสผ่านซ้ำสำหรับหลายบัญชี จึงส่งผลให้มีบัญชีที่ถูกละเมิดจำนวนมาก ความปลอดภัยของบัญชีผู้ใช้ปลายทางของคุณจึงต้องอาศัยทั้งความปลอดภัยในระบบของคุณเอง และความปลอดภัยของระบบอื่นๆ ที่ผู้ใช้ได้ใช้งานด้วย ถึงแม้ว่าการยืนยันตัวตนแบบหลายขั้นตอนจะช่วยเพิ่มการป้องกันได้มากขึ้น บริการยืนยันตัวตนหลายแห่งและผู้ใช้ก็ยังไม่ได้นำมาใช้งาน เราจึงต้องการแจ้งเตือนบริการและผู้ใช้บริการต่างๆ เมื่อการจับคู่ชื่อผู้ใช้/รหัสผ่านตกอยู่ในความเสี่ยง

นอกเหนือจากวิธีอื่นๆ เช่น การตรวจจับบอท แนวทางใหม่ที่ดีที่สุดในอุตสาหกรรมก็คือ การให้บริการเข้าสู่ระบบตรวจสอบตนเองว่ามีข้อมูลประจำตัวของผู้ใช้รายใดที่พบการละเมิดข้อมูลหรือไม่ ซึ่งการดำเนินการเช่นนี้จำเป็นต้องมีชุดข้อมูลที่ดีของการจับคู่ชื่อผู้ใช้/รหัสผ่านที่ถูกพบว่าละเมิด บริการต่างๆ อย่างเช่น Have I Been Pwned และ Google’s Password Breach Alerting จะรวบรวมฐานข้อมูลขนาดใหญ่ของการจับคู่ชื่อผู้ใช้/รหัสผ่านที่ถูกพบว่าละเมิดและอนุญาตให้บริษัทหรือผู้ใช้ปลายทางค้นหาข้อมูลเหล่านั้นเพื่อประเมินความเสี่ยง แต่การผสานการทำงานก็อาจเป็นเรื่องยุ่งยาก และตามหลักแล้ว องค์กรต่างๆ จะสามารถเปิดการป้องกันการตรวจสอบข้อมูลประจำตัวได้ด้วยปุ่มเดียว

เราเองก็ทำแบบนั้น และในวันนี้ เราก็ได้เปิดตัวคุณลักษณะใหม่อย่าง เว็บแอปพลิเคชันไฟร์วอลล์ (WAF): การตรวจสอบข้อมูลประจำตัวที่ถูกเปิดเผย

Exposed Credential Checks can be easily enabled with our Managed Ruleset. Alternatively, you can write your own custom rules.
Exposed Credential Checks can be easily enabled with our Managed Ruleset. Alternatively, you can write your own custom rules.‌‌

การตรวจสอบข้อมูลประจำตัวที่ถูกเปิดเผยสามารถเปิดใช้งานได้ง่ายๆ ด้วยชุดกฎที่ได้รับการจัดการของเราหรือคุณจะเขียนกฎที่กำหนดเองก็ได้‌‌

คำขอเข้าสู่ระบบของแอปพลิเคชันใดๆ ที่ได้รับการปกป้องจาก Cloudflare จะส่งผ่าน WAF และจะเป็นโอกาสให้ตรวจสอบข้อมูลประจำตัวที่ถูกเปิดเผย "ระหว่างทาง" เมื่อเปิดใช้งาน WAF ในการดำเนินการยืนยันตัวตน WAF จะตรวจสอบข้อมูลประจําตัวผู้ใช้ปลายทางโดยอัตโนมัติกับฐานข้อมูลข้อมูลประจำตัวที่รั่วไหล ซึ่งรวมรวบและเก็บรักษาไว้โดย Cloudflare ในกรณีที่พบข้อมูลตรงกัน WAF จะเพิ่มส่วนหัวไปยังข้อมูลต้นทาง เพื่อให้แอปพลิเคชันของคุณได้รับคำเตือนถึงข้อมูลประจำตัวที่มีความเสี่ยง และอาจทริกเกอร์ขั้นตอนการรีเซ็ตรหัสผ่านให้ผู้ใช้รายนั้นหรือให้ลองยืนยันตัวตนด้วยขั้นตอนที่สอง เป็นต้น

การจัดการชื่อผู้ใช้และรหัสผ่านเป็นเรื่องละเอียดอ่อนอย่างมาก และเราได้ออกแบบคุณลักษณะการตรวจสอบข้อมูลประจำตัวที่ถูกเปิดเผยเพื่อคุ้มครองข้อมูลประจําตัวผู้ใช้ โดยมีหลักการออกแบบหลักคือ การจับคู่ชื่อผู้ใช้/รหัสผ่านต้องไม่ถูกเปิดเผยออกไปนอกเหนือขอบเขตของกระบวนการ WAF จึงช่วยยืนยันได้ว่าเราสามารถทำการตรวจสอบได้โดยไม่ต้องเพิ่มความเสี่ยงใดๆ เข้ามาอีก ซึ่งหมายความว่า คุณลักษณะนี้จะไม่ส่งชื่อผู้ใช้หรือรหัสผ่านออกไปนอกกระบวนการ WAF หรือบันทึกข้อมูลไว้1 เนื่องจากเราไม่ได้ต้องการทราบรายละเอียดของข้อมูลประจำตัว ยกเว้นเฉพาะเมื่อข้อมูลนั้นมีความเสี่ยงต่อความปลอดภัยของเครือข่ายคุณ และที่เหนือไปกว่านั้นคือ เราได้สร้างโปรโตคอลเข้ารหัสลับที่คุ้มครองความเป็นส่วนตัวเพื่อทำการค้นหาในฐานข้อมูล ถ้าจะพูดง่ายๆ ก็คือ เราใช้คุณสมบัติการแฮชแบบเข้ารหัสลับด้วยคีย์กับการจับคู่ชื่อผู้ใช้/รหัสผ่านภายในกระบวนการ WAF แล้วตรวจสอบว่าค่าแฮชที่ได้ตรงกับแฮชการจับคู่ที่มีคีย์จากฐานข้อมูลประจำตัวที่พบการละเมิดหรือไม่ เราจะอธิบายประเด็นนี้เพิ่มเติมในเนื้อหาเจาะลึกทางเทคนิคต่อไป

ตั้งแต่วันนี้เป็นต้นไป ลูกค้า Enterprise จะสามารถร้องขอการเข้าถึงคุณลักษณะนี้ได้โดยติดต่อทีมของเราที่หน้านี้ การตรวจสอบข้อมูลประจำตัวที่ถูกเปิดเผยมีให้บริการทั้งที่เป็นชุดกฎที่ได้รับการจัดการ ซึ่งจะทำงาน "ได้ทันที" สำหรับระบบทั่วไป เช่น WordPress และ Joomla เป็นต้น ส่วนอีกแบบหนึ่งจะเป็นตัวกรองสำหรับกฎที่กำหนดเอง เพื่อรองรับการทำงานในทุกรูปแบบ

Cloudflare Access ในอุปกรณ์ที่ได้รับการจัดการ

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

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

เพื่อแก้ไขปัญหานี้ เราจึงกำลังพัฒนา Cloudflare Access เพื่อบังคับให้เฉพาะอุปกรณ์ขององค์กรเท่านั้นที่จะเข้าถึงแอปพลิเคชันที่ละเอียดอ่อนได้ กฎการเข้าถึงช่วยให้สามารถตรวจสอบยืนยันหมายเลขประจำเครื่องของอุปกรณ์กับรายการอุปกรณ์ที่ได้รับการจัดการได้ก่อนที่จะอนุญาตการเข้าถึง ถึงแม้ว่าข้อมูลประจำตัวของผู้ใช้จะถูกเปิดเผย แต่การเข้าถึงที่ไม่ได้รับอนุญาตก็จะถูกบล็อกเนื่องจากหมายเลขประจำเครื่องของอุปกรณ์ไม่อยู่ในรายการอุปกรณ์ที่ได้รับการจัดการ ดูข้อมูลเพิ่มเติมได้ในประกาศล่าสุดของเรา

การจํากัดอัตราการเข้าสู่ระบบล้มเหลว

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

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

The rule above rate limits any IP after 5 consecutive failed login attempts in a minute for 1 hour.
กฎทางด้านบน จะจำกัดอัตราการเข้าสู่ระบบด้วย IP ใดๆ ก็ตามเป็นเวลา 1 ชั่วโมงหลังจากดำเนินการเข้าสู่ระบบล้มเหลวติดต่อกันเกิน 5 ครั้งภายใน 1 นาที

การตอบกลับเพื่อแจ้งการจํากัดอัตราสามารถปรับแต่งได้ตามความจำเป็นเพื่อรองรับทั้ง API ที่มีเพย์โหลด JSON หรือปลายทางที่ใช้ HTML มาตรฐาน

การจํากัดอัตราพร้อมให้ใช้งานสำหรับลูกค้าแบบบริการตนเองทุกรายเป็นส่วนเสริมแบบชำระเงิน

แผนงานในอนาคต

เรากำลังทุ่มเทเวลามากมายเพื่อคิดหาวิธีรักษาความปลอดภัยของบัญชีผู้ใช้ปลายทางอย่างยอดเยี่ยมด้วยโซลูชันแบบคลิกเดียวที่ใช้งานง่าย

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

.....
1คุณลักษณะ Cloudflare อื่นๆ เช่น การบันทึกเพย์โหลด WAF ที่เข้ารหัส อาจบันทึกองค์ประกอบคำขอต่างๆ แต่จะมีการเข้ารหัสด้วยคีย์สาธารณะที่ลูกค้ามอบให้
2รายงานการทดสอบการแทรกซึมหลายรายการจะชี้ให้เห็นความแตกต่างในการตอบสนองต่อการดำเนินการเข้าสู่ระบบล้มเหลวเป็นความเสี่ยงในการเปิดเผยข้อมูล