Project Zero เผยแพร่ช่องโหว่ของ Edge ระดับความร้ายแรงปานกลาง ที่สามารถข้ามกระบวนการป้องกัน Arbitrary Code Guard (ACG) ของไมโครซอฟท์ได้สำเร็จ
ACG ปิดทางไม่ได้แฮกเกอร์สามารถวางโค้ดลงในโปรเซสด้วยตัวเองได้ และไมโครซอฟท์ก็แยก JIT กับ Content Process ออกจากกัน ทำให้โดยปกติแล้วแฮกเกอร์สามารถวางโค้ดใดๆ เพื่อรันด้วยตัวเองได้ยากมาก
การเจาะของ Project Zero อาศัยการคาดเดาว่าโปรเซส JIT จะจองหน่วยความจำด้วยฟังก์ชั่น VirtualAllocEx ที่ตำแหน่งใด (Project Zero ระบุว่าคาดเดาง่ายพอสมควร) จากนั้นเมื่อเจาะ Content Process ได้แล้วให้ไปเขียนหน่วยความจำบริเวณนั้นไว้ล่วงหน้า เมื่อ JIT มาจองหน่วยความจำก็จะปรับให้หน่วยความจำส่วนนั้นกลายเป็น executable ไป กลายเป็นการข้าม ACG
Project Zero แจ้งช่องโหว่นี้ไปยังทีม Edge ตั้งแต่กลางเดือนพฤศจิกายน แต่ทีมพัฒนาระบุว่าไม่สามารถแก้ไขได้ทันรอบเดือนกุมภาพันธ์ และไม่สามารถสัญญาได้ว่าจะทันรอบมีนาคมหรือไม่ ทำให้ช่องโหว่พ้น 90 วันและเปิดเผยต่อสาธารณะก่อนมีแพตช์
ช่องโหว่นี้เป็นการข้ามมาตรการป้องกันเพิ่มเติม และ Project Zero ก็สาธิตโดยใช้ debugger การมีช่องโหว่นี้แม้จะทำให้ Edge ปลอดภัยน้อยลงกว่าที่ออกแบบไว้แต่ก็ไม่ได้หมายความว่าแฮกเกอร์จะสามารถส่งโค้ดมารันได้ง่ายๆ แต่อย่างใด
ACG เคยเป็นแนวทางการป้องกันหนึ่งที่ทีม OSR ของไมโครซอฟท์ระบุว่าช่วยป้องกัน Edge ไม่ให้มีช่องโหว่เหมือน Chrome เมื่อครั้งที่ทีม OSR รายงานช่องโหว่ของ Chrome
ที่มา - Project Zero
on
ย่อหน้าสุดท้ายนี่เจ็บเลยมั้ย
hisoft Tue, 20/02/2018 - 06:04
ย่อหน้าสุดท้ายนี่เจ็บเลยมั้ย
ใครเจบ? .. อ่านๆ
tontpong Tue, 20/02/2018 - 14:28
In reply to ย่อหน้าสุดท้ายนี่เจ็บเลยมั้ย by hisoft
ใครเจบ? .. อ่านๆ แล้วได้อารมณ์ว่าอากุ๋ขอข่มคืนบ้าง, ด้วยการใช้ไม้ตาย 90 วันแบบเข้มข้น ?
ปล. วางโค้ดได้.. แต่เหมือนจะยัง run ไม่ได้รึป่าว, เลยโชว์ด้วย debugger
ไมโครซอฟท์นั่นแหละครับ
hisoft Wed, 21/02/2018 - 09:28
In reply to ใครเจบ? .. อ่านๆ by tontpong
ไมโครซอฟท์นั่นแหละครับ
แสดงว่ายังนับว่าเจาะยากอยู่สิ
Neroroms Tue, 20/02/2018 - 06:42
แสดงว่ายังนับว่าเจาะยากอยู่สินะครับ เพราะว่าต้องคาดเดาจุดที่ต้องจองหน่วยความจำด้วย
อยู่ที่ว่าคำว่า คาดเดาไม่ยากของ Project Zero คือระดับไหน
เค้าเขียนอะไรลงไปในหน่วยความจ
langisser Tue, 20/02/2018 - 09:35
เค้าเขียนอะไรลงไปในหน่วยความจำ เห็นข่าว hack แนวๆนี้หบายข่าวละ แต่นึกไม่ออก
มันเป็นที่เดียวกับ code
lunatic Tue, 20/02/2018 - 10:11
In reply to เค้าเขียนอะไรลงไปในหน่วยความจ by langisser
มันเป็นที่เดียวกับ code ที่โปรแกรม(edge) ใช้ทำงานโดยปกติก็ยิง code ที่ต้องการแฝงลงไปครับ
ถ้าอธิบายง่ายๆให้เห็นภาพก็เช่นสั่งให้เครื่องปิด ถ้ายาวๆก็สร้าง process ใหม่ไว้ทำ backdoor, ขุดเหรียญ, ยิง ddos
จะอันตรายถ้าส่งโค้ดเข้ามารันไ
TheOne Tue, 20/02/2018 - 14:03
จะอันตรายถ้าส่งโค้ดเข้ามารันได้ แต่ก็ไม่ง่ายที่จะเข้ามา งั้นยังไม่แก้ละกัน
ไมโครซอฟท์ ไม่ได้กล่าวไว้