ผลการตรวจสอบความปลอดภัยอิสระของ Squid ซึ่งเป็นเซิร์ฟเวอร์พร็อกซีแคชโอเพนซอร์สที่ดำเนินการในปี 2021 ได้รับการเผยแพร่แล้ว การตรวจสอบโค้ดเบสของโครงการพบช่องโหว่ 55 รายการ ซึ่ง 35 รายการยังไม่ได้รับการแก้ไขโดยนักพัฒนา (ปัญหาแบบ Zero-day) นักพัฒนาของ Squid ได้รับแจ้งปัญหาเหล่านี้เมื่อสองปีครึ่งที่แล้ว แต่พวกเขาก็ยังไม่ได้ดำเนินการแก้ไขให้เสร็จสิ้น ในที่สุด ผู้เขียนรายงานการตรวจสอบได้ตัดสินใจเปิดเผยข้อมูลก่อนที่ปัญหาทั้งหมดจะได้รับการแก้ไข โดยแจ้งให้นักพัฒนาของ Squid ทราบล่วงหน้า
ท่ามกลางช่องโหว่ที่ระบุ:
- เกิดการล้นของสแต็กในการใช้งานการตรวจสอบสิทธิ์แบบแฮช (การตรวจสอบสิทธิ์แบบไดเจสต์) เมื่อมีการประมวลผลส่วนหัว HTTP ของ Proxy-Authorization ด้วยค่าฟิลด์ "Digest nc" ที่มีค่ามากเกินไป
- การเข้าถึงหน่วยความจำหลังจากได้รับการปลดปล่อยในตัวจัดการคำขอโดยใช้เมธอด TRACE
- ช่องโหว่การใช้งานหลังจากการปลดปล่อยในการร้องขอ HTTP ที่มีส่วนหัวช่วง (CVE-2021-31807)
- เกิดการล้นสแต็กในขณะประมวลผลส่วนหัว HTTP X-Forwarded-For
- เกิดการล้นของสแต็กในขณะประมวลผลคำขอแบบแยกส่วน
- การเข้าถึงหน่วยความจำหลังจากได้รับการปลดปล่อยในอินเทอร์เฟซเว็บ CacheManager
- การล้นของจำนวนเต็มในตัวจัดการส่วนหัวช่วง HTTP (CVE-2021-31808)
- การยึดหลังจากการโอเวอร์โฟลว์แบบฟรีและบัฟเฟอร์ในโปรเซสเซอร์แสดงออก ESI (Edge Side Includes)
- หน่วยความจำรั่วหลายจุด บัฟเฟอร์ล้นขณะอ่าน และปัญหาการทำงานล้มเหลว
ที่มา: opennet.ru
