Microsoft ปรับปรุงสำหรับ ProxyNotShell Exchange zero days

Microsoft ได้อัปเดตการบรรเทาผลกระทบสำหรับช่องโหว่ Exchange Zero-day ล่าสุดที่ติดตามเป็น

CVE-2022-41040 และ CVE-2022-41082 หรือที่เรียกว่า ProxyNotShellคำนะนำเบื้องต้นไม่เพียงพอเนื่องจากนักวิจัยแสดงให้เห็นว่าพวกเขาสามารถข้ามได้อย่างง่ายดายเพื่อให้การโจมตีใหม่ใช้ประโยชน์จากจุดบกพร่องทั้งสอง

การปรับปรุงครั้งที่สองยังไม่เพียงพอเนื่องจากการลดที่เสนอยังคงอนุญาตให้มีการโจมตี ProxyNotShellปรับปรุงกฎการเขียน URL ใหม่รายงานโดยส่วนตัวถึง Microsoft เมื่อสามสัปดาห์ก่อน CVE-2022-41040 เป็นการปลอมแปลงคำขอฝั่งเซิร์ฟเวอร์ (SSRF) ที่ช่วยให้สามารถยกระดับสิทธิ์และทำงานร่วมกับ CVE-2022-41082 เพื่อทริกเกอร์การเรียกใช้โค้ดจากระยะไกลในการปรับใช้

Exchange ภายในองค์กรปัญหาด้านความปลอดภัยทั้งสองมีคะแนนความรุนแรงสูง สาเหตุหลักมาจากการใช้ประโยชน์จากปัญหาเหล่านี้ต้องมีการตรวจสอบสิทธิ์

ตรวจพบผู้คุกคามที่ใช้ประโยชน์จากห่วงโซ่ข้อผิดพลาดในเดือนสิงหาคมเพื่อติดตั้งเว็บเชลล์ของ China Chopper และมีส่วนร่วมในการลาดตระเวน Active Directory และการขโมยข้อมูล

Microsoft ในวันที่ 3 ตุลาคมได้เผยแพร่การบรรเทาผลกระทบเพื่อป้องกันการโจมตีที่รู้จักเหล่านี้ เนื่องจากกฎการบล็อก URL ที่เสนอมีความเฉพาะเจาะจงเกินไป ฝ่ายตรงข้ามยังสามารถใช้ประโยชน์จากช่องโหว่ของ Exchange ในการโจมตีครั้งใหม่ได้

นักวิจัยด้านความปลอดภัยหลายคนชี้ให้เห็นถึงสิ่งนี้และแนะนำวิธีแก้ปัญหาชั่วคราวที่มีข้อจำกัดน้อยกว่า จนกว่าจะมีแพตช์ให้บริการ

Microsoft ได้ตรวจสอบข้อเสนอแนะและนำไปใช้ในการบรรเทาผลกระทบที่ปรับปรุงแล้ว ด้านล่างนี้คือข้อแตกต่างที่สำคัญระหว่างคำแนะนำที่ปรับปรุงแล้ว (สีเขียว) และคำแนะนำเริ่มต้น (สีแดง)

การอัปเดตการบรรเทาปัญหาของ Microsoft สำหรับข้อบกพร่อง Zero-day ของ ProxyNotShell
การปรับปรุงรูปแบบ URL เพื่อลดแหล่งที่มาของการหาประโยชน์จาก ProxyNotShell
: BleepingComputer
อย่างไรก็ตาม นักวิจัยด้านความปลอดภัยพบว่าเงื่อนไข ‘ {URL}ถึง{REQUEST_URI} ‘ ในกฎการเขียน URL ซ้ำยังช่วยให้ผู้โจมตีสามารถเลี่ยงการบรรเทาผลกระทบได้

แฮ็กเกอร์อิสระPieter Hiele สังเกตว่าเงื่อนไขสำหรับการกรองสตริงใน URI ไม่ได้พิจารณาถึงการเข้ารหัสอักขระ ซึ่งทำให้กฎไม่มีประสิทธิภาพ:

เลี่ยงการบรรเทาของ Microsoft สำหรับ ProxyNotShell
ที่มา: Pieter Hiele
Will Dormannอดีตนักวิเคราะห์ของ CERT/CC ยืนยันว่าการบายพาสของ Hiele อธิบายว่า {REQUEST_URI} ไม่มีประโยชน์เมื่อมีการเข้ารหัสอักขระ

ตัวแปรที่ดีกว่าคือ{UrlDecode:{REQUEST_URI}} ที่ถอดรหัสสตริงอินพุตที่เข้ารหัส URL ซึ่งช่วยให้จับคู่กับรูปแบบที่ให้ไว้ ซึ่งในกรณีนี้คือ .*autodiscover\.json.*Powershell.*

นักวิจัยด้านความปลอดภัย Kevin Beamont ซึ่งตั้งชื่อช่องโหว่ทั้งสองว่า ProxyNotShell ตั้งข้อสังเกตว่าการเข้ารหัสตัวอักษรหนึ่งตัวในรูปแบบการกรองนั้นเพียงพอแล้วเพื่อหลีกเลี่ยงการบรรเทาปัญหาที่ได้รับการปรับปรุงครั้งแรกจาก Microsoft

การบรรเทาผลกระทบที่ปรับปรุงแล้วของ Microsoft สำหรับ ProxyNotShell นั้นไม่เพียงพอ
ที่มา: Will Dormann
อัปเดต: Microsoft ได้อัปเดตการบรรเทาผลกระทบเพื่อพิจารณาสถานการณ์ที่เข้ารหัส URL และเปลี่ยนเป็นเงื่อนไข {UrlDecode:{REQUEST_URI}}

Beaumont ยังตรวจสอบการโจมตี ProxyNotShell และสังเกตว่าผู้คุกคามใช้ทั้งการเลี่ยงผ่านก่อนหน้าและปัจจุบันสำหรับรูปแบบการบรรเทาผลกระทบจาก Microsoft

นอกจากนี้ บริษัทวิจัยGreyNoise ยังตรวจพบการสแกนหาระบบที่มีช่องโหว่ ProxyNotShell จากที่อยู่ IP 24 แห่ง โดย 22 แห่งถูกระบุว่าเป็นอันตราย

GreyNoise พบการสแกนหาโฮสต์ที่มีช่องโหว่ ProxyNotShell จากที่อยู่ IP 22 แห่งที่ถือว่าเป็นอันตรายสามตัวเลือกการบรรเทาผลกระทบในวันอังคารที่ Microsoft ประกาศว่าได้อัปเดตคำแนะนำด้วยกฎการเขียน URL ที่ปรับปรุงใหม่ โดยแนะนำให้ลูกค้า Exchange Server ตรวจสอบและใช้หนึ่งในสามตัวเลือกการบรรเทาปัญหาที่มีให้

ลูกค้าที่เปิดใช้งาน Exchange Emergency Mitigation Service (EEMS) จะได้รับประโยชน์โดยอัตโนมัติจากการแก้ไข URL Rewrite ที่อัปเดตสำหรับ Exchange Server 2016 และ Exchange Server 2019

ตอนนี้ สคริปต์ EOMTv2 (เวอร์ชัน 22.10.03.1829) มีการปรับปรุงกฎการเขียน URL ใหม่ มีการอัปเดตโดยอัตโนมัติบนเครื่องที่เชื่อมต่ออินเทอร์เน็ต และควรเรียกใช้อีกครั้งบน Exchange Server โดยไม่ต้องเปิดใช้งาน EEMS

ตัวเลือกที่สามคือการลบกฎที่สร้างไว้ก่อนหน้านี้ด้วยตนเองและเพิ่มกฎที่ปรับปรุงแล้วโดยทำตามคำแนะนำด้านล่าง:

เปิด IIS Manager
เลือกเว็บไซต์เริ่มต้น
ในมุมมองคุณลักษณะคลิกURL Rewrite
ในบานหน้าต่างการดำเนินการทางด้านขวา คลิกเพิ่มกฎ…
เลือกขอบล็อกแล้วคลิกตกลง
เพิ่มสตริง “ .*autodiscover\.json.*Powershell.* ” (ไม่รวมเครื่องหมายคำพูด)
เลือกนิพจน์ทั่วไปภายใต้การใช้
เลือกยกเลิกคำขอภายใต้วิธีการบล็อกแล้วคลิกตกลง
ขยายกฎและเลือกกฎด้วยรูปแบบ: .*autodiscover\.json.*Powershell.*และคลิกแก้ไขภายใต้เงื่อนไข
เปลี่ยนอินพุตเงื่อนไขจาก {URL} เป็น{UrlDecode:{REQUEST_URI}}
นอกจากนี้ Microsoft แนะนำให้ ปิดใช้งานการเข้าถึง PowerShell ระยะไกล สำหรับผู้ใช้ที่ไม่ใช่ผู้ดูแลระบบ การดำเนินการควรใช้เวลาน้อยกว่าห้านาที และสามารถบังคับใช้ข้อจำกัดสำหรับผู้ใช้เพียงคนเดียวหรือหลายคน

เป็นที่น่าสังเกตว่า Microsoft ได้จัดเตรียมการบรรเทาปัญหาเหล่านี้ให้กับลูกค้าด้วยเซิร์ฟเวอร์ Exchange ภายในองค์กร ซึ่งหมายความว่าบริษัทที่มีการ ปรับใช้แบบไฮบริด ก็มีความเสี่ยงเช่นกัน

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

Releated