# GitLab แพตช์ CVE-2026-110264 คะแนน 10.0 รันโค้ดได้โดยไม่ต้องล็อกอิน กระทบรุ่นตั้งแต่ 7.0

> CVE-2026-110264 ช่องโหว่ CVSS 10.0 ใน GitLab CE/EE ที่ติดตั้งเอง ไม่ต้องล็อกอินก็รันโค้ดบนเซิร์ฟเวอร์ได้ กระทบทุกรุ่นตั้งแต่ 7.0 แพตช์แล้ว 21 ต.ค. 2026

- ประเภท: ข่าว · หมวด: Cybersecurity
- เผยแพร่: 2026-10-22T11:54:00.000Z · อัปเดต: 2026-10-22T11:54:00.000Z
- โดย: กองบรรณาธิการ THAI DATA, THAI DATA IT BUSINESS ENTERPRISE
- ที่มา: https://thaidata.co.th/security/gitlab-cve-2026-110264-org-mode-unauthenticated-rce/

## สรุปประเด็นสำคัญ

- GitLab ออกแพตช์ฉุกเฉิน **19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10 และ 18.11.13** เมื่อ **21 ตุลาคม 2026** ปิดช่องโหว่ 12 รายการ ระดับ Critical 1 รายการ High 2 รายการ Medium 5 รายการ และ Low 4 รายการ
- **CVE-2026-110264** เป็น integer overflow ตอนคอมไพล์ regular expression ได้คะแนน **CVSS 3.1 เต็ม 10.0** ผู้โจมตีไม่ต้องล็อกอินก็รันโค้ดบนเซิร์ฟเวอร์ได้ และกระทบ GitLab CE/EE ทุกรุ่นตั้งแต่ **7.0** ซึ่งออกในปี 2014
- จุดเกิดเหตุต่างจาก **CVE-2026-97229** ที่แพตช์ไปเมื่อ 12 ต.ค. โดยรอบนี้อยู่ในตัวแสดงผลไฟล์ Org-mode (.org) ผ่าน gem org-ruby ไม่ใช่ regex ในคอนฟิก CI/CD เครื่องที่ลงแพตช์รอบก่อนแล้วจึงยังต้องอัปเดตอีกครั้ง
- GitLab.com แพตช์แล้ว ลูกค้า GitLab Dedicated ที่ใช้ 19.3.5-internal0 หรือ 19.4.2-internal0 ขึ้นไปไม่ต้องทำอะไร และ ณ แค็ตตาล็อก KEV ของ CISA ฉบับ 21 ต.ค. 2026 ยังไม่มีช่องโหว่นี้

GitLab ออกแพตช์ฉุกเฉินรุ่น 19.5.1, 19.4.3, 19.3.6 และอีก 4 สายเมื่อวันที่ 21 ตุลาคม 2026 ปิดช่องโหว่ CVE-2026-110264 คะแนน CVSS 10.0 ที่ผู้โจมตีไม่ต้องล็อกอินก็รันโค้ดบนเซิร์ฟเวอร์ GitLab ที่ติดตั้งเองได้ ช่องโหว่กระทบทุกรุ่นตั้งแต่ GitLab 7.0 ซึ่งออกในปี 2014

นี่เป็นช่องโหว่คะแนนเต็มตัวที่สองของ GitLab ในเวลาไม่ถึงสิบวัน ต่อจาก [CVE-2026-97229 ที่แพตช์เมื่อ 12 ตุลาคม](/security/gitlab-cve-2026-97229-cvss-10-ci-cd-rce/) แต่อยู่คนละจุดในโค้ด เครื่องที่ลงแพตช์รอบก่อนแล้วจึงยังต้องอัปเดตอีกครั้ง GitLab แนะนำให้ทุกเครื่องที่ติดตั้งเองอัปเดตทันที ส่วน GitLab.com แพตช์แล้ว และลูกค้า GitLab Dedicated ที่ใช้รุ่น 19.3.5-internal0 หรือ 19.4.2-internal0 ขึ้นไปไม่ต้องทำอะไร

![ส่วนของประกาศ GitLab ที่อธิบาย CVE-2026-110264 รุ่นที่ได้รับผลกระทบตั้งแต่ 7.0 คะแนน CVSS 10.0 และหัวข้อกฎตรวจจับความพยายามโจมตี](https://thaidata-co-th.s3.ap-southeast-1.amazonaws.com/thaidata.co.th/images/articles/gitlab-cve-2026-110264-org-mode-unauthenticated-rce/gitlab-cve-2026-110264-advisory-section.webp?v=6afee107) _(ภาพ: GitLab (ภาพหน้าจอ))_

## CVE-2026-110264 คือช่องโหว่อะไร

ประกาศของ GitLab อธิบายว่า CVE-2026-110264 เป็น integer overflow ที่เกิดตอนคอมไพล์ regular expression ที่สร้างมาเฉพาะ ในบางเงื่อนไขผู้ใช้ที่ไม่ได้ล็อกอินจึงรันโค้ดใดก็ได้บนเซิร์ฟเวอร์ GitLab ได้ GitLab ให้คะแนน CVSS 3.1 เต็ม 10.0 (เวกเตอร์ AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H) จัดอยู่ในกลุ่ม CWE-190 และขอบคุณนักวิจัยชื่อ joaxcar ที่รายงานผ่านโครงการ bug bounty บน HackerOne ซึ่งเป็นผู้รายงาน CVE-2026-97229 ด้วย

เอกสารกฎตรวจจับที่ทีมความปลอดภัยของ GitLab เผยแพร่คู่กับแพตช์ให้รายละเอียดมากกว่าตัวประกาศ

- จุดที่มีช่องโหว่คือ**ตัวแสดงผลไฟล์ Org-mode (.org)** ซึ่ง GitLab ใช้ gem ชื่อ org-ruby รุ่น 0.9.12 ทำงานผ่านระบบแสดงผล markup ของ GitLab
- gem นี้นำคำในบรรทัด `#+TODO:` ของไฟล์ .org ไปสร้างเป็น regular expression โดยไม่กรองให้ครบ ผู้ที่ทำให้ GitLab แสดงผลไฟล์ .org ได้จึงคุมเนื้อหาของ regex ได้
- คำที่สร้างมาเฉพาะทำให้ Onigmo เอนจิน regex ของ Ruby เขียนข้อมูลเกินขอบเขตหน่วยความจำตอนจับคู่ข้อความ (CWE-787) ซึ่งนำไปสู่การรันคำสั่งด้วยสิทธิ์ผู้ใช้ git ของ GitLab
- GitLab ระบุว่าการโจมตี**ไม่ต้องยืนยันตัวตน** ขอเพียงมีโปรเจกต์สาธารณะหนึ่งโปรเจกต์ที่วางไฟล์ .org ได้ และการโจมตีต้องลองซ้ำหลายครั้ง ส่วนใหญ่ไม่สำเร็จในครั้งเดียว

GitLab ประเมินว่าผู้ที่เจาะสำเร็จจะเข้าถึงข้อมูลลับของเครื่องในไฟล์ gitlab-secrets.json ตัวแปร CI/CD ทุกตัว token ของ runner และ access token รวมถึงอ่านและเขียนได้ทุก repository บนเครื่อง ในรายการแก้บั๊กของรุ่น 19.5.1 และ 19.4.3 ยังมีรายการเพิ่มแพตช์แก้ปัญหา repeat ID overflow ของ regexp ใน Ruby 3.3, 3.4 และ 4.0

## CVE-2026-110264 ต่างจาก CVE-2026-97229 อย่างไร

ทั้งสองช่องโหว่ได้คะแนนเต็ม 10.0 และพาโค้ดที่ผู้โจมตีคุมได้ไปถึงเอนจิน Onigmo เหมือนกัน แต่ทางเข้า ช่วงรุ่นที่กระทบ และรุ่นที่แก้แล้วต่างกัน เอกสารตรวจจับของ GitLab ระบุด้วยว่า CVE-2026-97229 คือการเลี่ยงแพตช์ของช่องโหว่ก่อนหน้า CVE-2026-93577 ในเส้นทาง CI/CD เดียวกัน

| ประเด็น | CVE-2026-97229 | CVE-2026-110264 |
| --- | --- | --- |
| วันที่ GitLab แพตช์ | 12 ตุลาคม 2026 | 21 ตุลาคม 2026 |
| จุดที่มีช่องโหว่ | regex ในกฎ `rules:regexp` ของคอนฟิก CI/CD | คำในบรรทัด `#+TODO:` ของไฟล์ .org ที่ org-ruby นำไปสร้าง regex |
| ลักษณะความผิดพลาด | โปรแกรม regex ใหญ่เกินจนตัวเลขล้นตอนคอมไพล์ | repeat ID ล้นจนเขียนเกินขอบเขตตอนจับคู่ |
| รุ่นที่กระทบ | 19.2 ถึง 19.4 | ทุกรุ่นตั้งแต่ 7.0 |
| คะแนน CVSS 3.1 | 10.0 | 10.0 |

## รุ่นที่ต้องอัปเดตเพื่อปิด CVE-2026-110264

นอกจากรุ่นแพตช์ตามปกติ 19.5.1, 19.4.3 และ 19.3.6 แล้ว GitLab ระบุว่านำการแก้ CVE-2026-110264 ย้อนไปใส่รุ่น 18.11.13, 19.0.10, 19.1.9 และ 19.2.9 ด้วย ข้อมูลจากประกาศและบันทึก CVE มีดังนี้

| GitLab CE/EE รุ่นที่ได้รับผลกระทบ | รุ่นที่แก้แล้ว |
| --- | --- |
| 7.0 ถึงก่อน 18.11.13 | 18.11.13 |
| 19.0 ก่อน 19.0.10 | 19.0.10 |
| 19.1 ก่อน 19.1.9 | 19.1.9 |
| 19.2 ก่อน 19.2.9 | 19.2.9 |
| 19.3 ก่อน 19.3.6 | 19.3.6 |
| 19.4 ก่อน 19.4.3 | 19.4.3 |
| 19.5 ก่อน 19.5.1 | 19.5.1 |
| GitLab.com และ GitLab Dedicated (19.3.5-internal0 / 19.4.2-internal0 ขึ้นไป) | ไม่ต้องทำอะไร |

[แท็ก v7.0.0 ใน repository ของ GitLab](https://gitlab.com/gitlab-org/gitlab-foss/-/tags/v7.0.0) สร้างเมื่อ 20 มิถุนายน 2014 ช่วงรุ่นที่กระทบจึงครอบคลุมราว 12 ปี เครื่องที่ยังใช้สาย 18 หรือเก่ากว่านั้นต้องขึ้นเป็น 18.11.13 เป็นอย่างน้อย

![สรุปรุ่น GitLab CE/EE ที่แก้ CVE-2026-110264 แล้วทั้ง 7 สาย ตั้งแต่ 18.11.13 ถึง 19.5.1](https://thaidata-co-th.s3.ap-southeast-1.amazonaws.com/thaidata.co.th/images/articles/gitlab-cve-2026-110264-org-mode-unauthenticated-rce/gitlab-cve-2026-110264-fixed-versions.webp?v=52f1a11e) _(ภาพ: THAI DATA (ข้อมูล: GitLab))_

## ช่องโหว่อื่นในแพตช์ชุดเดียวกัน

แพตช์วันที่ 21 ตุลาคมแก้ช่องโหว่รวม 12 รายการ นอกจาก CVE-2026-110264 แล้วมีระดับ High อีก 2 รายการ

1. **CVE-2026-15723** (CVSS 8.2) เมื่อเปิดทั้ง OmniAuth SAML และการเชื่อมบัญชี LDAP อัตโนมัติ ผู้ใช้ที่ล็อกอินแล้วอาจยึดบัญชีที่ผูกกับ LDAP ของคนอื่นได้โดยเจ้าของบัญชีไม่ต้องทำอะไร กระทบตั้งแต่รุ่น 10.1
2. **CVE-2026-112212** (CVSS 7.5) ผู้ที่ไม่ต้องล็อกอินอาจวางข้อมูลปลอมลงแคชของเอกสาร OAuth/OIDC discovery เพื่อพาขั้นตอนบางอย่างไปยังเซิร์ฟเวอร์ภายนอก กระทบตั้งแต่รุ่น 18.3

ที่เหลือเป็นระดับ Medium 5 รายการและ Low 4 รายการ เช่น CVE-2026-105777 ที่อาจเปิดเผยข้อมูลรับรองภายในของเซิร์ฟเวอร์ผ่าน response header และ CVE-2026-14288 ที่อาจเลี่ยงนโยบายอนุมัติ merge request บน branch ที่ป้องกันไว้ใน GitLab EE

## สถานะการโจมตีและวิธีตรวจหาร่องรอย

ประกาศของ GitLab ไม่ได้ระบุว่า CVE-2026-110264 ถูกโจมตีจริง และแค็ตตาล็อก KEV ของ CISA ฉบับวันที่ 21 ตุลาคม 2026 ยังไม่มีช่องโหว่นี้ แต่ GitLab ออกกฎตรวจจับในรูปแบบ Sigma 2 ชุดให้ลูกค้าที่ติดตั้งเองใช้ทันที

- **Org mode render error burst** อ่านไฟล์ `exceptions_json.log` และแจ้งเตือนเมื่อ client รายเดียวทำให้ตัวแสดงผล OtherMarkup เกิด `Timeout::Error` กับไฟล์ .org ตั้งแต่ 5 ครั้งขึ้นไปภายใน 30 นาที กฎชุดเดียวกันยังจับการเรียกหน้า preview ที่บังคับใช้ตัวแสดงผล Org กับไฟล์ที่ไม่ใช่ .org
- **Onigmo native worker crash** อ่านไฟล์ `puma_stderr.log` หารายงาน `[BUG]` ที่ Ruby เขียนตอน worker ล่ม ซึ่งมี frame ของ org-ruby หรือ Onigmo กฎนี้จับร่องรอยของ CVE-2026-97229 ได้ด้วย

GitLab ย้ำว่าการโจมตีที่สำเร็จอาจเงียบและไม่ทำให้ worker ล่ม การไม่พบการแจ้งเตือนจึงไม่ได้แปลว่าเครื่องปลอดภัย และควรตรวจร่วมกับ HTTP 502 ของ Workhorse บนหน้าแสดงไฟล์ .org กับการสแกนไฟล์ .org ใน repository ที่มีบรรทัด `#+TODO:` ยาวผิดปกติ GitLab เตือนด้วยว่า log หลายไฟล์ไม่ได้ถูกส่งเข้า SIEM โดยค่าเริ่มต้น

![เอกสารกฎตรวจจับ Org mode render error burst ของ GitLab Security อธิบายสัญญาณของ CVE-2026-110264 ใน exceptions_json.log](https://thaidata-co-th.s3.ap-southeast-1.amazonaws.com/thaidata.co.th/images/articles/gitlab-cve-2026-110264-org-mode-unauthenticated-rce/gitlab-cve-2026-110264-detection-rule.webp?v=df65894a) _(ภาพ: GitLab (ภาพหน้าจอ))_

## ทำไมเรื่องนี้สำคัญ

GitLab เก็บซอร์สโค้ด ข้อมูลลับของ pipeline และ token ที่เชื่อมไปยังระบบ deploy การยึดเซิร์ฟเวอร์ GitLab ได้จึงเปิดทางไปทั้งห่วงโซ่การพัฒนาซอฟต์แวร์ CVE-2026-110264 อันตรายกว่า CVE-2026-97229 ในแง่ขอบเขต เพราะกระทบทุกรุ่นตั้งแต่ 7.0 ซึ่งรวมเครื่องเก่าที่ถูกลืมและไม่ได้อัปเดตมานาน รายละเอียดใน issue tracker ของ GitLab จะเปิดเผยหลังออกแพตช์ 90 วัน และบันทึก CVE อ้างถึงรายงานบน HackerOne ที่ติดป้ายว่ามีชุดการโจมตี (exploit) เมื่อข้อมูลเหล่านี้เปิดสู่สาธารณะ ผู้โจมตีรายอื่นจะทำตามได้ง่ายขึ้น

## สิ่งที่องค์กรไทยควรทำ

- **ไล่หาเครื่อง GitLab ที่ติดตั้งเองทุกเครื่อง** รวมเครื่องทดสอบ เครื่องของโครงการเก่า และเครื่องที่ผู้รับเหมาตั้งไว้ แล้วอัปเดตเป็นรุ่นที่แก้แล้วตามตาราง เครื่องที่ลงแพตช์ CVE-2026-97229 ไปแล้วเมื่อสัปดาห์ก่อนต้องอัปเดตอีกรอบ
- **เครื่องที่เปิดออกอินเทอร์เน็ตทำก่อน** ระหว่างรออัปเดต ทบทวนว่าจำเป็นต้องเปิดให้คนภายนอกสมัครสมาชิกหรือสร้างโปรเจกต์สาธารณะหรือไม่ เพราะ GitLab ระบุว่าผู้โจมตีต้องการโปรเจกต์สาธารณะที่วางไฟล์ .org ได้ วิธีนี้เป็นเพียงการลดช่องทาง ไม่ใช่การแก้ช่องโหว่
- **นำกฎตรวจจับ 2 ชุดของ GitLab เข้า SIEM** และตรวจว่าส่ง `exceptions_json.log`, `puma_stderr.log` และ log ของ Workhorse ออกไปเก็บจริง จากนั้นตรวจย้อนหลังหาไฟล์ .org แปลกปลอมในโปรเจกต์สาธารณะ
- **ถ้าพบสัญญาณผิดปกติ ให้หมุนเวียนข้อมูลลับ** ทั้งตัวแปร CI/CD, token ของ runner, access token และข้อมูลใน gitlab-secrets.json เพราะ GitLab ระบุว่าผู้ที่เจาะสำเร็จเข้าถึงข้อมูลเหล่านี้ได้ ติดตามข่าวช่องโหว่อื่น ๆ ได้ที่[หมวด Security](/security/)

## คำถามที่พบบ่อย

### CVE-2026-110264 คืออะไร?

CVE-2026-110264 คือช่องโหว่ integer overflow ตอนคอมไพล์ regular expression ใน GitLab Community Edition และ Enterprise Edition ที่ติดตั้งเอง ผู้โจมตีที่ไม่ต้องล็อกอินรันโค้ดบนเซิร์ฟเวอร์ GitLab ได้ GitLab ให้คะแนน CVSS 3.1 เต็ม 10.0 และแพตช์เมื่อ 21 ตุลาคม 2026

### GitLab รุ่นใดได้รับผลกระทบจาก CVE-2026-110264 และต้องอัปเดตเป็นรุ่นใด?

CVE-2026-110264 กระทบ GitLab CE/EE ทุกรุ่นตั้งแต่ 7.0 ที่เก่ากว่า 18.11.13 และรุ่น 19.0 ถึง 19.5 ที่ยังไม่ได้แพตช์ ต้องอัปเดตเป็น 18.11.13, 19.0.10, 19.1.9, 19.2.9, 19.3.6, 19.4.3 หรือ 19.5.1 ตามสายที่ใช้ ส่วน GitLab.com แพตช์แล้ว

### CVE-2026-110264 ต่างจาก CVE-2026-97229 อย่างไร?

ทั้งสองช่องโหว่ได้ CVSS 10.0 และเกิดใน Onigmo ซึ่งเป็นเอนจิน regex ของ Ruby เหมือนกัน แต่ CVE-2026-97229 อยู่ที่ regex ในคอนฟิก CI/CD และกระทบเฉพาะรุ่น 19.2 ถึง 19.4 ส่วน CVE-2026-110264 อยู่ที่ตัวแสดงผลไฟล์ Org-mode และกระทบตั้งแต่รุ่น 7.0 แพตช์ของรอบ 12 ต.ค. ไม่ได้ปิด CVE-2026-110264

### CVE-2026-110264 ถูกโจมตีจริงแล้วหรือยัง?

ประกาศแพตช์ของ GitLab วันที่ 21 ตุลาคม 2026 ไม่ได้ระบุว่า CVE-2026-110264 ถูกโจมตีจริง และแค็ตตาล็อก KEV ของ CISA ฉบับ 21 ตุลาคม 2026 ยังไม่มีช่องโหว่นี้ แต่ GitLab ออกกฎตรวจจับความพยายามโจมตี 2 ชุดให้ลูกค้าที่ติดตั้งเองใช้แล้ว


## แหล่งอ้างอิง

- [GitLab Critical Patch Release: 19.5.1, 19.4.3, 19.3.6, 19.2.9, 19.1.9, 19.0.10, 18.11.13](https://docs.gitlab.com/releases/patches/patch-release-gitlab-19-5-1-released/) — GitLab
- [CVE-2026-110264 Detail](https://nvd.nist.gov/vuln/detail/CVE-2026-110264) — NIST National Vulnerability Database
- [Org mode render error burst (TLDR detection)](https://gitlab.com/gitlab-security-oss/tldr/-/blob/main/Detections/platforms/GitLab/Vulnerability%20Detections/org_mode_render_error_burst.md?ref_type=heads) — GitLab Security
- [Onigmo native worker crash (TLDR detection)](https://gitlab.com/gitlab-security-oss/tldr/-/blob/main/Detections/platforms/GitLab/Vulnerability%20Detections/onigmo_native_worker_crash.md?ref_type=heads) — GitLab Security
- [Known Exploited Vulnerabilities Catalog](https://www.cisa.gov/known-exploited-vulnerabilities-catalog) — CISA
