Одно из первых правил безопасности - никогда не доверять пользовательским данным.Тем не менее, нередко веб-сайт должен позволять посетителю вводить URL-адрес, и этот URL-адрес необходимо использовать для ссылки тега привязки.У меня такая ситуация, и я не могу контролировать, что посетитель может представить для URL.
Мне нужно иметь возможность определить, является ли отправленный URL-адрес риском межсайтового скриптинга (XSS), и если нет,разрешить его использование в href.Или, в качестве альтернативы, если URL представляет собой риск XSS, тогда, если есть какой-то способ очистить URL или сделать его безопасным для использования в href тега привязки, это было бы предпочтительным.
Я сделалНемного исследований по этой теме, и я знаю Лучший способ обеспечить безопасность и избежать XSS с введенными пользователем URL и Стоит ли дезинфицировать разметку HTML для размещенной CMS? здесь, на SOно ни один из них не дает четкого современного руководства.Я видел там и в других местах ссылки на http://code.google.com/p/owasp-esapi-dotnet/, но неясно, актуальна ли эта библиотека, и еще более непонятно, как использовать ее для выполнения того, что я спрашиваю.
Например, на странице https://code.google.com/archive/p/owasp-esapi-dotnet/ указано, что документы API для библиотеки точек сети owasap esapi находятся здесь: https://alexsmolen.com/dotnetesapidoc/index.html, но страница возвращает ошибку об отсутствующем ключе.Не то, что вселяет уверенность или предоставляет информацию о доступных API.Хм.Эта страница https://www.owasp.org/index.php/Category:OWASP_.NET_Project представляется документами для OWASP, связанной с .net, но нигде на странице не упоминается библиотека esapi.
Как я могу оценить, является ли данный URL уязвимостью XSS, и если это уязвимость XSS, как я могу его очистить и безопасно использовать в href тега привязки html?