เปิดเผยช่องโหว่ Squidbleed อายุ 29 ปี รั่วข้อมูล HTTP แบบ plaintext ผ่านพร็อกซี่เดียวกัน

ที่มาภาพ: The Hacker News

Security-อ่าน 6 นาทีThe Hacker News

เปิดเผยช่องโหว่ Squidbleed อายุ 29 ปี รั่วข้อมูล HTTP แบบ plaintext ผ่านพร็อกซี่เดียวกัน

⚡ สรุป 30 วิ

นักวิจัยจาก Calif.io พบช่องโหว่ heap over‑read ใน Squid ชื่อ Squidbleed ซึ่งอายุ 29 ปี ทำให้ผู้ใช้ที่แชร์พร็อกซี่เดียวกันสามารถดึงข้อมูล HTTP แบบ plaintext…

การพบช่องโหว่ระดับ heap over‑read ในซอฟต์แวร์พร็อกซี่แบบเปิด‑ซอร์ส Squid ทำให้ผู้ใช้ที่สามารถส่งทราฟฟิกผ่านพร็อกซี่เดียวกันอาจดึงข้อมูล HTTP แบบ plaintext ของผู้ใช้คนอื่น รวมถึงข้อมูลรับรองและโทเคนเซสชันได้ ช่องโหว่นี้ได้รับชื่อว่า Squidbleed และมีอายุราว 29 ปีตั้งแต่การเปลี่ยนแปลงการแยกวิเคราะห์ FTP ในปี 1997 แต่ยังคงอยู่ในค่าตั้งต้นของ Squid เวอร์ชันปัจจุบันตามที่นักวิจัยจาก Calif.io เปิดเผยในเดือน มิถุนายนที่ผ่านมา

Overview

Squid เป็นพร็อกซี่เว็บที่ใช้กันอย่างแพร่หลายทั้งในองค์กรและผู้ให้บริการอินเทอร์เน็ต เพื่อทำ caching, การกรองเนื้อหา และการควบคุมการเข้าถึง การทำงานของมันอาศัยการจัดการหน่วยความจำแบบไดนามิก ซึ่งทำให้เกิดความเสี่ยงต่อการอ่านข้อมูลเกินขอบเขต (over‑read) หากมีข้อบกพร่องในโค้ด การตรวจสอบหน่วยความจำไม่เพียงพอจะทำให้ข้อมูลจากบัฟเฟอร์หนึ่งถูกเปิดเผยต่อบัฟเฟอร์อื่นโดยไม่ได้ตั้งใจ

ในกรณีของ Squidbleed นักวิจัยพบว่าการอ่านค่าใน heap เกินขอบเขตทำให้ข้อมูล HTTP request ของผู้ใช้หนึ่งถูกคัดลอกไปยังตำแหน่งหน่วยความจำที่ผู้ใช้คนอื่นสามารถอ่านได้ ซึ่งผู้โจมตีไม่จำเป็นต้องมีสิทธิ์เข้าถึงเซิร์ฟเวอร์โดยตรง เพียงแค่เป็นผู้ที่อนุญาตให้ส่งคำขอผ่านพร็อกซี่เดียวกันก็สามารถดึงข้อมูลเหล่านั้นออกมาได้

Technical Details

การโจมตีอาศัยการจัดการ FTP parsing ที่ถูกเพิ่มเข้ามาในปี 1997 เพื่อสนับสนุนการดึงข้อมูลไฟล์ผ่าน FTP ใน Squid การเปลี่ยนแปลงนี้ทำให้ฟังก์ชันบางส่วนจัดสรรหน่วยความจำโดยไม่มีการตรวจสอบขนาดอย่างเพียงพอ เมื่อมีการรับคำขอ HTTP ที่มีขนาดต่างกันหลายคำขอต่อเนื่อง ระบบอาจเขียนข้อมูลใหม่ทับบัฟเฟอร์เก่าที่ยังคงอยู่ใน heap

ผลลัพธ์คือผู้โจมตีที่อยู่ในเครือข่ายเดียวกันกับพร็อกซี่สามารถทำการอ่านข้อมูลแบบ plaintext ที่รวมถึง:

  • URL ของคำขอ
  • ค่าหัวข้อ HTTP (Headers)
  • คุกกี้, token, หรือข้อมูลรับรองที่ส่งในคำขอ

การรั่วไหลนี้ไม่จำกัดเฉพาะข้อมูลที่อยู่ใน URL เท่านั้น แต่รวมถึงข้อมูลที่ถูกส่งผ่าน POST หรือ HEADERS ด้วย ซึ่งอาจทำให้ข้อมูลเซสชันหรือรหัสผ่านถูกเปิดเผยต่อผู้ไม่ประสงค์ดี

Impact

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

นอกจากนี้ เนื่องจาก Squidbleed ทำงานในระดับ heap over‑read จึงไม่จำเป็นต้องทำการรบกวนหรือทำลายระบบเพื่อให้ได้ผลลัพธ์ ผู้โจมตีเพียงแค่ส่งคำขอที่ออกแบบมาเฉพาะก็สามารถกระตุ้นการอ่านข้อมูลได้ทันที ทำให้ความเสี่ยงต่อการใช้ในสถานการณ์จริงสูง โดยเฉพาะในเครือข่ายที่มีหลายผู้ใช้แชร์พร็อกซี่เดียวกัน

Mitigation

ผู้ดูแลระบบที่ใช้งาน Squid ควรดำเนินการตามขั้นตอนต่อไปนี้เพื่อป้องกันการรั่วไหลของข้อมูล

  • อัปเดต Squid ไปยังรุ่นล่าสุดที่มีการแก้ไขข้อบกพร่องเรื่อง heap over‑read (หากมีการออกแพตช์จากผู้พัฒนา)
  • ตรวจสอบการกำหนดค่าพร็อกซี่ โดยปิดการใช้งานฟีเจอร์ FTP ที่ไม่จำเป็น หรือกำหนดให้รับเฉพาะการเชื่อมต่อจากแหล่งที่เชื่อถือได้เท่านั้น
  • จำกัดการเข้าถึง ให้ผู้ใช้ที่สามารถส่งทราฟฟิกผ่านพร็อกซี่มีเพียงผู้ที่ได้รับอนุญาตจริง ๆ ผ่านการตรวจสอบการยืนยันตัวตนและการควบคุมเครือข่าย
  • เฝ้าตรวจสอบบันทึก เพื่อหาพฤติกรรมที่ผิดปกติ เช่น คำขอ HTTP ที่มีขนาดหรือรูปแบบไม่สอดคล้องกับการใช้งานปกติ

การดำเนินการเหล่านี้จะช่วยลดโอกาสที่ผู้โจมตีจะใช้ช่องโหว่ Squidbleed ได้อย่างมีประสิทธิภาพ

Analysis

การที่ช่องโหว่นี้มีอายุยาวนานกว่า สองทศวรรษ แสดงให้เห็นถึงความท้าทายในการดูแลซอฟต์แวร์โอเพ่นซอร์สที่มีการพัฒนาและปรับปรุงต่อเนื่องโดยชุมชน การเปลี่ยนแปลงโค้ดที่ดูเหมือนไม่สำคัญในปี 1997 กลับกลายเป็นจุดอ่อนที่อาจทำให้ข้อมูลสำคัญของผู้ใช้รั่วไหลได้ในยุคปัจจุบัน

นอกจากนี้ การเปิดเผยช่องโหว่โดยนักวิจัยอิสระจาก Calif.io แสดงถึงบทบาทสำคัญของชุมชนความปลอดภัยในการตรวจจับและสื่อสารความเสี่ยงที่อาจถูกมองข้ามโดยผู้พัฒนาซอฟต์แวร์เอง การตอบสนองต่อ Squidbleed ควรเป็นการผสมผสานระหว่างการอัปเดตโค้ด การปรับปรุงนโยบายการจัดการเครือข่าย และการส่งเสริมให้ผู้ใช้ตรวจสอบการตั้งค่าอย่างสม่ำเสมอ

Summary

ช่องโหว่ Squidbleed ทำให้ข้อมูล HTTP แบบ plaintext ของผู้ใช้หนึ่งสามารถถูกดึงออกโดยผู้ใช้คนอื่นที่ใช้พร็อกซี่เดียวกันได้ การโจมตีเกิดจากการอ่าน heap เกินขอบเขตที่มีมาตั้งแต่ปี 1997 และยังคงอยู่ในค่าตั้งต้นของ Squid ปัจจุบัน การอัปเดตซอฟต์แวร์และการปรับปรุงการกำหนดค่าเป็นวิธีหลักในการลดความเสี่ยงนี้.

แชร์บทความนี้:

ชอบบทความแบบนี้?

สมัคร AI Automate Weekly Newsletter — รับเคล็ดลับ AI + how-to ใหม่
ทุกสัปดาห์ตรงถึง inbox ฟรี ไม่มีสแปม

แหล่งข่าวต้นฉบับ

ชื่อต้นฉบับ
29-Year-Old Squid Proxy Bug 'Squidbleed' Can Leak Cleartext HTTP Requests
ผู้เขียน
[email protected] (The Hacker News)
แหล่ง
The Hacker News
วันที่เผยแพร่
22 มิถุนายน 2569 เวลา 21:29

Related

บทความที่เกี่ยวข้อง

เว็บบินาร์สำรวจวิธีโจมตีหลบ MFA ด้วยฟิชชิงและแนวทางตอบโต้ด้วยพฤติกรรม AISecurity
21 มิถุนายน 2569 เวลา 06:30

เว็บบินาร์สำรวจวิธีโจมตีหลบ MFA ด้วยฟิชชิงและแนวทางตอบโต้ด้วยพฤติกรรม AI

การโจมตีแบบฟิชชิงล่าสุดใช้ Device Code เพื่อหลบ MFA ทำให้ผู้โจมตีเข้าถึงบัญชีโดยไม่ต้องขโมยรหัสผ่าน เว็บบินาร์แนะนำการใช้พฤติกรรม AI…

BleepingComputer6 นาที
Ladybird Browser ห้ามรับ Pull Request สาธารณะ เนื่องจากคว…Security
9 มิถุนายน 2569 เวลา 08:30

Ladybird Browser ห้ามรับ Pull Request สาธารณะ เนื่องจากคว…

Ladybird Browser ประกาศระงับการรับ pull request สาธารณะทั้งหมด เนื่องจากความเสี่ยงด้านความปลอดภัยจากโค้ดที่สร้างโดย AI…

XDA Developers8 นาที
CISA เตือนผู้ใช้ Fortinet: แคมเปญ FortiBleed พบอุปกรณ์ FortiGate 86,644 เครื่องที่อาจถูกเจาะSecurity
-

CISA เตือนผู้ใช้ Fortinet: แคมเปญ FortiBleed พบอุปกรณ์ FortiGate 86,644 เครื่องที่อาจถูกเจาะ

CISA รายงานแคมเปญ FortiBleed ที่มุ่งโจมตี FortiGate ผ่านพอร์ตสาธารณะ พบอุปกรณ์ 86,644 เครื่องที่อาจถูกเข้าถึง…

The Hacker News10 นาที
ย้ายรหัสผ่าน 2FA และ Passkey ไปยัง Vaultwarden ให้ความปลอดภัยและความยืดหยุ่นเหนือคาดSecurity
23 มิถุนายน 2569 เวลา 00:30

ย้ายรหัสผ่าน 2FA และ Passkey ไปยัง Vaultwarden ให้ความปลอดภัยและความยืดหยุ่นเหนือคาด

การย้ายรหัสผ่าน 2FA และ Passkey จากตัวจัดการของเบราว์เซอร์ไปยัง Vaultwarden ทำให้ผู้ใช้ได้ความยืดหยุ่นและความปลอดภัยที่สูงขึ้น รวมถึงการจัดเก็บ OTP และ Passkey…

XDA Developers8 นาที
คัดลอกลิงก์แล้ว!