นักวิจัยเผยวิธีการใหม่ ‘Trojan Source’ เสริมศักยภาพการทำ Supply Chain Attack
Ross Anderson และ Nicholas Boucher นักวิจัยจากมหาวิทยาลัย Cambridge ได้ตีพิมพ์งานวิจัยเผยถึงวิธีการใหม่ที่สามารถช่วยให้คนร้ายสร้างช่องโหว่ในโค้ดอย่างตรวจจับได้ยาก
ไอเดียของวิธีการโจมตีแบบใหม่นี้เป็นการช่วยให้คนร้ายหรือมัลแวร์สามารถแก้ไขโค้ด โดยการใช้ Unicode ซึ่งคอมไพเลอร์ส่วนใหญ่สามารถแปลความและทำงานได้อยู่แล้ว เพียงแต่มนุษย์จะเข้าใจหรือตรวจจับได้ยากเมื่อลอจิกเปลี่ยนไปหรือมีตัวอักษรคล้ายๆกัน แต่อันที่จริงแล้ว Unicode แตกต่างกัน ด้วยเหตุนี้เองจึงอาจเป็นอันตรายต่อซอฟต์แวร์โอเพ่นซอร์สทั้งหลาย หรืออาจนำไปใช้ในการโจมตี Supply Chain Attack ได้
2 วิธีการที่ผู้เชี่ยวชาญพูดถึงคือ
CVE-2021-42574 (Bidi Override) – เป็นการใช้ Unicode Control เพื่อเปลี่ยนแปลงทิศทางการทำงาน เช่น LRE (Left-to-Right) และ RLE (Right-to-left) ซึ่งมนุษย์จะมองไม่เห็นอักขระ LRI/RLI พวกนี้แต่คอมไพเลอร์ยังทำงานได้เพราะยังคงถูกหลักการภาษา ดูความแตกต่างได้ตามภาพประกอบ
สำหรับ 3 เทคนิคที่นักวิจัยค้นพบกับการปรับเปลี่ยนลำดับโค้ดมีดังนี้
- Early Return – ซ่อนการ ‘return’ ไว้ในคอมเม้นต์
- Comment Out – แอบเก็บโค้ดสำคัญไว้ในคอมเม้นต์
- Stretched Strings – กลับลำดับของโค้ด
โดยประเด็นคือวิธีการเหล่านี้สามารถได้ผลกับภาษาโปรแกรมเกือบทั้งหมด รวมถึง Code Editor หรือ Web-based Repository มากมายยังรองรับการใช้ Unicode เหล่านี้ด้วย นั่นหมายความว่าการทำงานในเครื่องมือเหล่านั้นจะสังเกตได้ยากมาก แต่วิธีการป้องกันก็เพียงปิดการรองรับอักขระพิเศษเหล่านี้ ปัจจุบันผู้เชี่ยวชาญได้สำรวจโปรเจ็คโอเพ่นซอร์สต่างๆ และแจ้งเตือนผู้ดูแลไปแล้วจำนวนมาก หากต้องการเจาะลึกรายละเอียดแบบเต็มๆสามารถเข้าไปศึกษากันได้ที่ https://github.com/nickboucher/trojan-source
ที่มา : https://www.bleepingcomputer.com/news/security/trojan-source-attack-method-can-hide-bugs-into-open-source-code/ และ https://www.hackread.com/trojan-source-attack-hackers-exploit-source-code/
Comments
Post a Comment