By Lerpong Intaraworrapath | October 4th, 2021
Workaround for VMSA-2021-0020
จากการที่ VMware ได้ประกาศ เกี่ยวกับ Security Advisory Critical issues สำหรับ vCenter Server VMSA-0021-0020
สำหรับลูกค้าท่านใด ที่ยังไม่สามารถทำการ upgrade vCenter server ตาม version ที่ระบุใน VMSA-0021-0021 เราแนะนำให้ ทำตาม KB85717 ก่อนเพื่อป้องกัน Critical issues (CVE-2021-22005) เท่านั้น ซึ่ง ในส่วน CVE อื่นต้องทำการ upgrade ไม่มี workarounds
Note: KB85717 จะเป็นแค่ workarounds แนะนำให้ทำการ upgrade vCenter Sever จะเป็นการป้องกันที่ดีสุด
- For vCenter Server 7.0, version 7.0 Update 2d
- For vCenter Server 6.7, version 6.7 Update 3o
- For vCenter Server 6.5, version 6.5 Update 3q
(ขั้นตอนต่อไปนี้จะเป็นการทำ Workarounds บน vCenter Server version 7.0.1.00301)
ขั้นตอนการทำ Workarounds สำหรับ KB85717
- ทำการ SSH ไปที่ vCenter Server ที่เราต้องการ ด้วย account “root”
- ทดสอบ ทำการ Curl command ก่อนทำ workarounds
curl -X POST “http://localhost:15080/analytics/telemetry/ph/api/hyper/send?_c&_i=test” -d “Test_Workaround” -H “Content-Type: application/json” -v 2>&1 | grep HTTP
ก็จะได้ผลลัพธ์
< HTTP/1.1 201
3. ทำการ Backup ไฟล์ ph-web.xml จาก path vmware-analytics
cp /etc/vmware-analytics/ph-web.xml /etc/vmware-analytics/ph-web.xml.backup
4. ทำการแก้ไขไฟล์ ph-web.xml จาก text editor
vi /etc/vmware-analytics/ph-web.xml
5. โดยเราจะใส่ tags comments “<!–” และ “–>” ใน ไฟล์ ph-web.xml
- For 6.7 U1b (Build 11726888) and earlier, there is 1 endpoint, “phTelemetryServlet” that needs to be commented
- For 6.7U2 (Build 13010631) and later, and all versions of 7.0, there are 3 impacted endpoints, the “phTelemetryServlet“, “phPhApiServlet” and “phPhStgApiServlet” endpoints.
Note: ในบทความนี้ จะเป็น vvCenter Server version 7.0.1.00301 จะใส่ครอบคลุม ค่า 3 endpoints
6. รูปแบบ content ในไฟล์ ph-web.xml
7. ทำการกด “I” เผื่อเข้าสู่จะ Insert mode.
8. ทำการค้นหาคำว่า <list> ตามรูปในข้อ 6.
9. กด Enter
10. ทำการพิมพ์ “<!–” ใต้คำว่า <list>
11. ทำการค้นหาคำว่า </bean> ใต้บรรทัด “<property name=”servlet” ref=”phPhStgApiServlet”/>“
12. กด Enter แล้ว พิมพ์ “–>” จะได้ผลลัพธ์ ตามรูปด้านล่าง
13. กด ESC เพื่อออกจาก Insert mode
14. ทำการ Save และ Exit โดยพิมพ์ “:wq” แล้วกด Enter
15. ทำการ restart “vmware-analytics” service โดยพิมพ์
service-control –restart vmware-analytics
16. ทำการตรวจสอบ ว่า workarounds ที่เราทำการ apply ไปมีผลหรือไม่ ทำการตรวจสอบ โดยใช้คำสั่งด้านล่าง
curl -X POST “http://localhost:15080/analytics/telemetry/ph/api/hyper/send?_c&_i=test” -d “Test_Workaround” -H “Content-Type: application/json” -v 2>&1 | grep HTTP
โดยจะได้ผลลัพธ์
HTTP Status 404 – Not Found
***Note: กรณีที่มี vCenter Server หลายตัว เชื่อมต่อกันแบบ Enhanced Linked Mode จะต้องทำทุก vCenter Server ทั้งหมด
สรุป คำสั่งที่ต้องใช้สำหรับ Workaround KB85717
- cp /etc/vmware-analytics/ph-web.xml /etc/vmware-analytics/ph-web.xml.backup
- vi /etc/vmware-analytics/ph-web.xml
- service-control –restart vmware-analytics
- curl -X POST “http://localhost:15080/analytics/telemetry/ph/api/hyper/send?_c&_i=test” -d “Test_Workaround” -H “Content-Type: application/json” -v 2>&1 | grep HTTP
!!!บทความนี้จะเป็น Workarounds เท่านั้น แนะนำให้ทำ การ Upgrade vCenter Server จะเป็นทางแก้ที่ดีที่สุดนะครับ!!!