Спрете XSS атаки със SafeHTML - 💡 Fix My Ideas

Спрете XSS атаки със SafeHTML

Спрете XSS атаки със SafeHTML


Автор: Ethan Holmes, 2019

Ако позволите съдържание, предоставено от потребителите на вашия сайт, се сблъскате с проблема с работата с предоставения от потребителя HTML по безопасен начин. Най-сигурният начин за справяне с нещата, разбира се, е да премахнете или избягате от HTML всички полета за въвеждане от потребителя. За съжаление, има много ситуации, в които би било хубаво да се разреши голямо подмножество на входа на HTML, но да се блокира всичко потенциално опасно.

SafeHTML е лек PHP дезинфектант за потребителски вход, който прави точно това. Просто стартирайте всяко поле за въвеждане чрез филтъра SafeHTML и всякакви javascript, обектни етикети или маркери за прекъсване на оформлението ще бъдат премахнати от предоставения текст. Той също така прави разумна работа за коригиране на кой да е кодиран код, който също е често срещан проблем с данните, предоставени от потребителите.

Използването му е лесно. Просто инстанцирайте SafeHTML обекта и извикайте неговия метод за анализ:

require_once ( "класове / safehtml.php ');

$ safehtml = & нов SafeHTML ();

if (isset ($ _POST ["inputfield"])) {$ inputfield = $ _ POST ["входно поле"]; $ cleaninput = $ safehtml-> parse ($ inputfield); }

Това ще вземе поставения параметър "inputfield", изчисти всякакви лоши, XHTMLify какво е останало, и резултатът ще бъде съхранен в променливата $ cleaninput. Това е просто допълнение към кода ви и много по-просто, отколкото да се опитвате да преобърнете собствения си код.

Единственото ми говеждо с пакета е, че е написано с позволена политика по подразбиране, с изтриване на тагове, които са в неговия масив deleteTags, но по същество позволяват нещо друго чрез. Ако предпочитате само да пускате маркери, които специално искате да разрешите, препоръчвам да добавите arrayTags array и да коригирате метода _openHandler, като добавите следната проверка след проверка на deleteTags:

if (! in_array ($ name, $ this-> allowTags)) {return true; }

Вие ще трябва да попълните allowTags с всичко, което знаете, че са безопасни и добре дошли, и може да пропуснете няколко, които хората ще завършат с желание да използват законно, но това лесно се коригира и правилата за отказ по подразбиране са много по-безопасни в дългосрочен план ,

SafeHTML - анти-XSS HTML парсер, написан на PHP



Може Да Се Интересувате

Бонбони за ванилия от Деня на Свети Валентин

Бонбони за ванилия от Деня на Свети Валентин


Какво мислех? Част 2: Hangerhedra

Какво мислех? Част 2: Hangerhedra


Ръчно изработени карти за Свети Валентин

Ръчно изработени карти за Свети Валентин


Flashback: Заловени в закона

Flashback: Заловени в закона