ลดความเป็นไปได้ที่จะถูกคลิกจากระยะไกลด้วย XFO หรือ CSP

การคลิกจากระยะไกลคือการโจมตีที่เป็นอันตรายซึ่งหลอกลวงให้ผู้ใช้คลิกลิงก์หรือองค์ประกอบ UI ในเว็บไซต์ที่ดูเหมือนว่าน่าเชื่อถือและคุ้นเคย ซึ่งโดยทั่วไปจะดำเนินการโดยการฝังเว็บไซต์ที่เชื่อถือได้บางส่วนหรือทั้งหมดลงในเว็บไซต์ที่เป็นอันตรายโดยใช้ <iframe>

ส่วนหัว X-Frame-Options (XFO) และคำสั่ง frame-ancestors ในส่วนหัว Content-Security-Policy (CSP) สามารถลดการโจมตีด้วยคลิกแจ๊คได้โดยการควบคุมวิธีฝังเว็บไซต์ภายใน <iframe>

สาเหตุที่การตรวจสอบ Lighthouse ไม่สําเร็จ

การตรวจสอบจะผ่านหากตั้งค่าส่วนหัว XFO ด้วย SAMEORIGIN หรือ DENY หรือตั้งค่าคำสั่ง frame-ancestors ในส่วนหัว CSP การตรวจสอบจะดำเนินการไม่สำเร็จหากไม่ได้กำหนดค่านโยบายการควบคุมเฟรมเหล่านี้

คำเตือนในรายงาน Lighthouse ว่าไม่พบส่วนหัวการตอบกลับ CSP หรือ XFO เพื่อลดการคลิกจากระยะไกล
รายงาน Lighthouse เตือนว่าไม่พบส่วนหัวการตอบกลับ CSP หรือ XFO เพื่อลดการคลิกจากระยะไกล

วิธีตั้งค่านโยบายการควบคุมเฟรมเพื่อลดการครีกเชอร์

คุณต้องตั้งค่านโยบายการควบคุมเฟรมในส่วนหัว HTTP ของคำขอเอกสารเริ่มต้น ส่วนหัว X-Frame-Options และคำสั่ง frame-ancestors ใน Content-Security-Policy จะไม่ทำงานหากตั้งค่าไว้ในองค์ประกอบ <meta>

ส่วนหัว XFO

การตั้งค่า DENY หรือ SAMEORIGIN สำหรับส่วนหัว XFO จะช่วยลดการโจมตีด้วยคลิกแจ๊ค

X-Frame-Options: SAMEORIGIN
X-Frame-Options: DENY

คำสั่ง SAMEORIGIN อนุญาตให้แสดงหน้าเว็บได้ก็ต่อเมื่อเฟรมบรรพบุรุษทั้งหมดมีต้นทางเดียวกับหน้าเว็บนั้นๆ เท่านั้น ในทางกลับกัน คำสั่ง DENY จะป้องกันไม่ให้หน้าเว็บแสดงในเฟรม ไม่ว่าต้นทางของเฟรมหลักจะเป็นอย่างไรก็ตาม

ส่วนหัว CSP

คำสั่ง frame-ancestors ภายในส่วนหัว CSP จะกำหนดว่าเว็บไซต์ใดบ้างที่อาจฝังหน้าเว็บที่ระบุใน <frame>, <iframe>, <object> หรือ <embed> เช่นเดียวกับ XFO คำสั่ง frame-ancestors ของ CSP สามารถใช้เพื่อลดการโจมตีด้วยการใช้คลิกไฮแจ็กได้โดยตั้งค่าเป็น self หรือ none

Content-Security-Policy: frame-ancestors 'self';
Content-Security-Policy: frame-ancestors 'none';

อย่างไรก็ตาม คำสั่ง frame-ancestors มีความยืดหยุ่นมากกว่า XFO เนื่องจากสามารถตั้งค่าแหล่งที่มาหลักที่เฉพาะเจาะจงซึ่งอาจฝังหน้าเว็บได้ ดังนี้

Content-Security-Policy: frame-ancestors 'self' https://example.com;

แหล่งข้อมูล