HTProtect.org
HTProtect HTProtect JOOMLA SECURITY
htprotect.org ช่องโหว่ความปลอดภัย & คู่มืออัปเดต
ใหม่ htprotect.app - จัดการเว็บไซต์ Joomla หลายแห่งจากศูนย์กลางเดียว
ช่องโหว่ความปลอดภัย

Helix3 เฟรมเวิร์กเทมเพลต – ช่องโหว่ความปลอดภัยร้ายแรง

วิกฤต ถูกใช้โจมตีจริงแล้วCVE: อยู่ระหว่างขอหมายเลข (ผู้รายงาน: Phil Taylor, mySites.guru)
ดำเนินการทันที
อัปเดต Helix3 เป็นเวอร์ชัน 3.1.2 (หรือใหม่กว่า) ทันที

เวอร์ชันที่ปลอดภัย: Helix3 3.1.2 หรือใหม่กว่า · via JoomShaper (account required)

สรุปข้อมูลสำคัญ

ส่วนเสริมที่ได้รับผลกระทบ
Helix3 – ปลั๊กอินระบบ & ปลั๊กอิน AJAX (plg_ajax_helix3)
ผู้พัฒนา
ประเภทของช่องโหว่
ช่องโหว่ร้ายแรงหลายรายการ ได้แก่ การเขียนและลบไฟล์โดยไม่ต้องยืนยันตัวตน การเขียนทับการตั้งค่าเทมเพลต การยกระดับสิทธิ์จนถึงขั้นรันโค้ดได้ (อัปโหลดไฟล์ PHP) และ XSS
เวอร์ชันที่ได้รับผลกระทบ
ทุกเวอร์ชันก่อน 3.1.1
เวอร์ชันที่ปลอดภัย
Helix3 3.1.2 หรือใหม่กว่า   ดาวน์โหลด
ระดับความรุนแรง
วิกฤต · ถูกใช้โจมตีจริงแล้ว
CVE
อยู่ระหว่างขอหมายเลข (ผู้รายงาน: Phil Taylor, mySites.guru)
ความเข้ากันได้กับ Joomla
Joomla 4 / 5 / 6
ข้อมูล ณ วันที่ / เผยแพร่
เผยแพร่/แก้ไข: 29 มิถุนายน 2026 (รายงาน: 28 มิถุนายน 2026)

ช่องโหว่นี้คืออะไร

Helix3 คือเฟรมเวิร์กเทมเพลตรุ่นคลาสสิกของ JoomShaper ทำงานในรูปปลั๊กอินระบบร่วมกับปลั๊กอิน AJAX (plg_ajax_helix3) ปลั๊กอิน AJAX ตัวนี้มีช่องโหว่หลายรายการที่เข้าถึงได้ผ่านเอนด์พอยต์มาตรฐาน com_ajax โดยไม่ต้องยืนยันตัวตน

ช่องโหว่ที่ระบุไว้ ได้แก่ การเขียนไฟล์โดยไม่ต้องยืนยันตัวตน (ดัดแปลงพาธผ่านแอ็กชัน save) การลบไฟล์ใดก็ได้ (remove/remove_image) การเขียนทับการตั้งค่าเทมเพลต (import) และเมื่อเข้าสู่ระบบแล้วยังมี การยกระดับสิทธิ์จนถึงขั้นรันโค้ดได้ เพราะการอัปโหลดรูปภาพยอมรับไฟล์ .php ด้วย นอกจากนี้ยังพบ XSS ทั้งแบบ stored และ reflected รวมถึงคีย์ API ของ Google Fonts ที่หลงเหลืออยู่ในซอร์สโค้ด

ตัวแก้ไขเผยแพร่ตั้งแต่วันที่ 29 มิถุนายน 2026 ในชื่อ Helix3 3.1.1 และหลังจากนั้นมีเวอร์ชัน 3.1.2 ออกตามมา จึงควรอัปเดตข้ามไปที่เวอร์ชันนี้เลย ส่วนหมายเลข CVE นั้นยื่นขอไว้แล้วแต่ยังไม่ได้รับการกำหนดในช่วงที่เปิดเผยข้อมูล ผู้รายงานช่องโหว่คือ Phil Taylor จาก mySites.guru

Helix3 ไม่ใช่ Helix Ultimate
Helix3 คือเฟรมเวิร์กรุ่นเก่ากว่า (ปลั๊กอินระบบ + ปลั๊กอิน AJAX) ส่วน Helix Ultimate เป็นเทมเพลตคนละตัวที่ใหม่กว่า มีโค้ดเบสและการนับเวอร์ชันของตัวเอง จึงไม่ได้รับผลกระทบจากประกาศฉบับนี้
ข้อสังเกตเรื่องความโปร่งใส
บันทึกการเปลี่ยนแปลงที่เผยแพร่ต่อสาธารณะระบุไว้ในตอนแรกเพียงว่า “Security Update” โดยไม่บอกระดับความรุนแรง อย่าอาศัยบันทึกการเปลี่ยนแปลงเพียงอย่างเดียว ให้อัปเดตส่วนเสริมที่เกี่ยวข้องกับความปลอดภัยโดยเร็วเสมอ

เว็บไซต์ของคุณได้รับผลกระทบหรือไม่ – วิธีตรวจสอบ

  1. เปิดส่วนผู้ดูแลระบบ

    เข้าสู่ระบบส่วนผู้ดูแลของ Joomla (ที่อยู่เว็บลงท้ายด้วย /administrator)

  2. ไปที่หน้าปลั๊กอิน

    เปิด ระบบปลั๊กอิน (หรือไปที่ ส่วนเสริมจัดการจัดการ)

  3. กรองหา “Helix3”

    ค้นหา Helix3 หรือ “System – Helix3 Framework” แล้วดูหมายเลขเวอร์ชันที่แสดงอยู่

  4. ประเมินเวอร์ชัน

    หากเวอร์ชันต่ำกว่า 3.1.2 ให้อัปเดต – เวอร์ชันก่อน 3.1.1 เสี่ยงถูกโจมตีได้ทันที

วิธีปิดช่องโหว่นี้

ก่อนอัปเดตทุกครั้ง: สำรองข้อมูล
สำรองไฟล์และฐานข้อมูลก่อนอัปเดต เพื่อให้ย้อนกลับสู่สถานะเดิมได้หากเกิดปัญหา (เช่น ผ่าน Akeeba Backup หรือระบบของผู้ให้บริการโฮสติ้ง)
  1. เปิดศูนย์อัปเดต

    ไปที่ ระบบอัปเดตส่วนเสริม แล้วคลิก ตรวจสอบการอัปเดต

  2. อัปเดต Helix3

    เลือกรายการ Helix3 แล้วคลิก อัปเดต เวอร์ชัน 3.1.2 จะดาวน์โหลดมาจากเซิร์ฟเวอร์อัปเดตของ JoomShaper

  3. ตรวจสอบว่าสำเร็จแล้ว

    ตรวจดูที่ ระบบปลั๊กอิน ว่าตอนนี้แสดงเป็น 3.1.2 (หรือใหม่กว่า) แล้ว

การติดตั้งด้วยตนเอง (ทางเลือก)
หากไม่มีการอัปเดตปรากฏขึ้น ให้ดาวน์โหลดแพ็กเกจจากบัญชี JoomShaper ของคุณ แล้วติดตั้งผ่าน ส่วนเสริมจัดการติดตั้ง

แหล่งดาวน์โหลดอย่างเป็นทางการ: via JoomShaper (account required). ตรวจสอบให้แน่ใจว่าเป็นเวอร์ชันอย่างน้อย Helix3 3.1.2 หรือใหม่กว่า.

เว็บไซต์ถูกแฮกไปแล้วหรือไม่

การอัปเดตไม่ได้กำจัดมัลแวร์ที่ฝังอยู่แล้ว
หากเว็บไซต์ยังไม่ได้แพตช์ในช่วงที่ช่องโหว่ยังเปิดอยู่ ให้ตรวจสอบสิ่งเหล่านี้หลังอัปเดต: ไฟล์แปลกปลอมในโฟลเดอร์เทมเพลต ไฟล์ป้องกันที่หายไป (เช่น .htaccess) และการเปลี่ยนแปลงที่อธิบายไม่ได้ในพารามิเตอร์ของรูปแบบเทมเพลต หากไม่แน่ใจ ควรให้ผู้เชี่ยวชาญทำความสะอาดเว็บไซต์และเปลี่ยนรหัสผ่านทั้งหมด

อาการที่พบบ่อย: หน้าเว็บถูกเปลี่ยนโฉมด้วย “Custom Javascript” ที่ถูกฝังไว้

สัญญาณที่พบได้บ่อยของช่องโหว่นี้คือ ผู้โจมตีฝัง JavaScript ที่เป็นอันตรายลงในตัวเลือกเทมเพลตของ Helix3 โดยตรง – ในช่อง Custom CodeCustom Javascript เมื่อมีการเปิดหน้าเว็บ โค้ดนี้จะเขียนทับทั้งหน้าด้วยข้อความเปลี่ยนโฉม – เช่น “Hacked by trenggalek6etar” “Hacked by antonkill” หรือข้อความทำนอง “Hacked by …” ในลักษณะเดียวกัน

HACKED BY TRENGGALEK6ETAR
ผู้เข้าชมจะเห็นหน้าเว็บแบบนี้ (ตัวอย่างที่จำลองขึ้น)
document.addEventListener("DOMContentLoaded", function(){
  document.title = "hacked by trenggalek6etar";
  document.body.innerHTML =
    '<div style="position:fixed;inset:0;'
    + 'background:#0a0a0a;z-index:2147483647">'
    + ' … HACKED BY trenggalek6etar … '
    + '</div>';
});
โค้ดที่ถูกฝังไว้ในช่อง Custom Javascript ของตัวเลือกเทมเพลต Helix3

วิธีตรวจสอบ: ในส่วนผู้ดูแลระบบ ให้เปิด ส่วนเสริมเทมเพลตรูปแบบ(รูปแบบ Helix3 ของคุณ)Custom CodeCustom Javascript หากพบโค้ดแปลกปลอมอย่าง document.title = "hacked by…" หรือ document.body.innerHTML = … แสดงว่าเว็บไซต์ถูกแฮกแล้ว ให้ลบโค้ดนั้นออก ปิดต้นเหตุด้วยการอัปเดต Helix3 และเปลี่ยนรหัสผ่านทั้งหมด

ต้องการความช่วยเหลือในการกู้คืนเว็บไซต์ใช่หรือไม่ ค้นหาผู้เชี่ยวชาญที่เหมาะสมได้ที่ไดเรกทอรีผู้ให้บริการ Joomla

กู้คืนตัวเลือกเทมเพลตจากไฟล์สำรองฐานข้อมูล

Helix3 เก็บตัวเลือกเทมเพลตทั้งหมด (โลโก้ สี เลย์เอาต์ CSS/JS ที่กำหนดเอง …) ไว้เป็น JSON ในคอลัมน์ params ของตาราง #__template_styles – หนึ่งแถวต่อหนึ่งรูปแบบ หากค่าเหล่านี้สูญหายเพราะถูกแฮก อัปเดตล้มเหลว หรือเผลอรีเซ็ต ให้เขียนกลับเฉพาะค่า params ค่าเดียวนั้นจากไฟล์สำรองฐานข้อมูล ไม่ใช่ทั้งตาราง

  1. หารูปแบบที่ใช้งานอยู่

    รูปแบบฝั่งหน้าเว็บมีค่า client_id = 0 ส่วนรูปแบบที่ใช้งานอยู่จะมี home = 1 ด้วย จด ID ของรูปแบบนั้นไว้

  2. หาแถวในไฟล์สำรอง

    ในไฟล์ดัมป์ ให้หาแถวของ #__template_styles ที่มีชื่อเทมเพลตเดียวกัน

  3. เก็บค่าปัจจุบันไว้ก่อน

    คัดลอกค่า params ปัจจุบันของแถวที่ใช้งานจริงเก็บไว้ก่อน

  4. เขียนทับ params

    แทนที่เฉพาะ params ของแถวนั้นแถวเดียวด้วยค่าจากไฟล์สำรอง

  5. ตรวจสอบผล

    หน้าแรกโหลดได้ (HTTP 200) และตัวเลือกต่าง ๆ กลับมาแล้ว

SELECT id, template, home FROM #__template_styles WHERE client_id = 0;
UPDATE #__template_styles SET params = '<JSON จากไฟล์สำรอง>' WHERE id = 12;

ย้อนกลับได้ตราบใดที่คุณเก็บค่า params เดิมไว้ – และก่อนแก้ไขฐานข้อมูลทุกครั้งต้องสำรองข้อมูลเสมอ

แหล่งข้อมูล & อ่านเพิ่มเติม

ให้ยึดข้อมูลอย่างเป็นทางการจากผู้พัฒนาแต่ละรายเป็นหลักเสมอ หน้านี้รวบรวมข้อมูลที่เปิดเผยต่อสาธารณะไว้อย่างเป็นกลาง

Supporters

Supporters of this site

htprotect.org is a free, vendor-independent information service. It is supported by:

Host & community
FC-Hosting

Joomla host from Germany with active community support – discovered the first attack on the JCE vulnerability.

fc-hosting.de
Initiator & operator
Website-Bereinigung.de

Specialised in cleaning, maintaining and securing Joomla and WordPress websites.

website-bereinigung.de

Support this project

You run a hosting or Joomla service and would like to support htprotect.org – and be listed here as a supporter? Every contribution helps to warn and protect those affected faster.

Prefer to give privately, without a listing? A little something for the tip jar is just as welcome.

Support HTProtect now
Bauschild & Service

Manufactures and installs construction-site signs, hoardings and façade solutions – including design and 3D visualisation.

bauschildundservice.de
IT Specialista

Professional IT support from Czechia – Windows management, domain administration and web hosting.

defendersoft.cz
onlineweg.de

Travel portal from Germany – package holidays, hotels and flights online, with personal travel-agency advice.

onlineweg.de
Criadero

Creative agency from Brandenburg – web design, print media, photography and 360° panoramas from a single source.

criadero.de
Jahn EDV-Dienst GmbH

IT service provider from Wächtersbach – Joomla websites, PC service, hardware and software.

jahnedv.de
IsariConsult

Information-security consulting from Berlin – security analyses, risk management and ISO 27001 for SMEs.

isari-consult.de