Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบเครือข่าย >> ความปลอดภัยเครือข่าย

ช่องโหว่ SQL Error ร้ายแรงใน ธีม Journal OpenCart 3.1.0 – ต้องอัปเดตทันที

ระหว่างการตรวจสอบเว็บไซต์ OpenCart ที่ใช้ธีม Journal ยอดนิยม เราพบว่า endpoint เฉพาะเจาะจงมีช่องโหว่ต่อการเปิดเผยข้อมูลละเอียดอ่อนผ่าน SQL errors เวอร์ชัน Journal 3.1.0 ที่แก้ไขปัญหานี้เผยแพร่เมื่อวันที่ 1 กรกฎาคม 2020

CVE ID: CVE-2020-15478

สรุป

Journal ธีม OpenCart ขายดีที่สุดที่ใช้ในเว็บไซต์กว่า 25,000 ไซต์ พบว่ามีการเปิดเผยข้อมูลละเอียดอ่อนและอาจเปราะบางต่อการโจมตีเพิ่มเติมอย่าง SQL Injection

การเปิดเผยข้อมูลละเอียดอ่อน (Sensitive Data Exposure) ซึ่งเป็นช่องโหว่ใน OWASP Top 10 เกิดขึ้นเมื่อแอปพลิเคชันล้มเหลวในการรักษาความปลอดภัยข้อมูลละเอียดอ่อนอย่างเพียงพอ ข้อมูลที่เปิดเผยอาจรวมถึงรหัสผ่าน โทเค็นเซสชัน ข้อมูลบัตรเครดิต ข้อมูลสุขภาพส่วนตัว และอื่นๆ

ช่องโหว่

รายละเอียดเพิ่มเติมเกี่ยวกับช่องโหว่จะถูกเพิ่มเมื่อวันที่ 15 กรกฎาคม เพื่อให้ผู้ใช้ธีมมีเวลาพอในการอัปเดตเป็นเวอร์ชันล่าสุด

อัปเดตรายละเอียดทางเทคนิค:

เนื่องจากวิธีที่พารามิเตอร์ "page" ถูกแปลงเป็นจำนวนเต็ม (typecast) ใน /catalog/controller/journal3/blog.php หากใครป้อนสตริง จะทำให้เกิดข้อความข้อผิดพลาดโดยละเอียดแสดง SQL error, รายละเอียดฐานข้อมูล และ internal path

ข้อมูลเหล่านี้ช่วยให้ผู้โจมตีเตรียมการโจมตีได้ดีขึ้น เราเห็นว่า $page ถูกแปลงเป็น integer โดยใช้ $page = (int)Arr::get($this->request->get, 'page', 1); ในไฟล์ที่กล่าวมา

ช่องโหว่ SQL Error ร้ายแรงใน ธีม Journal OpenCart 3.1.0 – ต้องอัปเดตทันที

เส้นเวลา

รายงานช่องโหว่ให้ทีม Journal วันที่ 11 มิถุนายน 2020
เวอร์ชัน 3.1.0 ที่มีการแก้ไขช่องโหว่เผยแพร่เมื่อวันที่ 1 กรกฎาคม 2020

คำแนะนำ

  • ขอแนะนำให้อัปเดตธีมเป็นเวอร์ชันล่าสุดอย่างยิ่ง
  • คุณยังสามารถเพิ่มโค้ดต่อไปนี้หลังบรรทัด $page = (int)Arr::get($this->request->get, 'page', 1); ใน /catalog/controller/journal3/blog.php:
if ($page == 0) { $page=1; }

อ้างอิง

  • https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-15478
  • https://docs.journal-theme.com/changelog
  • https://nvd.nist.gov/vuln/detail/CVE-2020-15478