
PhantomRPC คือช่องโหว่เชิงสถาปัตยกรรมที่เพิ่งถูกค้นพบใหม่ใน Windows Remote Procedure Call (RPC) ซึ่งทำให้สามารถยกระดับสิทธิ์จากผู้ใช้ทั่วไปขึ้นไปเป็นสิทธิ์ระดับ SYSTEM-level โดยอาจส่งผลกระทบต่อ Windows ทุกเวอร์ชัน
ผลการวิจัยนี้ถูกนำเสนอโดย Haidar Kabibo ผู้เชี่ยวชาญด้านความปลอดภัยแอปพลิเคชันจาก Kaspersky ในงาน Black Hat Asia 2026 เมื่อวันที่ 24 เมษายนที่ผ่านมา โดยมีการลงรายละเอียดเส้นทางการโจมตีที่แตกต่างกันถึง 5 รูปแบบ ซึ่งปัจจุบันยังไม่มีแพตช์แก้ไขจาก Microsoft ออกมารองรับแม้แต่รูปแบบเดียว
PhantomRPC ไม่ใช่ช่องโหว่ประเภท Memory Corruption หรือข้อผิดพลาดทางตรรกะในส่วนประกอบเดียวแบบเดิม ๆ แต่เป็นการใช้ประโยชน์จากช่องโหว่ในการออกแบบโครงสร้างของ Windows RPC runtime (rpcrt4.dll) ในส่วนที่จัดการกับการเชื่อมต่อไปยัง RPC Server ที่ไม่พร้อมใช้งาน
เมื่อกระบวนการทำงานที่มีสิทธิ์สูงพยายามเรียกใช้งาน RPC ไปยังเซิร์ฟเวอร์ที่อยู่ในสถานะออฟไลน์ หรือถูกปิดใช้งาน ตัว RPC Runtime จะไม่มีการตรวจสอบว่าเซิร์ฟเวอร์ที่ตอบกลับมานั้นเป็นตัวจริงที่ถูกต้องหรือไม่
หมายความว่า ผู้โจมตีที่ควบคุม process ที่มีสิทธิ์ต่ำ (เช่น process ที่รันภายใต้สิทธิ์ NT AUTHORITY\NETWORK SERVICE) สามารถติดตั้ง RPC Server ปลอมที่เลียนแบบ Endpoint ของจริง เพื่อเข้าไปดักรอรับการเชื่อมต่อเหล่านั้นได้

วิธีการหลักของการใช้ช่องโหว่นี้ขึ้นอยู่กับ API ที่ชื่อว่า RpcImpersonateClient โดยเมื่อไคลเอนต์ที่มีสิทธิ์สูงเชื่อมต่อเข้ามายังเซิร์ฟเวอร์ปลอมด้วยระดับการสวมสิทธิ์ที่สูง เซิร์ฟเวอร์ของผู้โจมตีจะเรียกใช้ API นี้เพื่อเอา Security Context ของไคลเอนต์นั้น ๆ ส่งผลให้แฮ็กเกอร์สามารถยกระดับสิทธิ์จากบัญชีบริการที่มีสิทธิ์ต่ำ ขึ้นเป็นสิทธิ์ระดับ SYSTEM หรือ Administrator ได้โดยตรง
5 วิธีการโจมตี
นักวิจัยได้ระบุสถานการณ์การโจมตีที่ชัดเจนห้าแบบดังนี้
1. การบังคับเข้าผ่าน gpupdate.exe
- หลักการทำงาน: เมื่อรันคำสั่ง gpupdate /force บริการ Group Policy Client (ซึ่งรันด้วยสิทธิ์ SYSTEM) จะพยายามเรียกใช้งาน RPC ไปยังบริการที่ชื่อว่า TermService
- การโจมตี: หากแฮ็กเกอร์สั่งปิด TermService ไว้ก่อน แล้วเอา RPC Server ปลอมไปดักรอ เมื่อมีการอัปเดต Policy แฮ็กเกอร์จะได้สิทธิ์ SYSTEM ทันที
2. จังหวะเริ่มทำงานของ Microsoft Edge (Microsoft Edge startup)
- หลักการทำงาน: ทุกครั้งที่เปิดเบราว์เซอร์ Edge ตัวโปรแกรมจะส่ง RPC call ไปหา TermService พร้อมแนบระดับการสวมสิทธิ์ (Impersonation Level) ที่สูงมากมาด้วย
- การโจมตี: แฮ็กเกอร์แค่เปิดโปรแกรมดักรอไว้ก็สามารถยกระดับสิทธิ์จาก Network Service (สิทธิ์ต่ำ) ขึ้นเป็น Administrator ได้โดยที่ผู้ใช้ไม่ต้องทำอะไรเพิ่มเติมนอกจากการเปิดเบราว์เซอร์ปกติ
3. บริการเบื้องหลัง WDI (WDI background service)
- หลักการทำงาน: บริการ Diagnostic System Host ซึ่งมีสิทธิ์ SYSTEM จะทำการ Poll บริการ TermService โดยอัตโนมัติทุก ๆ 5–15 นาที
- การโจมตี: รูปแบบนี้น่ากลัวที่สุดเพราะแฮ็กเกอร์ไม่ต้องหลอกล่อให้ใครรันคำสั่งอะไรเลย แค่ติดตั้งเซิร์ฟเวอร์ปลอมทิ้งไว้ในเครื่อง แล้วนั่งรอให้ระบบ Windows วิ่งมาหาเองตามรอบเวลา
4. คำสั่ง ipconfig และ DHCP Client
- หลักการทำงาน: การรันคำสั่ง ipconfig.exe จะมีการเรียกใช้ RPC ภายในไปยังบริการ DHCP Client
- การโจมตี: หากบริการ DHCP ถูกปิดใช้งาน และมีเซิร์ฟเวอร์ปลอมดักอยู่ ผู้โจมตีที่มีสิทธิ์แค่ Local Service จะสามารถข้ามขั้นไปเป็น Administrator ได้ทันที
5. คำสั่ง w32tm และเวลาของ Windows (Windows Time)
- หลักการทำงาน: โปรแกรมจัดการเวลา w32tm.exe จะพยายามเชื่อมต่อไปยัง Pipe ที่ไม่มีอยู่จริงชื่อ \PIPE\W32TIME เป็นอันดับแรก
- การโจมตี: แฮ็กเกอร์สามารถสร้าง endpoint ปลอมนี้ขึ้นมาได้ โดยไม่ต้องปิดบริการของจริง (เพราะของจริงไม่ได้ใช้ชื่อนี้) จากนั้นก็แค่รอสวมรอยเป็นผู้ใช้สิทธิ์สูงคนไหนก็ตามที่สั่งรันคำสั่งเช็กเวลา
การตอบสนองจาก Microsoft - ยังไม่มีแพตช์
ช่องโหว่นี้ถูกรายงานไปยังศูนย์ตอบสนองความปลอดภัยของ Microsoft (MSRC) ตั้งแต่วันที่ 19 กันยายน 2025
20 วันต่อมา Microsoft ตอบกลับโดยจัดระดับความรุนแรงไว้เพียงระดับปานกลางโดยให้เหตุผลว่า การโจมตีนี้จำเป็นต้องมีสิทธิ์ SeImpersonatePrivilege ซึ่งเป็นสิทธิ์ที่บัญชี Network Service และ Local Service มีเป็นค่าเริ่มต้นอยู่แล้ว
รายงานจาก Kaspersky ระบุว่า "ไม่มีการออกเลข CVE ให้ และเคสนี้ถูกปิดลงโดยไม่มีกำหนดการแก้ไข"
จนกว่าจะมีการออกแพตช์ ผู้ดูแลระบบดำเนินการดังต่อไปนี้
- เฝ้าระวังผ่าน ETW : ตรวจสอบ Error ที่ชื่อ RPC_S_SERVER_UNAVAILABLE (Event ID 1) ควบคู่ไปกับการดูว่ามีการพยายามใช้สิทธิ์สวมรอยจาก process ที่มีสิทธิ์สูงหรือไม่
- เปิดใช้งานบริการที่มักถูกปิด (Enable disabled services): เช่น TermService หากทำได้ เพื่อให้มั่นใจว่า endpoints ถูกต้องถูกใช้งานอยู่ และไม่สามารถถูกสวมรอยได้
- จำกัดสิทธิ์ SeImpersonatePrivilege: ตรวจสอบ และจำกัดสิทธิ์นี้ให้เฉพาะโปรแกรมที่จำเป็นจริง ๆ เท่านั้น อย่าให้สิทธิ์นี้กับแอปพลิเคชันจาก third-party
Kaspersky ได้เผยแพร่เครื่องมือทั้งหมดที่ใช้ในกรอบงานวิจัยผ่านทาง PhantomRPC บน GitHub ซึ่งช่วยให้องค์กรต่าง ๆ สามารถตรวจสอบสภาพแวดล้อมของตนเองเพื่อหาช่องโหว่ของการเรียกใช้ RPC ได้
ที่มา : cybersecuritynews

You must be logged in to post a comment.