Filtravimas HTML, „JavaScript“ (JS) ir CSS kontekste reiškia kodo valymo arba dezinfekavimo procesą, siekiant pašalinti nepageidaujamus, nesaugius ar nereikalingus elementus. Tai gali apimti šių elementų pašalinimą:
Kenkėjiškų scenarijų (pvz., XSS naudingųjų apkrovų),
Nenaudojamų stilių arba kodo,
Neteisingų arba nebenaudojamų žymų arba atributų,
Kodo, kuris pažeidžia saugumo arba našumo geriausios praktikos reikalavimus.
Jis dažnai naudojamas programoms apsaugoti arba kodo bazėms optimizuoti.
Saugumas: Apsaugo nuo kenkėjiško kodo injekcijos (pvz., XSS atakų HTML/JS).
Optimizavimas: Pašalina nenaudojamas arba nereikalingas kodas, siekiant sumažinti failo dydį ir pagreitinti įkėlimo laiką.
Atitiktis: Užtikrina, kad apdorojamas arba saugomas tik galiojantis ir saugus kodas.
Švarus įvesties tvarkymas: Naudinga, kai vartotojai pateikia HTML/JS turinį (pvz., TVS arba WYSIWYG redaktoriuose).
Internetiniai įrankiai: Įklijuokite kodą į filtravimo įrankį, kad jį išvalytumėte arba dezinfekuotumėte.
Dezinfekavimo bibliotekos: Naudokite tokias bibliotekas kaip DOMPurify (HTML/JS), PurifyCSS arba UnCSS (CSS) arba turinio saugos filtrus savo vidinėje sistemoje (pvz., OWASP) taisyklės).
Kodo filtrai / analizatoriai: įrankiai, tokie kaip ESLint (JS), Stylelint (CSS) arba HTMLHint, padeda aptikti ir pašalinti probleminius kodo šablonus.
Karkasai ir TVS papildiniai: daugelis turinio platformų siūlo integruotus arba papildinių pagrindu veikiančius filtravimo įrankius vartotojų sukurtam turiniui.
Kai priimamas vartotojų sukurtas turinys, kuriame gali būti HTML arba scenarijus.
Valant kodą, ypač senesniuose projektuose arba nukopijavus / įklijavus iš išorinių šaltinių.
Prieš diegiant svetainę ar programą, siekiant užtikrinti švarų, saugų ir efektyvų kodą.
Kai nuskaitoma, analizuojama arba importuojama trečiųjų šalių turinys, kuriame gali būti nepageidaujamų ar nesaugių elementų.