Google เผยว่าการเปลี่ยนโค้ดพัฒนาระบบปฏิบัติการมาเป็นภาษา Rust ทำให้ Android มีปัญหาช่องโหว่จากหน่วยความจำลดลงจากเดิมมาก
ปัญหาช่องโหว่จากหน่วยความจำนั้นไม่ใช่เรื่องแปลกใหม่ เพราะระบบปฏิบัติการต่างๆ ก็ได้รับผลกระทบนี้ และในช่วงหลายปีที่ผ่านมา Chrome และ Android มีช่องโหว่ที่เกิดจากหน่วยความจำเป็นสัดส่วนมากถึง 65% ด้วยกัน โดยการพัฒนามีต้นทุนสูงขึ้นเรื่อยๆ ถ้าหากช่องโหว่ไม่ถูกพบอย่างรวดเร็วและแก้ไขให้ทันเวลา
ในช่วงสี่ปีที่ผ่านมา Google ได้นำภาษา Rust มาใช้กับกระบวนการพัฒนาระบบปฏิบัติการ หลังจากนั้นตัวเลขปัญหาช่องโหว่จากหน่วยความจำก็ลดลง ในช่วงระยะเวลาสามปี ตั้งแต่ 2019 – 2022 จำนวนช่องโหว่ที่เกิดจากหน่วยความจำลดลง จากโดยเฉลี่ยปีละ 223 ช่องโหว่ ลดลงมาเหลือ 85 ช่องโหว่เท่านั้น ในภาพรวมช่องโหว่ด้านความปลอดภัยทั้งหมด จากเดิมที่เป็นสัดส่วนมากถึง 76% ก็เหลือเพียง 35% ของช่องโหว่ที่เกิดขึ้น
ทาง Google อธิบายว่าช่องโหว่ที่ลดลงอย่างเห็นได้ชัดเป็นผลของความพยายามที่เปลี่ยนมาใช้ภาษาที่ไม่มีปัญหาด้านหน่วยความจำ (แม้จะไม่พูดชื่อ แต่ก็รู้กันว่าหมายถึง C/C++) โดยปีที่แล้ว Android 12 เริ่มย้ายแพลตฟอร์มมาเป็น Rust และในปีนี้ Android 13 โค้ดใหม่แทบทั้งหมดที่เพิ่มเข้ามาเขียนด้วยภาษาที่มีระบบความปลอดภัยในหน่วยความจำที่ดี ได้แก่ Rust, Java หรือ Kotlin เท่านั้น
แน่นอนว่าช่องโหว่จากปัญหาอื่นๆ ยังคงมีอยู่ และมีการตรวจพบราวๆ เดือนละ 20 ช่องโหว่ แต่พอไม่มีช่องโหว่จากหน่วยความจำแล้วช่องโหว่เหล่านี้มักจะทำอะไรไม่ได้มากนัก
นอกจาก Google แล้วบริษัทอื่นๆ อย่าง Meta ก็เริ่มหันมาใช้ภาษา Rust กันมากขึ้น เนื่องจากตัวภาษามีช่องโหว่เรื่องหน่วยความจำน้อยกว่า C/C++ ส่วน Microsoft นั้นประกาศว่าโปรเจคต์ใหม่ไม่ควรจะใช้ C/C++ อีกต่อไป และถ้าหากเป็นโปรเจคต์ที่ไม่ต้องทำ Garbage Collection ก็ควรจะเลือกใช้ Rust ด้วย
ที่มา – The Register