Ruby OpenID บน Ubuntu อุดช่องโหว่ SSRF: USN-9085-1
ผู้ดูแลระบบและนักพัฒนาที่ใช้ Ruby OpenID บน Ubuntu รุ่นที่ระบุควรตรวจแพ็กเกจและเร่งอัปเดต โดยเฉพาะบริการที่รับ OpenID response จากภายนอก
1-minute summary
- Symptom / problem
- Ruby OpenID ส่งคำขอไปยัง URL ของตัวตนที่อ้างก่อนตรวจลายเซ็น เปิดช่องให้เกิด SSRF
- Who should read
- ผู้ดูแลระบบและนักพัฒนาที่ใช้แพ็กเกจ ruby-openid บน Ubuntu 18.04 LTS หรือ 16.04 LTS
- Fix in short
- อัปเดต ruby-openid เป็นรุ่นแก้ตาม Ubuntu ที่ใช้งาน โดยแพตช์ของ 18.04 LTS อยู่ใน Ubuntu Pro ผ่าน ESM Apps
พอดีเห็น Ubuntu ออกประกาศ USN-9085-1 วันที่ 12 พฤศจิกายน 2026 แก้ช่องโหว่ใน Ruby OpenID ซึ่งเป็นไลบรารีสำหรับเข้าสู่ระบบผ่าน OpenID ปัญหาคือไลบรารีส่งคำขอออกไปก่อนตรวจลายเซ็นของข้อมูลที่รับมา ใครใช้แพ็กเกจ ruby-openid บน Ubuntu รุ่นที่ระบุควรตรวจและเร่งอัปเดต
ใครต้องทำอะไร
- ผู้ดูแลระบบ: ถ้าเซิร์ฟเวอร์ Ubuntu 18.04 LTS หรือ 16.04 LTS ใช้ Ruby OpenID ให้เร่งอัปเดตแพ็กเกจ โดยเริ่มจากบริการที่รับข้อมูลจากภายนอก
- นักพัฒนา: ถ้าแอปใช้ไลบรารีนี้บน Ubuntu สองรุ่นนี้ ให้อัปเดตไลบรารีที่แอปใช้และทดสอบการเข้าสู่ระบบก่อนเปิดให้ใช้งานต่อ
เกิดอะไรขึ้น
ช่องโหว่ CVE-2019-11027 เกิดจาก Ruby OpenID ติดต่อ claimed identifier URL ก่อนตรวจลายเซ็นของ OpenID response ซึ่งเป็นข้อมูลตอบกลับในขั้นตอนเข้าสู่ระบบ URL นี้คือที่อยู่ของตัวตนที่ข้อมูลนั้นอ้างถึง ผู้โจมตีทางเครือข่ายอาจใช้ช่องนี้ทำ SSRF หรือ server-side request forgery ได้
SSRF คือการทำให้เซิร์ฟเวอร์ส่งคำขอไปยังปลายทางที่ผู้โจมตีเลือก ในกรณีนี้เซิร์ฟเวอร์ติดต่อ URL ก่อนตรวจลายเซ็น ผู้ดูแลควรตรวจทั้งจุดที่รับ OpenID response และปลายทางที่เซิร์ฟเวอร์เชื่อมต่อได้ เพื่อประเมินความเสี่ยงของแต่ละแอป
ประกาศนี้ไม่ได้ระบุระดับความรุนแรงหรือคะแนน CVSS และไม่ได้ให้วิธีแก้ชั่วคราวไว้ แนวทางที่ Ubuntu ให้คืออัปเดตแพ็กเกจเป็นรุ่นที่แก้แล้ว
ใครโดนและรุ่นที่แก้
ตารางนี้แสดงรุ่นแพ็กเกจที่ Ubuntu ระบุว่าแก้แล้ว ให้เลือกตามรุ่นระบบ เลขเหล่านี้เป็นรุ่นแพ็กเกจ ruby-openid ของ Ubuntu
| Ubuntu | แพ็กเกจ | รุ่นที่แก้แล้ว |
|---|---|---|
| 18.04 LTS (Bionic) | ruby-openid | 2.7.0debian-1ubuntu0.18.04.1~esm1 |
| 16.04 LTS (Xenial) | ruby-openid | 2.7.0debian-1ubuntu0.16.04.1~esm1 |
สำหรับ Ubuntu 18.04 LTS หน้าแจ้งเตือนระบุว่าแพตช์มีให้ผ่าน Ubuntu Pro ใน ESM Apps ผู้ดูแลควรตรวจสิทธิ์และแหล่งแพ็กเกจของเครื่องก่อนเริ่มงาน เพื่อให้แน่ใจว่าระบบมองเห็นรุ่นแก้ในตารางจริง
ต้องทำอะไร
ตรวจว่าแอปโหลด Ruby OpenID จากแพ็กเกจของระบบหรือจัดการไลบรารีแยกไว้ ถ้าใช้แพ็กเกจ Ubuntu คำสั่งนี้จะแสดงรุ่นก่อนอัปเดต ดูรุ่นที่คลังเสนอ และตรวจรุ่นหลังติดตั้ง
dpkg-query -W -f='${Package} ${Version}\n' ruby-openid
sudo apt update
apt-cache policy ruby-openid
sudo apt install --only-upgrade ruby-openid
dpkg-query -W -f='${Package} ${Version}\n' ruby-openid
ถ้าตรวจแล้วไม่พบแพ็กเกจ ให้ดูวิธีติดตั้งไลบรารีของแอปต่อ เพราะแอปอาจไม่ได้ใช้แพ็กเกจของระบบ หากมีแพ็กเกจแต่ยังไม่เห็นรุ่นแก้ ให้ตรวจแหล่งอัปเดตและสิทธิ์รับแพตช์ แล้วเทียบเลขรุ่นหลังติดตั้งอีกครั้ง
หลังอัปเดต ให้ทดสอบการเข้าสู่ระบบผ่าน OpenID หากแอปโหลดไลบรารีค้างไว้ ให้เริ่มบริการใหม่ตามขั้นตอนบำรุงรักษา ส่วนแอปที่ติดตั้งผ่านช่องทางอื่น ต้องตรวจแพตช์จากช่องทางนั้นแยก เลขรุ่นในตารางนี้ใช้กับแพ็กเกจ Ubuntu
ส่วนตัวผมให้เร่งแพตช์เมื่อยืนยันว่าใช้ Ruby OpenID ตามรายการ โดยเฉพาะระบบที่เปิดรับ OpenID response จากภายนอก ที่มา: USN-9085-1: Ruby OpenID vulnerability ถ้ามีรายละเอียดจากประกาศเพิ่มเติม เดี๋ยวกลับมาแก้เพิ่มให้ภายหลังครับ
Want us to set this up?
Get help with server setup, configuration, migration, or troubleshooting. Save time for the work that matters.
Hit something like this? Stuck somewhere?
Come trade notes on the LinuxThai board



Comments 0
No comments yet — be the first