พบช่องโหว่บน 3 เว็บแอพพลิเคชันชื่อดัง รวมไปถึง PayPal.com
Omer Gil หัวหน้าทีมความมั่นคงปลอดภัยสารสนเทศของ EY Hacktics Advanced Security Center จากอิสราเอล ออกมาเปิดเผยถึงช่องโหว่บน Caching Server ซึ่งช่วยให้แฮ็คเกอร์สามารถโจมตีเพื่อหลอกให้ Server แคชข้อมูลความลับ เช่น ข้อมูลส่วนบุคคลและข้อมูลการเงิน จากนั้นเข้าไปขโมยข้อมูลจากที่แคชไว้ได้ Gil ตั้งชื่อการโจมตีนี้ว่า Web Cache Deception Attack
PayPal ได้รับผลกระทบ พร้อมมอบรางวัลกว่า 100,000 บาท
Gil เปิดเผยใน Blog ของตนว่า พบช่องโหว่ของการโจมตีนี้บนเว็บไซต์ชื่อดัง 3 แห่งจาก 30 แห่งที่เขาทดสอบ หนึ่งในนั้นคือ PayPal ส่วนอีก 2 แห่งขอให้ไม่เปิดเผยนาม ซึ่ง Gil เชื่อว่าการโจมตีน่าจะส่งผลกระทบเป็นวงกว้างกับหลายๆ เว็บไซต์ทั่วโลก โดยปัญหาเกิดจากการที่ Server ถูกหลอกให้แคชข้อมูลความลับของผู้ใช้ผ่านทางการเข้าถึง Resource ที่ไม่มีอยู่จริง ส่งผลให้แฮ็คเกอร์สามารถเข้าไปขโมยข้อมูลที่แคชไว้ได้โดยที่ไม่จำเป็นต้องพิสูจน์ตัวตน จากการค้นพบช่องโหว่นี้ ช่วยให้ Gil ได้รับค่าตอบแทนจาก Bug Bounty Program ของ PayPal ถึง $3,000 (ประมาณ 105,000 บาท)
หลอกให้แคชผ่านทาง Resource ที่ไม่มีอยู่จริง
ยกตัวอย่างกรณีของ PayPal ซึ่ง Gil พบว่า ถ้าเขาเข้าถึงลิงค์ URL ที่ชี้ไปยัง Resource ที่ไม่มีอยู่จริง จะทำให้ PayPal Server สร้างหน้าแคชสำหรับ URL นั้นๆ ในส่วนก่อนที่จะถึง Resource ดังกล่าว เช่น
- เข้าถึง URL: https://www.paypal.com/myaccount/home/attack.css
- PayPal จะสร้างหน้าแคช: https://www.paypal.com/myaccount/home/
ซึ่ง URL ตัวอย่างนี้ หน้าแคชจะเก็บข้อมูลรายละเอียดของผู้ใช้ เช่น ดุลบัญชี รายการธุรกรรมออนไลน์ อีเมล หมายเลขบัตร 4 ตัวท้าย และอื่นๆ
นั่นหมายความว่า ถ้าแฮ็คเกอร์หลอกให้ผู้ใช้เข้าถึง URL ที่ไม่มีอยู่จริงเหล่านี้ จะทำให้ Server สร้างหน้าแคชสำหรับเก็บข้อมูลส่วนบุคคลและข้อมูลความลับอื่นๆ ขึ้นมา เมื่อแฮ็คเกอร์เข้าถึง URL นั้นอีกครั้งหนึ่งก็จะสามารถอ่านข้อมูลเหล่านั้นได้ทั้งหมดทันที
วิดีโอตัวอย่างด้านล่างแสดงการสร้างหน้าแคชสำหรับเก็บข้อมูลส่วนบุคคลของผู้ใช้ PayPal และ Gil สามารถเข้าถึงหน้าแคชเหล่านั้นได้ผ่านทาง Private Browsing Session (โหมด Incognito) โดยไม่จำเป็นต้องล็อกอินเข้า PayPal แต่อย่างใด
ทั้งนี้ Gil ระบุว่า Resource ที่เข้าถึงเพื่อสร้างหน้าแคชนี้ ไม่จำเป็นต้องเป็นเฉพาะไฟล์ CSS หรือ JS แต่สามารถใช้เป็นไฟล์อื่นได้อีกมากกว่า 40 รูปแบบ รวมไปถึง AVI, DOC และ JPG
กรณีเลวร้ายแฮ็คเกอร์สามารถเข้าควบคุม Server ได้ทันที
Gil ระบุว่า กรณี PayPal อาจทำได้แค่ขโมยข้อมูลส่วนบุคคล แต่อีก 2 เว็บที่เหลือที่เขาทดสอบ Gil สามารถเข้าควบคุมชื่อบัญชีของเว็บนั้นๆ ได้ทันที เนื่องจาก 2 เว็บนั้นทำการแคช Session ID และคำตอบด้านความมั่นคงปลอดภัยที่ใช้พิสูจน์ตัวตน
“มันเป็นการโจมตีแบบหนึ่ง มันสามารถใช้โจมตี .NET, PHP, Java หรือโจมตีบน IIS, Apache และ Web Server แบบอื่นๆ รวมไปถึงอุปกรณ์ที่ใช้แคชหลายแบบ ไม่ว่าจะเป็น CDN, Reverse Proxy และ Load Balancer มันเป็นปัญหาของการตั้งค่าการทำ Caching” — Gil ระบุ
Gil แนะนำวิธีป้องกันการโจมตีแบบ Web Cache Deception Attack ดังนี้
- ตั้งค่ากลไกการแคชโดยให้ทำการแคชไฟล์เฉพาะเมื่อ HTTP Caching Header อนุญาตให้แคช วิธีนี้เป็นการแก้ไขปัญหาจากต้นตอ
- ในกรณีที่ใช้อุปกรณ์หรือโซลูชันสำหรับแคช ให้เลือกตั้งค่าการแคชไฟล์โดย Content Type
- ตั้งค่าให้ Web Server คืนค่า 404 หรือ 302 ในกรณีที่ผู้ใช้เข้าถึงหน้า Reesource ที่ไม่มีอยู่จริง
ดูรายละเอียดเชิงเทคนิคและคำแนะนำอื่นๆ ได้ที่: http://omergil.blogspot.ro/2017/02/web-cache-deception-attack.html
ที่มา : techtalkthai March 5, 2017
ลิงค์ : https://www.techtalkthai.com/web-cache-deception-attack/