<%: %> по сравнению с Microsoft анти-библиотека XSS

С .net 4 существует новое <%: %> корпус сценария это похоже <на % = %>, но делает HTML, кодируют. Люди поощряют использование этого нового синтаксиса.

Мой вопрос, делает <%: %> защищает от XSS лучше или а также пользование библиотекой Microsoft Anti XSS?

Человек Защиты Microsoft однажды говорил мне никогда просто использованию, которое Кодирует HTML, поскольку это не защищает очень хорошо и что я должен всегда пользоваться библиотекой Anti XSS (или другой библиотекой). Это все еще верное с <%: %>? Или могу я уверенно использовать <%: %> знание это собирается защитить мое приложение от XSS как люди, говорят?

7
задан dtc 28 June 2010 в 21:41
поделиться

2 ответа

HttpUtility.HtmlEncode использует подход к кодированию с использованием черного списка (принцип исключений), который потенциально оставляет приоткрытую дверь для новых уязвимостей в будущем. Библиотека Anti-XSS (теперь известная как библиотека веб-защиты и также включает код для смягчения SQL-инъекций) использует подход с использованием белого списка (принцип включений), который немного закрывает дверь и должен обеспечивать лучшую безопасность.

<%: ...%> - это просто ярлык для <% = Server.HtmlEncode (string)%> и, следовательно, обеспечивает безопасность кодировщика, используемого в вашем приложении.

Вы можете использовать любой кодировщик с новым синтаксисом <%: ...%> , и у Фила Хаака есть отличная статья о подключении библиотеки Anti-Xss в качестве кодировщика по умолчанию. . Имейте в виду, что в настоящее время для работы библиотеки Anti-XSS 3.1 требуется средний уровень доверия - это будет исправлено в будущих выпусках.

9
ответ дан 7 December 2019 в 01:15
поделиться

Новый синтаксис должен быть используется для экранирования необработанного текстового содержимого в HTML. РЕДАКТИРОВАТЬ : и атрибуты.

Для атрибутов , Javascript и других контекстов вы все равно должны использовать библиотеку Anti-XSS,

1
ответ дан 7 December 2019 в 01:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: