HTML kód átalakítása (htmlspecialchars), php

A Crossite scripting (XSS) az egyik leggyakoribb webes alkalmazás sebezhetősége. Azonban elég könnyű védeni ezt a támadást - csak változtatni a szimbólumokat <.> és . amelyek közvetlenül érintik a HTML oldalt. Ha át szeretné adni a címke attribútumokat, ki kell mennie az idézetekből: "és".

A PHP-ben ezt a htmlspecialchars függvénnyel lehet elvégezni. amely a fenti szimbólumokat kódolja (használja az ENT_QUOTES attribútumot az idézőjelek konvertálásához):

A htmlspecialchars () függvény átalakul <в < и> a gt;. a kettős idézet lesz "és egyszemélyes # '. Ez kiküszöböli annak lehetőségét, hogy szkripteket vagy hivatkozásokat mutasson be az oldalra, valamint módosítsa a HTML kód szerkezetét.

Meg kell jegyeznünk, hogy az oldalt a Content-Type-ban kell kódolni, különben más olyan szimbólumkészlet használható, amelyek különböző értékekkel rendelkeznek (például UTF-7).

Az htmlentities függvény megegyezik a htmlspecialchars függvénnyel. de helyettesíti az összes lehetséges HTML-entitást. Használható régi kódolással, de Unicode-nel általában nem használják.

A dokumentumok idegen nyelvről orosz nyelvre történő fordítása többnyire magánszemélyek számára szükséges. Ez lehet üzleti dokumentumok, levelek és mások. Az Azerbajdzsáni nyelv fordítását az orosz nyelvre fordíthatja a "Master of Translation" cégnél. Az előnyös árak és az átruházás rövid feltételei minden bizonnyal örömmel fogadják Önt, és újra eljössz!

Automatikus szűrés

Ha az XSS elleni védelem olyan egyszerű, akkor miért olyan gyakori a webhelyen keresztüli szkriptelés, mint a biztonsági rés? Ennek oka az, hogy a programozók néha elfelejtik használni a karaktersorozat funkcióját. És ez sok híres helyszínen történik.

Természetesen jobb lenne automatizálni a HTML-kód szűrési folyamatát. A legmodernebb CMS kínálja a nyomtatott adatok automatikus átalakítását. Például a Smarty változó $ default_modifiers változó. amelybe szűrőket adhat a kódvédelemmel. A Net PHP nem képviseli ezt a lehetőséget.

Nette Latte Framework

A Nette Latte egy sablon a kontextuális tartalom automatikus felismeréséhez:

Ez a keret lehetővé teszi számos probléma elkerülésére nagy és összetett kód feldolgozásával:

Az XSS támadások elkerülése meglehetősen egyszerű, csak ne felejtsd el a htmlspecialchars () használatát. De ha ez nehéz az Ön számára, használhat automatikus adatszűrő rendszereket, például Nette Latte-t. Ezek a módszerek valószínűleg kizárják az XSS lehetőségét.