จะหลีกเลี่ยงการโจมตีแบบ escape sequence ในเทอร์มินอลได้อย่างไร?
การอ่านรายละเอียดของ CVE-2009-4487 (ซึ่งเกี่ยวกับอันตรายของลำดับการหลบหนีในล็อกไฟล์)ฉันรู้สึกประหลาดใจเล็กน้อย ในการอ้างอิงCVE-2009-4487 : nginx 0.7.64 เขียนข้อมูลลงในไฟล์บันทึกโดยไม่ต้องฆ่าตัวละครที่ไม่สามารถพิมพ์ได้ซึ่งอาจทำให้ผู้โจมตีจากระยะไกลสามารถแก้ไขชื่อของหน้าต่างหรืออาจเรียกใช้คำสั่งตามอำเภอใจหรือเขียนทับไฟล์ผ่านคำขอ HTTP ที่มีลำดับการหลบหนี เห็นได้ชัดว่านี่ไม่ได้เกี่ยวกับรูความปลอดภัยใน nginx แต่ในเทอร์มินัลอีมูเลเตอร์ แน่นอนว่าบางทีcatการบันทึกไฟล์ไปยังเครื่องเทอร์มินัลนั้นเกิดขึ้นโดยบังเอิญเท่านั้น แต่grepการใช้ไฟล์บันทึกนั้นเป็นเรื่องปกติ lessบางที sanitizes escape sequences แต่ใครจะรู้ว่าคำสั่ง shell ใดไม่เปลี่ยนลำดับ escape ... ฉันมักจะเห็นด้วยกับการตอบสนองวานิช : ภูมิปัญญาของเทอร์มินัล - การตอบสนอง - การหลบหนีโดยทั่วไปถูกตั้งคำถามอย่างสม่ำเสมอ แต่ก็ยังไม่มีโปรแกรมการจำลองเทอร์มินัลใหญ่ ๆ ที่เห็นว่าเหมาะสมที่จะละทิ้งลำดับเหล่านี้ซึ่งอาจเป็นไปได้ [.. ] แทนที่จะโทษใด ๆ และทุกโปรแกรมที่เขียน logfiles มันจะมีประสิทธิผลมากขึ้นจากมุมมองด้านความปลอดภัยเพื่อให้โปรแกรมการจำลอง terminal หยุดหยุดทำสิ่งที่โง่และแก้ไขปัญหาความปลอดภัยนี้และอื่น ๆ อีกครั้ง และสำหรับทุกคน ดังนั้นคำถามของฉัน: ฉันจะรักษาความปลอดภัย xterm ของฉันได้อย่างไรซึ่งจะไม่สามารถดำเนินการคำสั่งหรือเขียนทับไฟล์ผ่านทางลำดับการหลีกเลี่ยงได้อีกต่อไป? …