Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад
Вопрос про JavaScript: sri, security, basic

Как использовать Subresource Integrity (SRI) для защиты загружаемых ресурсов?

Этот вопрос помогает понять, как использовать механизм Subresource Integrity (SRI) для повышения безопасности веб-приложений, предотвращая подмену загружаемых ресурсов. Знание SRI важно для обеспечения целостности внешних скриптов и стилей.

Короткий ответ

Subresource Integrity (SRI) — это механизм безопасности, который позволяет браузерам проверять, что загружаемые внешние ресурсы (например, скрипты и стили) не были изменены. Для использования SRI необходимо добавить атрибут integrity к тегам <script> или <link>, указав хеш-сумму загружаемого файла. Если файл изменен, браузер не загрузит его, что предотвращает выполнение потенциально вредоносного кода.

Длинный ответ

Subresource Integrity (SRI) — это важный механизм, который помогает защитить веб-приложения от атак, связанных с подменой загружаемых ресурсов, таких как JavaScript-файлы или CSS-стили. Когда веб-страница загружает ресурсы с внешних источников, существует риск того, что эти ресурсы могут быть изменены злоумышленниками. SRI помогает гарантировать, что загружаемый файл соответствует определенной целостности.

Как это работает? SRI использует хеш-суммы для проверки целостности загружаемых ресурсов. Хеш-сумма — это строка, полученная в результате применения криптографической функции к содержимому файла. Браузер загружает файл и вычисляет его хеш-сумму, затем сравнивает ее с указанной в атрибуте integrity.

Пример использования SRI: Рассмотрим пример, в котором загружается jQuery с CDN:

<script src="https://code.jquery.com/jquery-3.6.0.min.js"        
	integrity="sha384-KyZXEAg3QhqLMpG8r+Knujsl5+5hb7J4aU+eW1B5E1jInC1L3ub2hwXcJ5BR1S5"        
	crossorigin="anonymous">
</script>

В этом примере атрибут integrity содержит хеш-сумму для конкретной версии jQuery. Если файл изменится, браузер не загрузит его и выдаст ошибку, защищая пользователя от потенциально вредоносного кода.

Преимущества использования SRI:

  • Защита от подмены ресурсов.

  • Повышение доверия к загружаемым ресурсам.

  • Улучшение общей безопасности веб-приложений.

Рекомендации:

  • Всегда используйте SRI для внешних ресурсов.

  • Генерируйте хеши с использованием надежных алгоритмов, таких как SHA-256.

  • Обновляйте хеши при изменении загружаемых ресурсов.

Использование Subresource Integrity (SRI) является простым, но эффективным способом повышения безопасности вашего веб-приложения и защиты данных пользователей.

Уровень

  • Рейтинг:

    2

  • Сложность:

    7

Навыки

  • JavaScript

    JavaScript

Ключевые слова

#sri

#security

#basic

Подпишись на React Developer в телеграм