- รัฐบาลของโจ ไบเดนต้องการให้นักพัฒนาซอฟต์แวร์ใช้ภาษาโปรแกรมที่ปลอดภัยต่อหน่วยความจำ และเลิกใช้ภาษาโปรแกรมที่เปราะบางอย่าง C/C++
- สำนักงานผู้อำนวยการไซเบอร์แห่งชาติของทำเนียบขาว (ONCD) ระบุในรายงานล่าสุดว่า ขอให้นักพัฒนาใช้ภาษาโปรแกรมที่ไม่มีช่องโหว่ด้าน memory safety เพื่อลดความเสี่ยงจากการโจมตีทางไซเบอร์
- จากงานวิจัยล่าสุดของ Microsoft และ Google พบว่าช่องโหว่ด้านความปลอดภัยทั้งหมดราว 70% เกิดจากปัญหา memory safety
- สำนักงานความมั่นคงปลอดภัยไซเบอร์และโครงสร้างพื้นฐานของสหรัฐฯ ก็ได้เรียกร้องให้นักพัฒนาใช้ภาษาแบบ memory-safe ในบล็อกโพสต์เมื่อเดือนกันยายนที่ผ่านมา
- CISA, FBI, NSA และหน่วยข่าวกรองพันธมิตร ได้เผยแพร่ "กรณีศึกษาของโรดแมป memory safety" เมื่อเดือนธันวาคมที่ผ่านมา
ภาษาโปรแกรมแบบ memory-safe ที่ NSA แนะนำ
- Rust
- Go
- C#
- Java
- Swift
- Ruby
11 ความคิดเห็น
https://media.defense.gov/2022/Nov/…
จงภักดีต่ออาณาจักรปู~~
มีมรดกเก่าที่สร้างด้วย C และ C++ กองพะเนิน แถมก็มีคำพูดว่าคนรวยถึงล้มก็ยังกินได้อีกสามชั่วคน เพราะงั้นคงไม่ใช่ว่าพรุ่งนี้จะเปลี่ยนอะไรได้ทันที แต่จากนี้ไปคงมีอะไรเปลี่ยนแน่ๆ
ดูแล้วไม่ C กับ C++ ก็อาจพัฒนาต่อไป หรือไม่ก็การผลัดเปลี่ยนรุ่นของภาษาคงจะเร็วขึ้น ก็เลยสงสัยเหมือนกันว่าจะออกมาเป็นยังไง
ก่อนหน้านั้นผมคงต้องเกษียณก่อนแล้วล่ะ จะให้ตามดูพายุแบบนั้นไปพร้อมๆ กับไล่ตามให้ทัน ตอนนี้เรี่ยวแรงไม่พอแล้ว... สู้ๆ กันนะทุกคน
ถ้าจะให้เขียนระบบเลกาซีของบริษัทเราขึ้นมาใหม่ด้วย Rust ทั้งหมด ผมคงลาออกไปเลยดีกว่า...
นอกจากนี้ เอกสารข้อมูลด้านความมั่นคงปลอดภัยไซเบอร์ของ NSA เมื่อเดือนพฤศจิกายน 2022 ยังระบุว่า C#, Go, Java, Ruby และ Swift รวมถึง Rust เป็นภาษาโปรแกรมที่หน่วยงานมองว่าปลอดภัยด้านหน่วยความจำ
ตามข้อมูลของ Statista ณ ปี 2023 โปรแกรมเมอร์ซอฟต์แวร์ทั้งหมดราว 22 เปอร์เซ็นต์ใช้ C++ และ 19 เปอร์เซ็นต์ใช้ C ทำให้ทั้งสองภาษามีความนิยมน้อยกว่า JavaScript, Python, Java และภาษาอื่นอีกเล็กน้อย แต่ดัชนี TIOBE Programming Community จัดให้มีเพียง Python ที่ได้รับความนิยมมากกว่า ตามมาด้วย C, C++ และ Java
ดูเหมือนว่า JavaScript จะไม่ใช่ภาษาที่ memory-safe นะ!
โอ๊ะ... GeekNews แก้ไขไม่ได้ ถ้า xguru เห็น รบกวนช่วยแก้ให้ทีนะครับ ฮือฮือ
ครับ ลบให้แล้ว!
แต่ฝั่ง C++ ที่มีจำนวนผู้ใช้อย่างท่วมท้น สุดท้ายก็น่าจะหาทางแก้ได้เอง (มีการวิจัย cppfront) และพอเห็นว่าที่ cppcon ก็มีการบรรยายจำนวนมากที่เน้นเรื่องความปลอดภัย ก็ดูเหมือนว่าจะคลี่คลายปัญหาไปในทางที่ตัวภาษาเปลี่ยนแปลง มากกว่าจะย้ายไปใช้ภาษาอื่น
ยังมีความพยายามที่จะแก้ปัญหาตั้งแต่ระดับฮาร์ดแวร์เลยด้วย เช่น Memory Tagging Extension ของ Arm เพราะคงไม่สามารถพอร์ตโค้ดเบสขนาดมหาศาลที่มีอยู่เดิมได้แบบปิ๊ง(?)เดียวอยู่แล้ว...
"ก็อย่างนั้นแหละลูกเอ๋ย ไม่มีราชาที่ครองราชย์ตลอดกาลหรอก"
Azure CTO: "ถึงเวลาเลิกเริ่มโปรเจกต์ใหม่ด้วย C/C++ ได้แล้ว"
NSA ออกแนวทางแนะนำให้ใช้ภาษาอย่าง C#, Go, Rust แทน C/C++ เนื่องจากปัญหาด้าน memory safety