การกรอง ในบริบทของ HTML, JavaScript (JS) และ CSS หมายถึง กระบวนการทำความสะอาดหรือฆ่าเชื้อโค้ด เพื่อลบองค์ประกอบที่ไม่ต้องการ ไม่ปลอดภัย หรือซ้ำซ้อน ซึ่งอาจรวมถึงการลบ:
สคริปต์ที่เป็นอันตราย (เช่น เพย์โหลด XSS)
รูปแบบหรือโค้ดที่ไม่ได้ใช้
แท็กหรือแอตทริบิวต์ที่ไม่ถูกต้องหรือไม่รองรับ
โค้ดที่ละเมิดแนวทางปฏิบัติที่ดีที่สุดด้านความปลอดภัยหรือประสิทธิภาพการทำงาน
มักใช้เพื่อปกป้องแอปพลิเคชัน หรือปรับแต่งฐานโค้ด
ความปลอดภัย: ป้องกันการแทรกโค้ดที่เป็นอันตราย (เช่น การโจมตี XSS ใน HTML/JS)
การเพิ่มประสิทธิภาพ: ลบโค้ดที่ไม่ได้ใช้หรือซ้ำซ้อนเพื่อลดขนาดไฟล์และเพิ่มความเร็วของเวลาในการโหลด
การปฏิบัติตาม: รับรองว่ามีการประมวลผลหรือจัดเก็บโค้ดที่ถูกต้องและปลอดภัยเท่านั้น
การจัดการอินพุตที่สะอาด: มีประโยชน์เมื่อผู้ใช้ส่งเนื้อหา HTML/JS (เช่น ใน CMS หรือโปรแกรมแก้ไข WYSIWYG)
เครื่องมือออนไลน์: วางโค้ดลงในเครื่องมือกรองเพื่อทำความสะอาดหรือฆ่าเชื้อ
ไลบรารีการฆ่าเชื้อ: ใช้ไลบรารีเช่น DOMPurify (HTML/JS), PurifyCSS หรือ UnCSS (CSS) หรือตัวกรองความปลอดภัยของเนื้อหาในแบ็กเอนด์ของคุณ (เช่น กฎ OWASP)
เครื่องมือวิเคราะห์/ลินเตอร์โค้ด: เครื่องมือเช่น ESLint (JS), Stylelint (CSS) หรือ HTMLHint ช่วยตรวจจับและลบรูปแบบโค้ดที่มีปัญหา
กรอบงานและปลั๊กอิน CMS: แพลตฟอร์มเนื้อหาจำนวนมากมีเครื่องมือกรองในตัวหรือแบบปลั๊กอินสำหรับเนื้อหาที่สร้างโดยผู้ใช้
เมื่อยอมรับเนื้อหาที่สร้างโดยผู้ใช้ ที่อาจรวมถึง HTML หรือสคริปต์
ระหว่างการล้างโค้ด โดยเฉพาะในโปรเจ็กต์เก่าหรือหลังจากคัดลอก/วางจากภายนอก แหล่งที่มา
ก่อนปรับใช้ไซต์หรือแอปพลิเคชัน เพื่อให้แน่ใจว่าโค้ดสะอาด ปลอดภัย และมีประสิทธิภาพ
เมื่อทำการขูด แยกวิเคราะห์ หรืออิมพอร์ตเนื้อหาของบุคคลที่สามซึ่งอาจมีองค์ประกอบที่ไม่ต้องการหรือไม่ปลอดภัย