Subresource Integrity або SRI — рекомендація (стандарт) організації W3C покликана створити засіб для захисту вебсайтів від атаки на використані ними сторонні ресурси. Зокрема, цей механізм перевіряє ресурси (такі як скрипти JavaScript, таблиці стилів, зображення, тощо), отримані від третіх сторін (наприклад, мережі поширення контенту) та захищає від підміни їх зловмисниками.
При посиланні на зовнішні данні автор сторінки додає атрибутом відповідного HTML-елемента значення криптографічної геш-функції даного ресурсу. При завантаженні вказаних даних з іншого вебсервера браузер обчислює значення геш-функції та порівнює його зі значенням, вказаним автором сторінки. Якщо значення не збігаються, то даний ресурс відкидається.
Станом на квітень 2016 року технологію SRI підтримують веббраузери Firefox, Chrome, та Opera.
Станом на травень 2017 технологію SRI став підтримувати веббраузер Safari Technology Preview.
Опис
Вебсторінки та вебзастосунки часто включають в себе ресурси, розміщені на різних вебсайтах. Наприклад, скрипти, таблиці стилів, зображення, можуть бути розміщені в мережі поширення контенту (англ. content delivery network, CDN). Тому автори вебсторінок повинні довіряти стороннім постачальникам ресурсів. Але автор вебсторінки виявляється беззахисним, якщо зловмисник зможе примусити жертву завантажити дані з ураженого сервера (наприклад, використавши атаку на систему DNS). Так само, зловмисник може здобути несанкційований доступ до серверів мережі поширення контенту та підмінити справжні файли своїми.[]
Передача даних через захищені канали допомагає усунути деякі ризики: при використанні TLS, HSTS, (HPKP), веббраузер може бути впевнений, що він отримує дані з саме того сервера, до якого він звернувся. Проте, ці механізми автентифікують лише сервер, але не отримані дані. Зловмисник (або адміністратор вебсайту) з доступом до сервера може довільно змінювати дані. Механізм SRI дозволяє авторам вебсторінок гарантувати, що користувачі завантажуватимуть зі сторонніх вебсайтів тільки ті ресурси, які визначив автор.
Приклад використання елементу link
з атрибутом integrity
SRI:
<link rel="stylesheet" href="https://cdn.example.com/style.css[недоступне посилання з лютого 2019]" integrity="sha384-+/M6kredJcxdsqkczBUjMLvqyHb1K/JThDXWsBVxMEeZHEaMKEOEct339VItX1zB">
Стандарт вимагає від веббраузерів підтримувати алгоритми SHA-256, SHA-384 та SHA-512 сімейства SHA-2.
Примітки
- . Mozilla Developer Network. Архів оригіналу за 26 червня 2019. Процитовано 14 April 2016.
- . Can I use... Support tables for HTML5, CSS3, etc. Архів оригіналу за 8 квітня 2017. Процитовано 14 April 2016.
- Inc., Apple. . developer.apple.com (англ.). Архів оригіналу за 6 грудня 2017. Процитовано 17 травня 2017.
Посилання
- Специфікація W3C [ 19 листопада 2017 у Wayback Machine.]
- Subresource Integrity на сайті Mozilla Developer Network (MDN) [ 26 червня 2019 у Wayback Machine.]
- SRI на сайті Mozilla Wiki [ 6 грудня 2017 у Wayback Machine.]
Це незавершена стаття про вебсайт. Ви можете проєкту, виправивши або дописавши її. |
Вікіпедія, Українська, Україна, книга, книги, бібліотека, стаття, читати, завантажити, безкоштовно, безкоштовно завантажити, mp3, відео, mp4, 3gp, jpg, jpeg, gif, png, малюнок, музика, пісня, фільм, книга, гра, ігри, мобільний, телефон, android, ios, apple, мобільний телефон, samsung, iphone, xiomi, xiaomi, redmi, honor, oppo, nokia, sonya, mi, ПК, web, Інтернет
U Vikipediyi ye statti pro inshi znachennya cogo termina SRI znachennya Subresource Integrity abo SRI rekomendaciya standart organizaciyi W3C poklikana stvoriti zasib dlya zahistu vebsajtiv vid ataki na vikoristani nimi storonni resursi Zokrema cej mehanizm pereviryaye resursi taki yak skripti JavaScript tablici stiliv zobrazhennya tosho otrimani vid tretih storin napriklad merezhi poshirennya kontentu ta zahishaye vid pidmini yih zlovmisnikami Pri posilanni na zovnishni danni avtor storinki dodaye atributom vidpovidnogo HTML elementa znachennya kriptografichnoyi gesh funkciyi danogo resursu Pri zavantazhenni vkazanih danih z inshogo vebservera brauzer obchislyuye znachennya gesh funkciyi ta porivnyuye jogo zi znachennyam vkazanim avtorom storinki Yaksho znachennya ne zbigayutsya to danij resurs vidkidayetsya Stanom na kviten 2016 roku tehnologiyu SRI pidtrimuyut vebbrauzeri Firefox Chrome ta Opera Stanom na traven 2017 tehnologiyu SRI stav pidtrimuvati vebbrauzer Safari Technology Preview OpisVebstorinki ta vebzastosunki chasto vklyuchayut v sebe resursi rozmisheni na riznih vebsajtah Napriklad skripti tablici stiliv zobrazhennya mozhut buti rozmisheni v merezhi poshirennya kontentu angl content delivery network CDN Tomu avtori vebstorinok povinni doviryati storonnim postachalnikam resursiv Ale avtor vebstorinki viyavlyayetsya bezzahisnim yaksho zlovmisnik zmozhe primusiti zhertvu zavantazhiti dani z urazhenogo servera napriklad vikoristavshi ataku na sistemu DNS Tak samo zlovmisnik mozhe zdobuti nesankcijovanij dostup do serveriv merezhi poshirennya kontentu ta pidminiti spravzhni fajli svoyimi dzherelo Peredacha danih cherez zahisheni kanali dopomagaye usunuti deyaki riziki pri vikoristanni TLS HSTS HPKP vebbrauzer mozhe buti vpevnenij sho vin otrimuye dani z same togo servera do yakogo vin zvernuvsya Prote ci mehanizmi avtentifikuyut lishe server ale ne otrimani dani Zlovmisnik abo administrator vebsajtu z dostupom do servera mozhe dovilno zminyuvati dani Mehanizm SRI dozvolyaye avtoram vebstorinok garantuvati sho koristuvachi zavantazhuvatimut zi storonnih vebsajtiv tilki ti resursi yaki viznachiv avtor Priklad vikoristannya elementu link z atributom integrity SRI lt link rel stylesheet href https cdn example com style css nedostupne posilannya z lyutogo 2019 integrity sha384 M6kredJcxdsqkczBUjMLvqyHb1K JThDXWsBVxMEeZHEaMKEOEct339VItX1zB gt Standart vimagaye vid vebbrauzeriv pidtrimuvati algoritmi SHA 256 SHA 384 ta SHA 512 simejstva SHA 2 Primitki Mozilla Developer Network Arhiv originalu za 26 chervnya 2019 Procitovano 14 April 2016 Can I use Support tables for HTML5 CSS3 etc Arhiv originalu za 8 kvitnya 2017 Procitovano 14 April 2016 Inc Apple developer apple com angl Arhiv originalu za 6 grudnya 2017 Procitovano 17 travnya 2017 PosilannyaSpecifikaciya W3C 19 listopada 2017 u Wayback Machine Subresource Integrity na sajti Mozilla Developer Network MDN 26 chervnya 2019 u Wayback Machine SRI na sajti Mozilla Wiki 6 grudnya 2017 u Wayback Machine Ce nezavershena stattya pro vebsajt Vi mozhete dopomogti proyektu vipravivshi abo dopisavshi yiyi