พบช่องโหว่ในปลั๊กอิน WordPress Gutenberg?

เผยแพร่แล้ว: 2022-08-03

ฐานข้อมูลช่องโหว่แห่งชาติของรัฐบาลสหรัฐอเมริกาได้เผยแพร่การแจ้งเตือนเกี่ยวกับช่องโหว่ที่ค้นพบในปลั๊กอิน WordPress Gutenberg อย่างเป็นทางการ แต่ตามผู้ค้นพบ WordPress กล่าวว่าไม่ยอมรับว่าเป็นช่องโหว่

ช่องโหว่ Cross-Site Scripting (XSS) ที่เก็บไว้

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

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

ตัวอย่างคือแบบฟอร์มสำหรับการอัปโหลดภาพที่ล้มเหลวในการบล็อกผู้โจมตีจากการอัปโหลดสคริปต์ที่เป็นอันตราย

ตามโครงการ Open Web Application Security ที่ไม่หวังผลกำไร ซึ่งเป็นองค์กรที่มุ่งเน้นการช่วยปรับปรุงความปลอดภัยของซอฟต์แวร์ นี่คือสิ่งที่สามารถเกิดขึ้นได้กับการโจมตี XSS ที่ประสบความสำเร็จ:

“ผู้โจมตีสามารถใช้ XSS เพื่อส่งสคริปต์ที่เป็นอันตรายไปยังผู้ใช้ที่ไม่สงสัย

เบราว์เซอร์ของผู้ใช้ปลายทางไม่มีทางรู้ได้ว่าสคริปต์ไม่ควรเชื่อถือได้ และจะรันสคริปต์

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

สคริปต์เหล่านี้สามารถเขียนซ้ำเนื้อหาของหน้า HTML ได้”

ช่องโหว่และการเปิดเผยทั่วไป – CVE

องค์กรที่ชื่อ CVE ทำหน้าที่เป็นช่องทางในการจัดทำเอกสารเกี่ยวกับช่องโหว่และเผยแพร่สิ่งที่ค้นพบสู่สาธารณะ

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

การค้นพบช่องโหว่ใน Gutenberg

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

ช่องโหว่ XSS ได้รับหมายเลข ID CVE-2022-33994

รายงานช่องโหว่ที่เผยแพร่บนไซต์ CVE มีคำอธิบายนี้:

“ปลั๊กอิน Gutenberg จนถึง 13.7.3 สำหรับ WordPress ช่วยให้ XSS จัดเก็บโดยบทบาท Contributor ผ่านเอกสาร SVG ไปยังคุณสมบัติ “แทรกจาก URL”

หมายเหตุ: เพย์โหลด XSS ไม่ทำงานในบริบทของโดเมนของอินสแตนซ์ WordPress; อย่างไรก็ตาม ความพยายามที่คล้ายคลึงกันโดยผู้ใช้ที่มีสิทธิ์ต่ำในการอ้างอิงเอกสาร SVG ถูกบล็อกโดยผลิตภัณฑ์ที่คล้ายกันบางอย่าง และความแตกต่างด้านพฤติกรรมนี้อาจเกี่ยวข้องกับความปลอดภัยกับผู้ดูแลไซต์ WordPress บางราย”

นั่นหมายความว่าผู้ที่มีสิทธิ์ระดับ Contributor สามารถทำให้ไฟล์ที่เป็นอันตรายถูกแทรกลงในเว็บไซต์ได้

วิธีทำคือการแทรกรูปภาพผ่าน URL

ใน Gutenberg มีสามวิธีในการอัปโหลดรูปภาพ

  1. อัพโหลด
  2. เลือกรูปภาพที่มีอยู่จาก WordPress Media Libary
  3. แทรกรูปภาพจาก URL

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

เป็นช่องโหว่จริงหรือ?

นักวิจัยรายงานช่องโหว่ไปยัง WordPress แต่ตามที่ผู้ค้นพบ WordPress ไม่ยอมรับว่าเป็นช่องโหว่

นี่คือสิ่งที่ผู้วิจัยเขียนว่า:

“ฉันพบช่องโหว่ Stored Cross Site Scripting ใน WordPress ซึ่งถูกปฏิเสธและถูกระบุว่าเป็นข้อมูลโดยทีม WordPress

วันนี้เป็นวันที่ 45 ตั้งแต่ฉันรายงานช่องโหว่ แต่ช่องโหว่ยังไม่ได้รับการแก้ไขในขณะที่เขียนสิ่งนี้…”

ดังนั้นจึงดูเหมือนว่ามีคำถามว่า WordPress ถูกต้องและมูลนิธิ CVE ที่รัฐบาลสหรัฐฯ สนับสนุนนั้นผิด (หรือในทางกลับกัน) ว่านี่เป็นช่องโหว่ XSS หรือไม่

นักวิจัยยืนยันว่านี่เป็นช่องโหว่ที่แท้จริงและเสนอการยอมรับ CVE เพื่อตรวจสอบการอ้างสิทธิ์นั้น

นอกจากนี้ ผู้วิจัยยังกล่าวเป็นนัยหรือแนะนำว่าสถานการณ์ที่ปลั๊กอิน WordPress Gutenberg อนุญาตให้อัปโหลดภาพผ่าน URL อาจไม่ใช่แนวทางปฏิบัติที่ดี โดยสังเกตว่าบริษัทอื่นไม่อนุญาตให้อัปโหลดประเภทดังกล่าว

“ถ้าเป็นเช่นนั้น บอกฉันทีว่าทำไม… …บริษัทอย่าง Google และ Slack ได้ตรวจสอบไฟล์ที่โหลดผ่าน URL และปฏิเสธไฟล์หากพบว่าเป็น SVG!

…Google และ Slack… ไม่อนุญาตให้โหลดไฟล์ SVG ผ่าน URL ที่ WordPress ทำ!”

จะทำอย่างไร?

WordPress ไม่ได้ออกวิธีแก้ไขสำหรับช่องโหว่นี้ เนื่องจากดูเหมือนไม่เชื่อว่าเป็นช่องโหว่หรือปัญหาที่ทำให้เกิดปัญหา

รายงานช่องโหว่อย่างเป็นทางการระบุว่า Gutenberg เวอร์ชันถึง 13.7.3 มีช่องโหว่

แต่ 13.7.3 เป็นเวอร์ชันล่าสุด

ตามบันทึกการเปลี่ยนแปลงอย่างเป็นทางการของ WordPress Gutenberg ที่บันทึกการเปลี่ยนแปลงที่ผ่านมาทั้งหมดและเผยแพร่คำอธิบายของการเปลี่ยนแปลงในอนาคตด้วย ไม่มีการแก้ไขสำหรับช่องโหว่นี้ (ที่ถูกกล่าวหา) และไม่มีการวางแผนใดๆ

ดังนั้นคำถามก็คือว่ามีอะไรให้แก้ไขหรือไม่

การอ้างอิง

รายงานฐานข้อมูลช่องโหว่ของรัฐบาลสหรัฐฯ เกี่ยวกับช่องโหว่นี้

CVE-2022-33994 รายละเอียด

รายงานเผยแพร่บนเว็บไซต์ CVE อย่างเป็นทางการ

CVE-2022-33994 รายละเอียด

อ่านผลการวิจัยของผู้วิจัย

CVE-2022-33994: - XSS ที่เก็บไว้ใน WordPress


ภาพเด่นโดย Shutterstock/Kues