บนพอร์ต USB ที่กำหนดฉันต้องการยอมรับความสามารถของ USB Mass Storage เท่านั้นและไม่มีอะไรอื่นอีก ไม่มีอุปกรณ์ HID ไม่มีอะแดปเตอร์บลูทู ธ ไม่มีตัวแปลง RS232 ไม่มีอะไรเลย มีวิธีทำเช่นใช้ udev หรือไม่ ฉันรู้ว่าฉันสามารถเขียนกฎ udev ที่กำหนดเองสำหรับการรวมไดรเวอร์สำหรับอุปกรณ์ที่กำหนดหรือพอร์ตที่กำหนด แต่ฉันสามารถแยกไดรเวอร์อื่น ๆ ทั้งหมดได้หรือไม่? ฉันพยายามอนุญาตอุปกรณ์เพียงหนึ่งคลาสนั่นคือ USB Mass Storage; มีอุปกรณ์รุ่นต่าง ๆ มากมายในคลาสนี้และฉันไม่รู้ว่ากำลังจะเชื่อมต่อกับพอร์ตใด (ลูกค้าจะนำของพวกเขามาเองไม่มีทางที่ฉันจะส่งผลกระทบนี้)
ภัยคุกคามจากเฟิร์มแวร์ USB ที่ถูกโปรแกรมใหม่จะแย่ลงในอนาคตอันใกล้ ฉันพยายามที่จะลดขนาดพวกเขาสำหรับกรณีการใช้งานนี้: ฉันมีคอมพิวเตอร์ที่มีอุปกรณ์ต่อพ่วง USB ที่เชื่อมต่อภายใน (การ์ดเครือข่ายอุปกรณ์ต่อพ่วงพิเศษแป้นพิมพ์) และพอร์ต USB สาธารณะหนึ่งพอร์ตซึ่งควรจะใช้สำหรับการถ่ายโอนไฟล์เท่านั้น ดังนั้นฉันไม่สามารถขึ้นบัญชีดำกับโมดูล USB อื่นทั้งหมดได้ แต่ฉันต้องการที่จะ "ฆ่าเชื้อ" พอร์ตนั้นเพื่อให้การเสียบอุปกรณ์ประเภทอื่นจะไม่ทำอะไรเลย
เคสถูกล็อกทางกายภาพดังนั้นจึงสามารถเข้าถึงได้เฉพาะพอร์ต USB หนึ่งพอร์ตนี้เท่านั้นจากภายนอกและการเข้าไปยุ่งกับเคสหรือการต่อสายเคเบิลของแป้นพิมพ์นั้นน่าสงสัยพอที่จะกระตุ้นการตอบสนองความปลอดภัยทางกายภาพ ยิ่งไปกว่านั้นฉันไม่ได้คาดหวังว่าผู้ใช้ส่วนใหญ่จะเป็นอันตรายอย่างแข็งขัน แต่ฉันคาดว่าจำนวนผู้ให้บริการที่ไม่ต้องการแฟลชไดรฟ์ USB ที่แฟลชใหม่จะเพิ่มขึ้น (เช่นเดียวกับการติดเชื้อเซกเตอร์บูตฟลอปปี้) เท่าที่การรักษาความปลอดภัยไปมันไม่สำคัญว่าผู้ใช้จะนำดิสก์ USB "อาวุธ" ที่มีเจตนาร้ายหรือเพียงแค่ไม่รู้ว่ามัน "ติดไวรัส"
ฉันทราบว่าการรักษาความปลอดภัยที่สมบูรณ์แบบนั้นเป็นไปไม่ได้ที่นี่และการอนุญาตให้ผู้ใช้โต้ตอบกับระบบในลักษณะใดก็ตามที่มีความเสี่ยง - แต่ฉันต้องรักษาความปลอดภัยให้สมดุลกับการใช้งาน: คอมพิวเตอร์จำเป็นต้องสามารถใช้งานได้กับลูกค้า นอกจากนี้ฉันไม่ได้พยายามที่จะป้องกันผู้โจมตีเป้าหมายที่กำหนดไว้นี้ ค่อนข้างฉันใช้สิ่งนี้เป็นหนึ่งในเทคนิคการบรรเทาผลกระทบเพื่อให้ระบบไม่ใช่ผลไม้แขวนลอยต่ำ