ใช้รหัสซ้ำระวังโดนถูกนำมาทดลองล็อกอินซ้ำแบบอัตโนมัติด้วย Credential Stuffing

โดย admin

2 นาที
แชร์
Blog Thumbnail

ใช้รหัสซ้ำระวังโดนถูกนำมาทดลองล็อกอินซ้ำแบบอัตโนมัติด้วย Credential Stuffing

By Puttharak Morrat,

Penetration Tester Team, Datafarm Company Limited

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

Credential Stuffing: เมื่อ “รหัสที่หลุด” ถูกนำมาทดลองล็อกอินซ้ำแบบอัตโนมัติ

Credential Stuffing เป็นรูปแบบการโจมตีที่แฮคเกอร์เค้าใช้ชุดข้อมูลล็อกอินที่เคยรั่วไหลมาก่อน เช่นพวก Email และ Password แล้วนำไปทดลองล็อกอินของบริการอื่น ๆ เป็นจำนวนมากครับ โดยจะเป็ยการทำแบบ Automation เป็นหลัก เพราะว่าแนวคิดของการโจมตีนี้ไม่ใช่การเดารหัสผ่าน แต่เป็นการใช้ “ข้อมูลที่น่าจะถูกต้องอยู่แล้ว” จากเหตุการณ์ข้อมูลรั่วไหลในอดีตมาใช้ครับ

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

Credential Stuffing ต่างจาก Brute Force อย่างไร

ให้เห็นภาพกันชัดๆ เลย Credential Stuffing มักจะถูกเข้าใจผิดว่าเป็น Brute Force แต่จริงๆ แล้วต่างกัน

  • Brute Force คือการพยายามเดารหัสผ่านด้วยการลองหลายๆ ค่า
  • Credential Stuffing คือการนำ “คู่ข้อมูลล็อกอินที่มีอยู่แล้ว” ไปทดลองกับระบบอื่น

ในเชิงการป้องกัน ความต่างนี้สำคัญมาก เพราะ Credential Stuffing มักไม่สร้าง “ความผิดพลาดต่อบัญชีเดียว” จำนวนมากแบบ Brute Force แต่กระจายความพยายามไปหลายบัญชีและหลาย Endpoint ทำให้การตรวจจับต้องอาศัยเชิงพฤติกรรมและภาพรวมมากขึ้นครับ

Attack Flow: ภาพรวมการโจมตีแบบเป็นขั้นตอน

  1. Credentials ถูกนำมาจากเหตุการณ์ข้อมูลรั่วไหล

สาเหตุมักเป็นการที่ข้อมูลรั่วไหลจากบริการใดบริการหนึ่งในอดีต ผู้ใช้จำนวนมากอาจไม่ได้ใช้งานบริการนั้นแล้ว แต่ “รหัสผ่านชุดเดิม” อาจจะถูกนำไปใช้ซ้ำในบริการอื่น

  1. แฮคเกอร์ทำ Automation เพื่อทดลองล็อกอินเป็นจำนวนมาก

การทดลองไม่ได้ทำแบบ Manual แต่ใช้ Automation เพื่อเพิ่มจำนวนความพยายามต่อเวลา และลดต้นทุนต่อการลองลงให้ต่ำที่สุด หลายกรณีมีการใช้ Proxy Infrastructure เพื่อกระจายทราฟฟิกและเลี่ยงการจำกัดความถี่แบบง่ายๆ

  1. เมื่อพบบัญชีที่ล็อกอินสำเร็จ จะเกิด Account Takeover

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

  1. ผลกระทบมักขยายไปยังบริการอื่นแบบโดมิโน

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

ทำไม Credential Stuffing ถึงยังเป็นปัญหาใหญ่

  • Password Reuse ยังเกิดขึ้นจริงและเกิดขึ้นมาก

Credential Stuffing อาศัยความจริงข้อเดียวก็คือ “บางคนยังใช้รหัสซ้ำ” และในระบบขนาดใหญ่ แค่บางส่วนก็เพียงพอที่จะสร้างความเสียหายที่คุ้มค่าต่อแฮคเกอร์ได้

  • ต้นทุนการโจมตีต่ำ แต่ผลลัพธ์มีมูลค่าสูง

การทดลองล็อกอินเป็น Action ที่ต้นทุนต่ำเมื่อเทียบกับผลตอบแทนที่เป็นไปได้ เช่น การยึดบัญชีที่มีแต้มสะสม ข้อมูลส่วนตัว ประวัติการสั่งซื้อ หรือสิทธิ์เข้าถึงระบบงาน

  • การป้องกันแบบพื้นฐานไม่เพียงพอเสมอไป

หลายระบบมีกลไกป้องกันแบบ Rate Limit ต่อ IP หรือ Lock Account แบบตรงไปตรงมา แต่แฮคเกอร์ก็สามารถกระจายทราฟฟิก หรือเลือก Pattern ที่ลดโอกาสถูกล็อกได้ ทำให้ต้องพึ่งการตรวจจับเชิงพฤติกรรม

สัญญาณที่ควรสังเกตุ (มุมผู้ใช้งานและมุมผู้ดูแลบริการ)

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

ในมุมผู้ดูแลบริการ สัญญาณที่พบได้บ่อยคือ

  • ปริมาณการพยายามล็อกอินเพิ่มขึ้นผิดปกติในช่วงเวลาสั้น
  • อัตรา Login Failure สูง แต่กระจายไปหลายบัญชี
  • พฤติกรรมซ้ำๆ ที่คล้าย Automation เช่น User-Agent รูปแบบเดิม การเปลี่ยนบัญชีเร็วผิดปกติ หรือรูปแบบ Request ที่มีความสม่ำเสมอเกินมนุษย์

แนวทางการลดความเสี่ยง

สำหรับผู้ใช้

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

ในการเปิดใช้การยืนยันตัวตนหลายปัจจัย (MFA) ก็ยังช่วยลดโอกาสที่จะถูก Account Takeover ในกรณีที่รหัสผ่านหลุดได้อย่างมีนัยสำคัญ แม้ไม่ได้ปิดช่องทางทั้งหมดก็ตามครับ

สำหรับองค์กรหรือผู้ให้บริการ

ในส่วนของฝั่งระบบนั้น OWASP ได้มีการแนะนำแนวคิดสำคัญ เช่น การจำกัดความถี่แบบเหมาะสม การทำ Bot Mitigation การทำ Monitoring และการออกแบบขั้นตอนกู้คืนบัญชีให้ปลอดภัยมากพอ

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

สรุป

Credential Stuffing จะเป็นการโจมตีที่เน้นไปที่ “การใช้ข้อมูลเดิมซ้ำ” มากกว่าการเดารหัส และทำงานได้ดีเมื่อผู้ใช้ยังมีพฤติกรรม Reuse Password อยู่ครับ ความเสี่ยงหลักคือการนำไปสู่การโดน Account Takeover และผลกระทบแบบโดมิโน โดยเฉพาะเมื่อบัญชีอีเมลหลักถูกยึดได้

ในเชิงการป้องกัน แนวทางที่มีประสิทธิภาพที่สุดคือการทำให้รหัสผ่านไม่สามารถ Reuse ข้ามบริการได้ในทางปฏิบัติ และเสริมด้วยมาตรการยืนยันตัวตนเพิ่มเติม ในฝั่งระบบต้องพึ่งพาการป้องกันเชิงพฤติกรรม การตรวจจับ Automation และการออกแบบกระบวนการกู้คืนบัญชีที่รัดกุม

References

แชร์
กลับไปด้านบน

บทความที่เกี่ยวข้อง

อัปเดตข้อมูลด้านไซเบอร์ ทุกสัปดาห์
รับข่าวสารความรู้เชิงลึกเกี่ยวกับความปลอดภัยไซเบอร์จากดาต้าฟาร์มก่อนใคร

ฟีเจอร์นี้จะเปิดให้ใช้งานเร็ว ๆ นี้ โปรดติดตาม

ส่งสัปดาห์ละ 1 ครั้ง ไม่มีสแปม ยกเลิกการรับข่าวสารได้ทุกเมื่อ