ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

XSS Π°Ρ‚Π°ΠΊΠ°

XSS (мСТсайтовый скриптинг) – ΠΎΠ΄Π½Π° ΠΈΠ· разновидностСй Π°Ρ‚Π°ΠΊ Π½Π° Π²Π΅Π±-систСмы, которая ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°Π΅Ρ‚ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ΄Π° Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ страницу сайта ΠΈ взаимодСйствиС этого ΠΊΠΎΠ΄Π° с ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΌ сСрвСром Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠΈ страницы ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ.

Π’Π΅Ρ€ΠΌΠΈΠ½ с английского Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Cross-Site Scripting, Π½ΠΎ ΠΏΡ€ΠΈ этом ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ» Π°Π±Π±Ρ€Π΅Π²ΠΈΠ°Ρ‚ΡƒΡ€Ρƒ XSS, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π±Ρ‹Π»ΠΎ ΠΏΡƒΡ‚Π°Π½ΠΈΡ†Ρ‹ с CSS (каскадныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ стилСй).

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ мСТсайтовый скриптинг

Основная Ρ†Π΅Π»ΡŒ мСТсайтового скриптинга – ΠΊΡ€Π°ΠΆΠ° cookies ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ встроСнного Π½Π° сСрвСрС скрипта с дальнСйшСй Π²Ρ‹Π±ΠΎΡ€ΠΊΠΎΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ использованиСм ΠΈΡ… для ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π°Ρ‚Π°ΠΊ ΠΈ Π²Π·Π»ΠΎΠΌΠΎΠ². Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ осущСствляСт Π°Ρ‚Π°ΠΊΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π½Π΅ Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π° с использованиСм уязвимостСй Π²Π΅Π±-сайта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΡΠ΅Ρ‰Π°ΡŽΡ‚ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, ΠΈ внСдряСт ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ JavaScript. Π’ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ этот ΠΊΠΎΠ΄ отобраТаСтся ΠΊΠ°ΠΊ Сдиная Ρ‡Π°ΡΡ‚ΡŒ сайта. ΠŸΡ€ΠΈ этом посСщаСмый рСсурс ΠΏΠΎ Ρ„Π°ΠΊΡ‚Ρƒ являСтся соучастником XSS-Π°Ρ‚Π°ΠΊΠΈ.

Если ΡΡ€Π°Π²Π½ΠΈΠ²Π°Ρ‚ΡŒ с SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡΠΌΠΈ, Ρ‚ΠΎ XSS бСзопасСн для сСрвСра, Π½ΠΎ нСсСт ΡƒΠ³Ρ€ΠΎΠ·Ρƒ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π·Π°Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ рСсурса ΠΈΠ»ΠΈ страницы. Однако, Ссли ΠΊ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ ΠΏΠΎΠΏΠ°Π΄ΡƒΡ‚ cookies администратора, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ ΠΏΠ°Π½Π΅Π»ΠΈ управлСния сайтом ΠΈ Π΅Π³ΠΎ содСрТимому.

ΠœΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· XSS

Запуск врСдоносного ΠΊΠΎΠ΄Π° JavaScript Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, поэтому сайт, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΉΠ΄Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊ XSS. Для ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π°Ρ‚Π°ΠΊΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ провСряСт рСсурсы Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ уязвимостСй Ρ‡Π΅Ρ€Π΅Π· XSS, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ скрипты ΠΈΠ»ΠΈ Ρ€ΡƒΡ‡Π½ΠΎΠΉ Ρ€Π΅ΠΆΠΈΠΌ поиска. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это стандартныС Ρ„ΠΎΡ€ΠΌΡ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ΠΈ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ запросы (ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, поиск, обратная связь).

ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡΡ ΠΏΠΎΠ»Π½Ρ‹ΠΉ сбор страниц с Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ Π²Π²ΠΎΠ΄Π°, ΠΈ каТдая сканируСтся Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ уязвимостСй. НапримСр, Ρƒ нас Π΅ΡΡ‚ΡŒ страница «Поиск» Π½Π° сайтС. Для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ уязвимости XSS достаточно ввСсти запрос:

Если Π½Π° экранС появится ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅, Π·Π½Π°Ρ‡ΠΈΡ‚ Π²Ρ‹ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ»ΠΈ Π±Ρ€Π΅ΡˆΡŒ Π² бСзопасности. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС систСма ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ Π²Π°ΠΌ страницу с Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°ΠΌΠΈ поиска. ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ популярныС CMS ΡƒΠΆΠ΅ Π΄Π°Π²Π½ΠΎ лишились ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Π½ΠΎ ΠΈΠ·-Π·Π° возмоТности Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° Π·Π° счСт ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ ΠΈ ΠΏΠ»Π°Π³ΠΈΠ½ΠΎΠ², создаваСмых сторонними Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ, ΡˆΠ°Π½ΡΡ‹ Π½Π° использованиС уязвимостСй XSS Π²ΠΎΠ·Ρ€Π°ΡΡ‚Π°ΡŽΡ‚ Π² Ρ€Π°Π·Ρ‹, особСнно Π² Joomla, DLE, Bitrix, WordPress. Π§Π°Ρ‰Π΅ всСго XSS-уязвимости ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ΡΡ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Internet Explorer.

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΉ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ поиска – использованиС страниц, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‚ GET-запросы. Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ ссылка Π²ΠΈΠ΄Π°: http://site.ru/catalog?p=8

Π’ адрСсной строкС вмСсто ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° (8) добавляСм скрипт – «>, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ссылку Ρ‚Π°ΠΊΠΎΠ³ΠΎ Π²ΠΈΠ΄Π°: .

Если страница ΠΈΠΌΠ΅Π΅Ρ‚ уязвимости XSS, Π½Π° экранС появится ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΆΠ΅ ΠΏΠ»Π°Π½Π°, ΠΊΠ°ΠΊ ΠΈ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΌ случаС.

Для поиска Β«Π΄Ρ‹Ρ€Β» Π½Π° сайтС сущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ количСство Π³ΠΎΡ‚ΠΎΠ²Ρ‹Ρ… скриптов ΠΈ запросов, ΠΈ Ссли Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… Π½Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚, Π·Π½Π°Ρ‡ΠΈΡ‚ рСсурс Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½ ΠΎΡ‚ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ.

ΠžΠ±Ρ‰Π°Ρ классификация XSS

Π§Π΅Ρ‚ΠΊΠΎΠΉ классификации для мСТсайтового скриптинга Π½Π΅ сущСствуСт, Π½ΠΎ экспСртами ΠΏΠΎ всСму ΠΌΠΈΡ€Ρƒ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΎ Ρ‚Ρ€ΠΈ основных Ρ‚ΠΈΠΏΠ°.

Π₯Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ XSS (постоянныС). Один ΠΈΠ· самых опасных Ρ‚ΠΈΠΏΠΎΠ² уязвимостСй, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ позволяСт Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ сСрвСру ΠΈ ΡƒΠΆΠ΅ с Π½Π΅Π³ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ врСдоносным ΠΊΠΎΠ΄ΠΎΠΌ (ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ, ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ). ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ сайту выполняСтся Π·Π°Ρ€Π°Π½Π΅Π΅ Π·Π°Π³Ρ€ΡƒΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ Π² автоматичСском Ρ€Π΅ΠΆΠΈΠΌΠ΅. Π’ основном Ρ‚Π°ΠΊΠΈΠΌ уязвимостям ΠΏΠΎΠ΄Π²Π΅Ρ€ΠΆΠ΅Π½Ρ‹ Ρ„ΠΎΡ€ΡƒΠΌΡ‹, ΠΏΠΎΡ€Ρ‚Π°Π»Ρ‹, Π±Π»ΠΎΠ³ΠΈ, Π³Π΄Π΅ присутствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ коммСнтирования Π² HTML Π±Π΅Π· ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠΉ. ВрСдоносныС скрипты с Π»Π΅Π³ΠΊΠΎΡΡ‚ΡŒΡŽ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ встроСны ΠΊΠ°ΠΊ Π² тСкст, Ρ‚Π°ΠΊ ΠΈ Π² ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ, рисунки.

ΠžΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Π΅ XSS (нСпостоянныС). Π’ этом случаС врСдоносная строчка выступаСт Π² Ρ€ΠΎΠ»ΠΈ запроса ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ ΠΊ Π·Π°Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠΌΡƒ Π²Π΅Π±-сайту. Π Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ этот ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ ΠΏΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ схСмС:

DOM-ΠΌΠΎΠ΄Π΅Π»ΠΈ. Π’ этом Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ использованиС ΠΊΠ°ΠΊ Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… XSS, Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Ρ…. Π‘ΡƒΡ‚ΡŒ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ:

Π’ΠΈΠ΄Ρ‹ XSS ΠΏΠΎ способу взаимодСйствия

Π’Π°ΠΊ ΠΊΠ°ΠΊ основная Ρ†Π΅Π»ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° – Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ врСдоносный скрипт Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, сущСствуСт Π΅Ρ‰Π΅ ΠΈ Π΄Π²Π° основных Ρ‚ΠΈΠΏΠ° XSS-Π°Ρ‚Π°ΠΊ ΠΏΠΎ способу взаимодСйствия.

ΠŸΠ°ΡΡΠΈΠ²Π½Ρ‹Π΅. ΠžΡ‚ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ трСбуСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ дСйствиС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ событий ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ врСдоносный скрипт Π² установлСнной Ρ„ΠΎΡ€ΠΌΠ΅. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ инТСнСрия, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° элСктронного письма с ΠΏΡ€ΠΈΠ·Ρ‹Π²ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΏΠΎ ссылкС ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ Π½Π° сайтС. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°Π²Π΅Π΄Π΅Ρ‚ Π½Π° Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΈ ΠΊΠ»ΠΈΠΊΠ½Π΅Ρ‚ ΠΏΠΎ Π½Π΅ΠΌΡƒ, запустится врСдоносный скрипт. Если ΠΆΠ΅ ΠΆΠ΅Ρ€Ρ‚Π²Π° бСздСйствуСт, ΠΊΠΎΠ΄ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½.

АктивныС. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΌΠ°Π½ΠΈΠ²Π°Ρ‚ΡŒ ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ ΠΏΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ ссылкам, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ встраиваСтся Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΌ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ исполняСмом Ρ„Π°ΠΉΠ»Π΅ Π½Π° сСрвСрС. ΠžΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π΅ трСбуСтся Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ активности. Π£ Ρ„ΠΎΡ€ΠΌ Π²Π²ΠΎΠ΄Π°, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, установлСн ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ событий, автоматичСски Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°Π½ΠΈΠΈ Π½Π° эту страничку. Π’ ΠΈΡ‚ΠΎΠ³Π΅ всС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΏΠ΅Ρ€Π΅ΡˆΠ΅Π΄ΡˆΠΈΠ΅ ΠΏΠΎ этой ссылкС, станут ΠΆΠ΅Ρ€Ρ‚Π²Π°ΠΌΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°.

Как ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ сайт Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ уязвимостСй XSS ΠΈ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ

Для быстрой ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ сайта Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ уязвимостСй XSS ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ спСциализированными сСрвисами, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² автоматичСском Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΏΡ€ΠΎΠ²Π΅Π΄ΡƒΡ‚ сканированиС страницы. Π’ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ порядкС Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ всС URL, Π³Π΄Π΅ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π΄Π°Π½Π½Ρ‹Ρ… со стороны ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Ρ„ΠΎΡ€ΠΌΡ‹ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π², обратная связь, поиск). Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ http://xss-scanner.com, Π½ΠΎ Π½Π΅ стоит ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒΡΡ лишь ΠΎΠ΄Π½ΠΈΠΌ инструмСнтом.

НапримСр, для быстрой Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ ΠΈ автоматичСской Π·Π°ΠΌΠ΅Π½Ρ‹ спСцсимволов Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠ΄ Π½Π° сайтС:

НСсколько совСтов ΠΏΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΡŽ использования XSS Π½Π° вашСм сайтС:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

🕵 ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π°Ρ‚Π°ΠΊ XSS ΠΈ способов ΠΈΡ… ослаблСния

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

ΠœΠ΅ΠΆΡΠ°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ скриптинг ( XSS ) – это Π°Ρ‚Π°ΠΊΠ°, которая позволяСт JavaScript Ρ‡Π΅Ρ€Π΅Π· ΠΎΠ΄ΠΈΠ½ сайт Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ с Π΄Ρ€ΡƒΠ³ΠΈΠΌ. XSS интСрСсСн Π½Π΅ ΠΈΠ·-Π·Π° тСхничСской слоТности, Π° скорСС ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ эксплуатируСт Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· основных ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² бСзопасности Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΈ ΠΈΠ·-Π·Π° ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠΉ распространСнности.

Background

ПоявлСниС этих возмоТностСй ΠΏΡ€ΠΈΠ²Π΅Π»ΠΎ ΠΊ Ρ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ HTML, Π½ΠΎ ΠΈ Π²ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ Π² памяти Π² качСствС API для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² прСдставлСниС, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΠΎΠΉ модСлью Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° (DOM). DOM ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅Ρ‚ Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½ΡƒΡŽ структуру Ρ‚Π΅Π³ΠΎΠ² HTML, Π° Ρ‚Π°ΠΊΠΆΠ΅ доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ cookie для получСния состояния. Π‘ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ модСль ΠΏΡ€Π΅Π²Ρ€Π°Ρ‚ΠΈΠ»Π°ΡΡŒ ΠΈΠ· ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠΉ прСимущСствСнно для чтСния структуры Π² структуру read-write, ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌΡƒ Ρ€Π΅Π½Π΄Π΅Ρ€ΠΈΠ½Π³Ρƒ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°.

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° Same-Origin ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡΠΌΡΠ³Ρ‡Π°Ρ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ Π½Π° статичСскиС сайты, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° рисункС Π²Ρ‹ΡˆΠ΅. Однако с Π°Ρ‚Π°ΠΊΠ°ΠΌΠΈ Π½Π° динамичСскиС рСсурсы, ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄, ситуация Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ слоТнСС ΠΈΠ·-Π·Π° смСшивания ΠΊΠΎΠ΄Π° ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, которая позволяСт Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ Π²Π²ΠΎΠ΄ Π² исходном Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π΅.

Π Π΅Ρ„Π»Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ ΠΈ Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ XSS-Π°Ρ‚Π°ΠΊΠΈ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²Ρ‹, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π½Π° врСдоносный Π²Π²ΠΎΠ΄, отправляСмый Π½Π° Π±Π΅ΠΊΠ΅Π½Π΄ ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ этот Π²Π²ΠΎΠ΄ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ сСрвСр. Π Π΅Ρ„Π»Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ XSS ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π² Π²ΠΈΠ΄Π΅ Π·Π»ΠΎΠ½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎ созданной Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ ссылки, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΆΠ΅Ρ€Ρ‚Π²Π°. Π₯Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ XSS происходят, ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ врСдоносный Π²Π²ΠΎΠ΄. Атаки Π½Π° основС DOM ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ происходят ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ врСдоносный Π²Π²ΠΎΠ΄, ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΉ DOM.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹

Π Π΅Ρ„Π»Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ Π°Ρ‚Π°ΠΊΠΈ XSS

НиТС ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ простоС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° Go, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ свой Π²Π²ΠΎΠ΄ (Π΄Π°ΠΆΠ΅ Ссли это врСдоносный скрипт) ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ это ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, сохранив Π΅Π³ΠΎ Π² Ρ„Π°ΠΉΠ»Π΅ xss1.go ΠΈ запустив go run xss1.go.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 3: ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π΅Π±-прилоТСния с Ρ€Π΅Ρ„Π»Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ (ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠΉ) XSS-Π°Ρ‚Π°ΠΊΠΎΠΉ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ XSS-Π°Ρ‚Π°ΠΊΡƒ, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠΎ уязвимому URL-адрСсу Π½ΠΈΠΆΠ΅.

ВзглянитС Π½Π° источник: сСрвСр Π²Π΅Ρ€Π½ΡƒΠ» Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выглядит ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ 4. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠ°ΠΊ смСшСниС ΠΊΠΎΠ΄Π° ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ этой Π°Ρ‚Π°ΠΊΠ΅.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 4: ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Ρ‹Π²ΠΎΠ΄Π° уязвимого для XSS Π²Π΅Π±-прилоТСния.

Π₯Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ XSS-Π°Ρ‚Π°ΠΊΠΈ

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ простой Ρ‡Π°Ρ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ этот Π²ΠΈΠ΄ Π°Ρ‚Π°ΠΊ. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„Π°ΠΉΠ»Π΅ xss2.go ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ go run xss2.go.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 5: Π₯ранимая XSS-Π°Ρ‚Π°ΠΊΠ°.

Атака дСлится Π½Π° Π΄Π²Π΅ Ρ„Π°Π·Ρ‹:

XSS-Π°Ρ‚Π°ΠΊΠΈ Π½Π° основС DOM

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ статичСский ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ Π²Π΅Π±-прилоТСния. Код Ρ‚ΠΎΡ‚ ΠΆΠ΅, Ρ‡Ρ‚ΠΎ ΠΈ Π² ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ с Ρ€Π΅Ρ„Π»Π΅ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌΠΈ XSS, Π½ΠΎ здСсь Π°Ρ‚Π°ΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„Π°ΠΉΠ»Π΅ xss3.go ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ go run xss3.go.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 6: ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Π²Π΅Π±-прилоТСния с XSS-Π°Ρ‚Π°ΠΊΠΎΠΉ Π½Π° основС DOM.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 7: Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π°Ρ‚Π°ΠΊΠΈ XSS Π½Π° основС DOM.

БвязанныС направлСния Π°Ρ‚Π°ΠΊ

Content-type

ВсСму Π²ΠΈΠ½ΠΎΠΉ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ настройка Ρ‚ΠΈΠΏΠ° содСрТимого ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠ² HTTP. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ ΠΊΠ°ΠΊ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ Π±Π΅ΠΊΠ΅Π½Π΄Π° (ΠΎΡ‚Π²Π΅Ρ‚ ΠΈΠΌΠ΅Π΅Ρ‚ Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² Content-Type), Ρ‚Π°ΠΊ ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΏΡ€ΠΎΡΠ½ΠΈΡ„Ρ„Π΅Ρ€ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ MIME. Internet Explorer Π±Ρ‹Π» особСнно восприимчив ΠΊ этому, ΠΈ классичСским ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ являСтся слуТба Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ: Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ JavaScript вмСсто ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ. Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ Π²ΠΈΠ΄ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ρ‚ΠΈΠΏ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π±Ρ‹Π» установлСн Π½Π° image/jpg, Π½ΠΎ ΠΏΠ΅ΠΉΠ»ΠΎΠ°Π΄ содСрТит скрипт – ΠΎΠ½ выполняСтся, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π°Ρ‚Π°ΠΊΠ΅ XSS.

Urlschemes

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ‚ΠΈΠΏ Π°Ρ‚Π°ΠΊΠΈ – Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· URL со схСмой JavaScript. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΠΌ Π²Π΅Π±-сайт, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ†Π΅Π»ΡŒ ссылки, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²ΠΎ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ 8. Π’ этом случаС Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ смоТСт ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ URL, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΠΉ Π½Π΅ΠΊΠΈΠΉ JavaScript с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нашСй схСмы.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ‚ΠΈΠΏ Π°Ρ‚Π°ΠΊΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„Π°ΠΉΠ»Π΅ xss4.go, Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ go run xss4.go ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΏΠΎ ссылкС http://localhost:8080?link=javascript:alert(1).

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 8: XSS-Π°Ρ‚Π°ΠΊΠ°, ввСдСнная Ρ‡Π΅Ρ€Π΅Π· схСму URL-адрСсов.

ИзбавлСниС

Π•Π΄ΠΈΠ½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π½Π΅ сущСствуСт, ΠΈΠ½Π°Ρ‡Π΅ XSS Π½Π΅ Π±Ρ‹Π» Π±Ρ‹ Ρ‚Π°ΠΊΠΎΠΉ распространСнной ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ. Π€ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½Π°Ρ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹Π·Π²Π°Π½Π° отсутствиСм раздСлСния ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠΎΠ΄ΠΎΠΌ ΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. БмягчСниС послСдствий XSS ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ очистку Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π½Π΅ содСрТат ΠΊΠΎΠ΄Π°), экранированиС Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… (ΠΎΠ½ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄) ΠΈ Ρ€Π΅ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ прилоТСния Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠ΄ загруТался ΠΈΠ· строго ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… Ρ‚ΠΎΡ‡Π΅ΠΊ.

Валидация Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…

Валидация Π΄Π°Π½Π½Ρ‹Ρ… – слоТная ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°. НС сущСствуСт ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ инструмСнта ΠΈΠ»ΠΈ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠΈ для всСх ситуаций. Π›ΡƒΡ‡ΡˆΠ΅ всСго ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ Ρ‚ΠΈΠΏ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ мСсто, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π²Π°Π»ΠΈΠ΄Π°Ρ‚ΠΎΡ€.

Π₯ΠΎΡ€ΠΎΡˆΠΈΠΉ Ρ‚ΠΎΠ½ написания ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° Go состоит Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΠΈΠΌΠ΅Ρ‚ΡŒ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ Π»ΠΎΠ³ΠΈΠΊΠΈ прилоТСния Π² ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Ρ… запросов HTTP, Π° вмСсто этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… для Π°Π½Π°Π»ΠΈΠ·Π° ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π—Π°Ρ‚Π΅ΠΌ Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ структуру. ΠžΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ запросов становятся простыми ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ Ρ†Π΅Π½Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ΅ располоТСниС для контроля ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ очистки Π΄Π°Π½Π½Ρ‹Ρ….

На Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ 9 ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΏΠΈΡΠ°Ρ‚ΡŒ saveHandler для ΠΏΡ€ΠΈΠ΅ΠΌΠ° символов ASCII [A-Za-z\.].

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 9: ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² HTTP-запросов для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

ΠœΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ это излишнСС бСспокойство, Π½ΠΎ Ρ‡Π°Ρ‚-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π³ΠΎΡ€Π°Π·Π΄ΠΎ большС, Ρ‡Π΅ΠΌ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ символов. МногиС ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Π΅ прилоТСниями Π΄Π°Π½Π½Ρ‹Π΅ достаточно структурированы: адрСса, Π½ΠΎΠΌΠ΅Ρ€Π° Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΎΠ², ΠΏΠΎΡ‡Ρ‚ΠΎΠ²Ρ‹Π΅ индСксы ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Π΅ Π²Π΅Ρ‰ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Ρ‹.

Π­ΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Одно ΠΈ Ρ‚ΠΎ ΠΆΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π³ΠΎΡ€Π°Π·Π΄ΠΎ бСзопаснСС (Π΄Π°ΠΆΠ΅ Ссли Π² Π½Π΅Π³ΠΎ Π±Ρ‹Π»Π° ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½Π° ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡ ΠΊΠΎΠ΄Π°), Ссли ΡΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС нСбСзопасныС Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅. ИмСнно это Π΄Π΅Π»Π°Π΅Ρ‚ ΠΏΠ°ΠΊΠ΅Ρ‚ html/template Π² Go. ИспользованиС языка шаблонов ΠΈ контСкстно-зависимого синтаксичСского Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π° для экранирования Π΄Π°Π½Π½Ρ‹Ρ… Π΄ΠΎ ΠΈΡ… Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ выполнСния врСдоносного ΠΊΠΎΠ΄Π°.

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΏΠ°ΠΊΠ΅Ρ‚Π° html/template. Π‘ΠΎΡ…Ρ€Π°Π½ΠΈΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„Π°ΠΉΠ»Π΅ xss5.go, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ go run xss5.go.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 10: ИспользованиС экранирования для устранСния Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… XSS-Π°Ρ‚Π°ΠΊ.

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ консоль Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΈ посмотритС Π½Π° элСмСнт li Π² DOM. Π˜Π½Ρ‚Π΅Ρ€Π΅Ρ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π΄Π²Π° свойства: innerHTML ΠΈ innerText.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 11: ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° DOM ΠΏΡ€ΠΈ использовании экранирования.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΠΊΠ°ΠΊ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ экранирования ΡƒΠ΄Π°Π»ΠΎΡΡŒ Ρ‡Π΅Ρ‚ΠΊΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈ Π΄Π°Π½Π½Ρ‹Π΅.

Content Security Policy

НаписаниС CSP для Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Π°Π²Ρ‚ΠΎΠ½ΠΎΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ являСтся простой Π·Π°Π΄Π°Ρ‡Π΅ΠΉ – Π½Π°Ρ‡Π½ΠΈΡ‚Π΅ с ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ, которая ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ всС источники, Π° Π·Π°Ρ‚Π΅ΠΌ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚Π΅ нСбольшой ΠΈΡ… Π½Π°Π±ΠΎΡ€. Однако Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ эффСктивный CSP для Π±ΠΎΠ»ΡŒΡˆΠΈΡ… сайтов ΡƒΠΆΠ΅ Π½Π΅ Ρ‚Π°ΠΊ просто. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сайт Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΈΠ· Π²Π½Π΅ΡˆΠ½ΠΈΡ… источников, CSP раздуваСтся ΠΈ становится Π³Ρ€ΠΎΠΌΠΎΠ·Π΄ΠΊΠΈΠΌ. НСкоторыС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΡΠ΄Π°ΡŽΡ‚ΡΡ ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρƒ unsafe-inline, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ Ρ€Π°Π·Ρ€ΡƒΡˆΠ°Ρ Ρ‚Π΅ΠΎΡ€ΠΈΡŽ CSP.

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΏΡ€ΠΎΡΡ‚ΠΈΡ‚ΡŒ написаниС CSP, Π² CSP3 вводится Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° strict-dynamic. ВмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ большой Π±Π΅Π»Ρ‹ΠΉ список Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… источников, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ случайноС число (nonce) ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ страница. Π­Ρ‚ΠΎΡ‚ nonce отправляСтся вмСстС с Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌΠΈ страницы ΠΈ встроСн Π² Ρ‚Π΅Π³ script, Ρ‡Ρ‚ΠΎ заставляСт Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π΄ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ этим скриптам с ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ nonce, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π»ΡŽΠ±Ρ‹ΠΌ скриптам, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ. ВмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Π½ΠΎΡΠΈΡ‚ΡŒ скрипты Π² Π±Π΅Π»Ρ‹ΠΉ список ΠΈ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π΅Ρ‰Π΅ сцСнарии ΠΎΠ½ΠΈ Π·Π°Π³Ρ€ΡƒΠΆΠ°ΡŽΡ‚, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠΎΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π±Π΅Π»Ρ‹ΠΉ список рСкурсивно, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ достаточно внСсти Π² Π±Π΅Π»Ρ‹ΠΉ список ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΠ΅ΠΌΡ‹ΠΉ скрипт Π²Π΅Ρ€Ρ…Π½Π΅Π³ΠΎ уровня.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 12: ΠŸΡ€ΠΈΠΌΠ΅Ρ€ CSP, ΡΠΌΡΠ³Ρ‡Π°ΡŽΡ‰Π΅Π³ΠΎ XSS-Π°Ρ‚Π°ΠΊΡƒ.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΏΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ ΠΏΠΎ ссылкС: http://localhost:8080 ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΈ Ρ€Π°Π½ΡŒΡˆΠ΅. Π­Ρ‚Π° Π°Ρ‚Π°ΠΊΠ° сработала Π±Ρ‹ ΠΈ Π±Π΅Π· CSP, Π½ΠΎ ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ CSP Π½Π΅ допускаСт inline-скриптов, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΠΎΠΉ Π²Ρ‹Π²ΠΎΠ΄ Π² консоли Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°:

ΠŸΠΎΡ‡Π΅ΠΌΡƒ сцСнарий Π½Π΅ запустился? Рассмотрим CSP ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅.

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ 13: Π‘Π°Π·ΠΎΠ²Ρ‹ΠΉ CSP. Nonce ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ гСнСрируСтся для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ запроса.

Основная ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования этого ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² нСобходимости Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ nonce ΠΈ ΠΈΠ½ΠΆΠ΅ΠΊΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠ΅ страницы. ПослС этого шаблон ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ ΠΊΠΎ всСм Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΌ страницам.

Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ устранСния

Content-Type

Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ свой Content-Type, Π½ΠΎ ΠΈ ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π½Π΅ ΠΏΡ‹Ρ‚Π°Π»ΠΈΡΡŒ автоматичСски ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ‚ΠΈΠΏ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ : X-Content-Type-Options: nosniff.

Virtual doms

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Если Π²Ρ‹ Π΄ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π°, Ρƒ вас ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΠ²ΠΈΡ‚ΡŒΡΡ ΠΆΠ΅Π»Π°Π½ΠΈΠ΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ошибки XSS ΠΈ насколько Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΡ‚ Π½ΠΈΡ… ΠΈΠ·Π±Π°Π²ΠΈΡ‚ΡŒΡΡ. XSS Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ ΠΈΡΠΊΠΎΡ€Π΅Π½ΠΈΡ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ прилоТСния становятся всС большС ΠΈ всС слоТнСС. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΡ упомянутыС Π² ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Тизнь Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ² Ρ‚Ρ€ΡƒΠ΄Π½ΠΎΠΉ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ тСстировщику Π½Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π΅

По ΠΌΠΎΠ΅ΠΌΡƒ наблюдСнию довольно ΠΌΠ½ΠΎΠ³ΠΎ тСстировщиков ΠΊΠΎΠ³Π΄Π°-Π»ΠΈΠ±ΠΎ ΡΠ»Ρ‹ΡˆΠ°Π»ΠΈ Ρ‚Π°ΠΊΠΎΠ΅ понятиС, ΠΊΠ°ΠΊ XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. Но ΠΌΠ°Π»ΠΎ ΠΊΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ просто ΠΈ Π½Π° ΠΏΠ°Π»ΡŒΡ†Π°Ρ… Ρ€Π°ΡΡΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π° собСсСдовании ΠΏΡ€ΠΎ Π½Π΅Π΅. Или эффСктивно ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π²Π΅Π±-сайт Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ этой уязвимости. Π”Π°Π²Π°ΠΉΡ‚Π΅ вмСстС разбСрСмся со всСм этим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΈ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ сами Π½Π°ΠΉΡ‚ΠΈ Π½Π΅ΡΠ»ΠΎΠΆΠ½ΡƒΡŽ XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π° Π΄Π΅ΠΌΠΎ-страницС, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ я ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ» ΠΊ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Если Π²Ρ‹ Π³ΡƒΡ€Ρƒ тСстирования бСзопасности ΠΈ Π½Π° Ρ€Π°Π·-Π΄Π²Π° участвуСтС Π² Π±Π°ΡƒΠ½Ρ‚ΠΈ-ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°Ρ… ΠΊΡ€ΡƒΠΏΠ½Ρ‹Ρ… IT-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΉ, Π° количСство Π½Π°ΠΉΠ΄Π΅Π½Π½Ρ‹Ρ… Π²Π°ΠΌΠΈ XSS исчисляСтся дСсятками ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ сотнями β€” ΠΌΠΎΠΆΠ½ΠΎ смСло ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΌΠΈΠΌΠΎ этой ΡΡ‚Π°Ρ‚ΡŒΠΈ. Если ΠΆΠ΅ Π²Ρ‹ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² Ρ‚Π΅ΠΌΠ΅ ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚Π΅ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒΡΡ поиском уязвимостСй β€” Π΄ΠΎΠ±Ρ€ΠΎ ΠΏΠΎΠΆΠ°Π»ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄ ΠΊΠ°Ρ‚.

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅

XSS (Π°Π½Π³Π». Cross-Site Scripting β€” «мСТсайтовый скриптинг») β€” довольно распространСнная ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ Π½Π° мноТСствС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π•Π΅ ΡΡƒΡ‚ΡŒ довольно проста, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ удаСтся Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ Π½Π° страницу JavaScript-ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Π±Ρ‹Π» прСдусмотрСн Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌΠΈ. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ (ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ) Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° страницу прилоТСния, ΠΊΡƒΠ΄Π° этот ΠΊΠΎΠ΄ Π±Ρ‹Π» Π΄ΠΎΠ±Π°Π²Π»Π΅Π½. А дальшС сущСствуСт нСсколько сцСнариСв развития.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ: Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ удастся Π·Π°ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π²ΠΎΠΉΡ‚ΠΈ Π² Π΅Π³ΠΎ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ: Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½ΠΎ для ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΡƒΡŽ страницу-ΠΊΠ»ΠΎΠ½. Π­Ρ‚Π° страница ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΎ Ρ‚ΠΎΠΉ, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ рассчитывал ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ. Но Π²ΠΎΡ‚ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ°Ρ‚ΡŒ ΠΎΠ½Π° Π±ΡƒΠ΄Π΅Ρ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ. Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹ ΠΈ Π½Π° этой страницС Π²Π²Π΅Π΄Π΅Ρ‚ ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ sensitive data, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π»ΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅, ΠΎΠ½ΠΈ окаТутся Ρƒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°.

ВрСтий… Π΄Π° Π² ΠΎΠ±Ρ‰Π΅ΠΌ-Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΎ Ρ‡Π΅Π³ΠΎ Π΅Ρ‰Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ. ΠŸΠΎΡ‡Ρ‚ΠΈ всС, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ JavaScript, становится доступным для Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°. Π§ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅ ΠΌΡ‹ рассмотрим ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ². А ΠΏΠΎΠΊΠ° Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ±ΡΡƒΠ΄ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ устроСна ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. И ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ удаСтся Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ свой ΠΊΠΎΠ΄ Π² Ρ‡ΡƒΠΆΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· доступа ΠΊ Π΅Π³ΠΎ исходникам.

НСбольшоС ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅. Вся информация Π΄Π°Π»Π΅Π΅ прСдставлСна ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… цСлях. ВСстировщик Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡƒΠΌΠ΅Ρ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ своС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° уязвимости. Однако, использованиС XSS-уязвимостСй Π½Π° Ρ‡ΡƒΠΆΠΈΡ… рСсурсах являСтся Π½Π΅Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΌ.

Если Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ российскоС Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ тСстируСт Ρ‡ΡƒΠΆΠΎΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ Π½Π° ΠΏΡ€Π΅Π΄ΠΌΠ΅Ρ‚ уязвимостСй ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ°Π΅Ρ‚ Π² Ρ‡ΡƒΠΆΡƒΡŽ ΡΠ΅Ρ‚ΡŒ Π±Π΅Π· Π²Π΅Π΄ΠΎΠΌΠ° ΠΈ согласия Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π°, Π΅Π³ΠΎ дСйствия ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ расцСнСны ΠΊΠ°ΠΊ Π½Π΅ΠΏΡ€Π°Π²ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅.

Как устроСна ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ?

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, ΠΊΠ°ΠΊ ΠΈΠΌΠ΅Π½Π½ΠΎ удаСтся Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ Π½Π° страницу JavaScript-ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ‚Π°ΠΌ Ρ€Π°Π½ΡŒΡˆΠ΅ Π½Π΅ Π±Ρ‹Π»ΠΎ? И ΠΊΠ°ΠΊ получаСтся Ρ€Π°ΡΠΏΡ€ΠΎΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ этот ΠΊΠΎΠ΄ срСди Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ?

НапримСр, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ JavaScript-ΠΊΠΎΠ΄ Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°, тСкст ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ сохраняСтся ΠΈ Π² дальнСйшСм отобраТаСтся Π½Π° страницС для всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»Π΅ для Π²Π²ΠΎΠ΄Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ сСбС Π½Π° страницС профиля ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ сСти ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅.

Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π²Π²ΠΎΠ΄ΠΈΡ‚ тСкст (ΠΈ Π·Π° ΠΎΠ΄Π½ΠΎ врСдоносный ΠΊΠΎΠ΄), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сохраняСтся Π½Π° страницС. Когда Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Π·Π°ΠΉΠ΄ΡƒΡ‚ Π½Π° эту ΠΆΠ΅ страницу, вмСстС с тСкстом ΠΎΠ½ΠΈ загрузят ΠΈ JavaScript-ΠΊΠΎΠ΄ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°. ИмСнно Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ этот ΠΊΠΎΠ΄ ΠΎΡ‚Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ сработаСт, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли тСкст ΠΏΡ€ΠΈ сохранСнии Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ обСзопасСн. О Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, ΠΈ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ ΠΈΠ½ΠΎΠ³Π΄Π° Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ± этом, ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Ρ‡ΡƒΡ‚ΡŒ ΠΏΠΎΠ·ΠΆΠ΅.

Π­Ρ‚ΠΎ лишь самый простой ΠΈ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ спрятана ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. Π‘ΠΎΠ»Π΅Π΅ интСрСсный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΡ‹ с Π²Π°ΠΌΠΈ Ρ‡ΡƒΡ‚ΡŒ Π½ΠΈΠΆΠ΅ рассмотрим Π½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π½ΠΎΠΉ Π΄Π΅ΠΌΠΎ-страничкС.

А ΠΏΠΎΠΊΠ° Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π΄Π²ΠΈΠ³Π°Ρ‚ΡŒΡΡ дальшС.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ Ρ‚Π°ΠΊΠΈΠ΅ ошибки часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π½Π° Π²Π΅Π±-ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°Ρ…?

Π‘ΡƒΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ тСкст ΠΎΡ‚ тСкста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ являСтся CSS, HTML ΠΈΠ»ΠΈ JavaScript-ΠΊΠΎΠ΄ΠΎΠΌ. Он Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ всС, Ρ‡Ρ‚ΠΎ находится ΠΌΠ΅ΠΆΠ΄Ρƒ Ρ‚Π΅Π³Π°ΠΌΠΈ

Π’ случаС, Ссли страница являСтся уязвимой, послС Π²Π²ΠΎΠ΄Π° этого ΠΊΠΎΠ΄Π° Π½Π° страницС появится Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠ΅ окошко:

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

Оно ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ наш JavaScript-ΠΊΠΎΠ΄ исполнился ΠΈ ΠΌΡ‹ нашли XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ.

Π˜Ρ‚Π°ΠΊ, Π²Π²ΠΎΠ΄ΠΈΠΌ ΠΊΠΎΠ΄ ΠΈ Π²ΠΈΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π΅Π½ΠΈΠ΅:

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

Π€ΠΎΡ€ΠΌΠ° Π½Π΅ позволяСт Π½Π°ΠΌ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ поиск ΠΏΠΎ Ρ‚Π°ΠΊΠΎΠΌΡƒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Ρ„ΠΎΡ€ΠΌΠ° валидируСтся ΠΈ Ρ…ΠΎΡ‡Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Π±ΡƒΠΊΠ²Π°ΠΌΠΈ ΠΈ Ρ†ΠΈΡ„Ρ€Π°ΠΌΠΈ. На ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд каТСтся, Ρ‡Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ всС ΡƒΡ‡Π΅Π» ΠΈ Π·Π°Ρ‰ΠΈΡ‚ΠΈΠ» страницу ΠΎΡ‚ XSS, Π½ΠΎ это Π½Π΅ совсСм Ρ‚Π°ΠΊ.

ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, Ρ‡ΡƒΡ‚ΡŒ Π²Ρ‹ΡˆΠ΅ ΠΌΡ‹ с Π²Π°ΠΌΠΈ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π²Π²ΠΎΠ΄ΠΈΠΌ Π² ΠΏΠΎΠ»Π΅ поиска, отобраТаСтся Π² URL Π² Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΌ GET-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅? Имя этого ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° β€œq”, Π° Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ β€” Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π²Π²ΠΎΠ΄ΠΈΠΌ Π² ΠΏΠΎΠ»Π΅ поиска. Π­Ρ‚ΠΎ сдСлано для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ URL вмСстС с этой самой строкой поиска ΠΈ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π°Π· ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ страницу сразу с Π½ΡƒΠΆΠ½Ρ‹ΠΌΠΈ Π°Π²Ρ‚ΠΎΡ€Π°ΠΌΠΈ.

НапримСр, Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ URL ΠΎΡ‚ΠΊΡ€ΠΎΠ΅Ρ‚ страницу сразу Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΊΠ½ΠΈΠ³Π°ΠΌΠΈ РСя БрэдбСри: playground.learnqa.ru/demo/xss?q=Π Π΅ΠΉ+БрэдбСри

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Ρ„ΠΎΡ€ΠΌΡ‹, Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ URL Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π½Π΅ ΠΌΠΎΠ³ β€” любой ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π² своСм Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ввСсти любой URL, ΠΊΠ°ΠΊΠΎΠΉ Π·Π°Ρ…ΠΎΡ‡Π΅Ρ‚, Π² Ρ‚ΠΎΠΌ числС ΠΈ с Π»ΡŽΠ±Ρ‹ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ GET-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°. Π—Π°Π΄Π°Ρ‡Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π² этом случаС β€” Π½Π΅ Π·Π°Π±Ρ‹Ρ‚ΡŒ ΡƒΡ‡Π΅ΡΡ‚ΡŒ всС Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ ΠΈ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ значСния этого GET-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ, Π½Π΅ Π·Π°Π±Ρ‹Π» Π»ΠΈ наш Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ всС ΡƒΡ‡Π΅ΡΡ‚ΡŒ Ρ‚ΡƒΡ‚. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π² GET-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ β€œq” ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‚ самый JavaScript-ΠΊΠΎΠ΄: https://playground.learnqa.ru/demo/xss?q=

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Ρ ΠΏΠΎ этому URL ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π½Π° страницС появилось окошко со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ 123. Но ΠΏΠΎΡ‡Π΅ΠΌΡƒ?

ВсС довольно просто. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅, ΠΊΠΎΠ³Π΄Π° сайт Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΉΡ‚ΠΈ Π½ΡƒΠΆΠ½Ρ‹Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΏΠΎ Π·Π°Π΄Π°Π½Π½ΠΎΠΌΡƒ поисковому запросу, ΠΎΠ½ тСкст этого поискового запроса Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π² тСкстС ошибкС? Мол, Π½Π΅ нашли Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΠΎ запросу β€œΠ±Π»Π°-бла”. Π’ΠΎΡ‚ вмСсто этого β€œΠ±Π»Π°-бла” Ρƒ нас Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ JavaScript-ΠΊΠΎΠ΄ с Π°Π»Π΅Ρ€Ρ‚ΠΎΠΌ. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ написал Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ поля Π²Π²ΠΎΠ΄Π° ΠΈ Ρ€Π΅ΡˆΠΈΠ», Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊ ΠΎΠ½ Π·Π°Ρ‰ΠΈΡ‚ΠΈΠ» сайт ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ JavaScript ΠΌΠΎΠ³ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π² поисковом запросС. И Π½Π΅ стал ΡΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСкст ошибки. Нам ΠΆΠ΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π²Π°Π»ΠΈΠ΄Π°Ρ†ΠΈΡŽ Ρ‡Π΅Ρ€Π΅Π· URL, помСняв Ρ‚Π°ΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поискового запроса.

Π Π°Π΄ΠΈ интСрСса Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΌΠΎΠΆΠ΅ΠΌ вывСсти Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ нашСй сСссионной cookie, для этого вмСсто Π² URL Π½Π°Π΄ΠΎ ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠΎΠ΄:

Π‘ этим я ΡƒΠΆΠ΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡŽ ΠΏΠΎΠΈΠ³Ρ€Π°Ρ‚ΡŒΡΡ Π²Π°ΠΌ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ. πŸ™‚

Найдя ΠΎΡˆΠΈΠ±ΠΊΡƒ, стоит ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°ΠΌ β€” ΠΎΠ½ΠΈ Π΅Π΅ исправят.

Бпособов Π·Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ довольно ΠΌΠ½ΠΎΠ³ΠΎ. Π­ΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ тСкст β€” Π½Π΅ СдинствСнный ΠΈΠ· Π½ΠΈΡ…. Π•Ρ‰Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ самому JavaScript Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ cookie. Для этого Ρƒ cookie Π΅ΡΡ‚ΡŒ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ β€œhttp only”. Если ΠΎΠ½ выставлСн Π² TRUE, JavaScript Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ смоТСт ΡƒΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ такая cookie Π²ΠΎΠΎΠ±Ρ‰Π΅ выставлСна ΠΈ Π½Π΅ смоТСт Π΅Π΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ Π΄Π°ΠΆΠ΅ Π² Ρ‚ΠΎΠΌ случаС, Ссли Π΅ΠΌΡƒ удастся Π½Π°ΠΉΡ‚ΠΈ XSS Π½Π° вашСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅.

ВсС это β€” лишь ΠΌΠ°Π»Ρ‹ΠΉ, Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ ΠΏΠΎΠ»Π½Ρ‹ΠΉ список манипуляций, ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°ΡŽΡ‰ΠΈΠΉ XSS-уязвимости. Как писалось Π²Ρ‹ΡˆΠ΅ β€” ΠΏΡ€ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠΈ XSS Π² Ρ…ΠΎΠ΄Π΅ тСстирования Π»ΡƒΡ‡ΡˆΠ΅ всСго ΠΏΠΎΠΎΠ±Ρ‰Π°Ρ‚ΡŒΡΡ с программистами.

Если Π’Π°ΠΌ интСрСсно Π·Π½Π°Ρ‚ΡŒ большС ΠΏΡ€ΠΎ тСстированиС бСзопасности, хочСтся Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² устройствС ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСрной Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Ρ‹, ΠΏΠΎΠ½ΡΡ‚ΡŒ ΠΈ ΠΎΡ‚Ρ‚ΠΎΡ‡ΠΈΡ‚ΡŒ самыС эффСктивныС способы поиска уязвимостСй Π½Π° настоящСм Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚Π΅ Π½Π° ΠΌΠΎΠΉ курс β€œΠ’Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ бСзопасности”. Вся Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠ° информация Π΅ΡΡ‚ΡŒ Π² ΠΌΠΎΠ΅ΠΌ ΠΏΡ€ΠΎΡ„ΠΈΠ»Π΅.

Вас ΠΆΠ΄Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ полСзная ΠΈ нуТная тСория Π±Π΅Π· Π²ΠΎΠ΄Ρ‹ ΠΈ большоС количСство практичСских ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² ΠΈ Π·Π°Π΄Π°Π½ΠΈΠΉ. Π’Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚ΡŒ мноТСство Π²Π΅Π±-страниц, Π½Π°ΠΏΠΈΡ‡ΠΊΠ°Π½Π½Ρ‹Ρ… самыми Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ уязвимостями. Π˜Ρ‚ΠΎΠ³ΠΎΠ²ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ станСт большоС исслСдованиС Π»ΠΈΠ±ΠΎ вашСго Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°, Π»ΠΈΠ±ΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ‚Π°ΠΊΠΈΡ… Π³ΠΈΠ³Π°Π½Ρ‚ΠΎΠ² ΠΊΠ°ΠΊ Google, Facebook, Twitter ΠΈ Ρ‚Π°ΠΊ Π΄Π°Π»Π΅Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

CистСматичСская ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ сайтов, созданных Π½Π° CMS 1Π‘-Битрикс

ΠΠ°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎ систСматичСских уязвимостях сайтов, созданных Π½Π° коммСрчСских CMS, ΠΏΠΎΠ΄Ρ‚ΠΎΠ»ΠΊΠ½ΡƒΠ» пост, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±Ρ‹Π»ΠΈ описаны риски Π²Π·Π»ΠΎΠΌΠ° Β«Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½Ρ‹Ρ…Β» CMS.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ основноС Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ удСляСтся ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚Π°Ρ†ΠΈΠΈ рСсурсов ΠΏΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ «чСловСчСского Ρ„Π°ΠΊΡ‚ΠΎΡ€Π°Β», Π° Ρ‚Π΅ΠΌΠ° эксплуатации уязвимостСй сайтов ΠΈ Π²Π΅Π±-Π°Ρ‚Π°ΠΊ Π±Ρ‹Π»Π° ΠΎΠ±ΠΎΠΉΠ΄Π΅Π½Π° ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ сущСствования «нСуязвимых» CMS. ΠŸΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎ сущСствовании «нСуязвимых» CMS, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΎ Π½Π° сущСствованиС, ΠΊΠ°ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° Β«ΠΈΠ· ΠΊΠΎΡ€ΠΎΠ±ΠΊΠΈΒ» Π½Π° CMS 1C-Битрикс ΠΎΡ‡Π΅Π½ΡŒ высока, ΠΈ Π½Π°ΠΉΡ‚ΠΈ Π±ΠΎΠ»Π΅Π΅-ΠΌΠ΅Π½Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ уязвимости ΠΊΠΎΠ΄Π° Β«ΠΊΠΎΡ€ΠΎΠ±ΠΎΡ‡Π½ΠΎΠΉ вСрсии» вряд Π»ΠΈ удастся.

Π”Ρ€ΡƒΠ³ΠΎΠ΅ Π΄Π΅Π»ΠΎ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π°, созданного Π½Π° Ρ‚Π°ΠΊΠΎΠΉ CMS, ΠΈ самоС Π³Π»Π°Π²Π½ΠΎΠ΅, систСматика проявлСния уязвимостСй высокого уровня ΡƒΠ³Ρ€ΠΎΠ· Ρƒ этих сайтов. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· нашСй ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ ΠΏΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ бСзопасности сайтов (компания InSafety), Π° Ρ‚Π°ΠΊΠΆΠ΅ статистики, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΌΡ‹ собираСм ΠΏΠΎ уязвимостям ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ (CMS), Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ Ρ‡Π΅ΠΌ Ρƒ пятидСсяти ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² сайтов, созданных Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1Π‘-Битрикс c Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚Π°ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, сущСствуСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ эксплуатации Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… XSS-Π°Ρ‚Π°ΠΊ.

ΠŸΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°: CMS 1C-Битрикс 15.0 ΠΈ Π²Ρ‹ΡˆΠ΅
Π£Π³Ρ€ΠΎΠ·Π° бСзопасности: хранимая XSS-Π°Ρ‚Π°ΠΊΠ°
БистСматика: Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 50% сайтов с Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚Π°ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚Π°Ρ†ΠΈΡŽ XSS Π°Ρ‚Π°ΠΊΠΈ, Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² нСдостаточной Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠ»Π΅ΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ рСгистрационной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ рСсурса, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π² Π‘Π”.

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

HTML-ΠΊΠΎΠ΄ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ санирован ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠ½Π΅Π½ Π² ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Β«ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒΒ». Π‘ΠΊΡ€ΠΈΠ½ΡˆΠΎΡ‚ Π°Π΄ΠΌΠΈΠ½ΠΊΠΈ сайта:

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π°Ρ‚Π°ΠΊΠΈ Ρ‡Π΅Ρ€Π΅Π· xss битрикс Ρ‡Ρ‚ΠΎ это

Π­Ρ‚ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ наглядно дСмонстрируСт Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΡƒΠ³Ρ€ΠΎΠ·Ρ‹ бСзопасности

Π’ ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠΉ дСмонстрации сущСствовании ΡƒΠ³Ρ€ΠΎΠ·Ρ‹, Π±Ρ‹Π»ΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ HTML ΠΊΠΎΠ΄Π°, Π° Π½Π΅ JS, Ρ‡Ρ‚ΠΎ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅Ρ‚ типовая XSS-Π°Ρ‚Π°ΠΊΠ°. Π­Ρ‚ΠΎ обусловлСно Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Ρƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ сайтов, Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Ρ… Π½Π° CMS 1C-Битрикс, ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΡƒ внСдрСния JS-ΠΊΠΎΠ΄Π° Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΏΡ€ΠΎΠ°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹.

Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° синтаксичСских Ρ‚Π΅Π³ΠΎΠ² HTML ΠΊΠΎΠ΄Π°, ΠΏΡ€ΠΎΠ°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ CMS 1C-Битрикс Π½Π΅ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΡƒΠ΅Ρ‚ΡΡ. Вакая дСмонстрация обнаруТСния уязвимости ΠΊΠΎΠ΄Π° Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½ΠΎ бСзопасна ΠΈ наглядна. Π’ случаС, ΠΊΠΎΠ³Π΄Π° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ ΠΏΡ€ΠΎΠ°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ 1Π‘-Битрикс ΠΏΠΎ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½, Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Π°Ρ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° позволяСт ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Π΅ XSS-Π°Ρ‚Π°ΠΊΠΈ Π² «классичСской» Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π£Ρ€ΠΎΠ²Π΅Π½ΡŒ ΡƒΠ³Ρ€ΠΎΠ·Ρ‹ бСзопасности для сайта ΠΎΡ‚ внСдрСния любого (Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ JS ΠΈΠ»ΠΈ HTML) нСсанкционированного ΠΊΠΎΠ΄Π°, ΠΊΠ°ΠΊ ΠΈ Π΅Π³ΠΎ Π²Ρ‹Π²ΠΎΠ΄Π° Π±Π΅Π· Π΄ΠΎΠ»ΠΆΠ½ΠΎΠΉ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ, ΠΊΡ€Π°ΠΉΠ½Π΅ высок.

По понятным ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ, Π² этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π½Π΅ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ΡΡ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ эксплуатации Π°Ρ‚Π°ΠΊΠΈ, ΠΊΠ°ΠΊ с Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ, Ρ‚Π°ΠΊ ΠΈ с ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹ΠΌ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠΌ ΠΏΡ€ΠΎΠ°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ Π·Π°Ρ‰ΠΈΡ‚Ρ‹.

Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ XSS-Π°Ρ‚Π°ΠΊΠΈ

Π—Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ свой сайт ΠΎΡ‚ возмоТности эксплуатации XSS Π°Ρ‚Π°ΠΊΠΈ достаточно просто. Для этого слСдуСт Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ…ΠΎΠ΄Π½Ρ‹Π΅ ΠΈ Π²Ρ‹Ρ…ΠΎΠ΄Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΡƒΡ‚Π΅ΠΌ экранирования символов ΠΈ прСобразования спСцсимволов Π² HTML-сущности. Π’ php это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ htmlspecialchars(), htmlentities(), strip_tags().

ΠšΡ€ΠΎΠΌΠ΅ этого слСдуСт явно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΡƒ страниц сайта:

Бпособов Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ XSS Π°Ρ‚Π°ΠΊ мноТСство, ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Π·Π°ΠΏΡ€Π΅Ρ‚Π° Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ ΠΊΠ°Π²Ρ‹Ρ‡Π΅ΠΊ ΠΈ скобок (Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ Ρ‡Π΅Ρ€Π½ΠΎΠΌΡƒ списку) Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Π²Π΅Π±-сСрвСра.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ для NGINX: (запись Π² ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ»)

Π€ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ Ρ‡Π΅Ρ€Π½ΠΎΠΌΡƒ списку ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° Π΄Π°Π»Π΅ΠΊΠΎ Π½Π΅ для всСх сайтов. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠΉ способ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ, слСдуСт с большой ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π»Π΅Π³Π°Π»ΡŒΠ½Ρ‹Π΅ запросы.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’Ρ‹ΡˆΠ΅ΠΎΠ·Π½Π°Ρ‡Π΅Π½Π½Π°Ρ ΡƒΠ³Ρ€ΠΎΠ·Π° бСзопасности Π½Π° Π²Π΅Π±-прилоТСния, являСтся Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ популярной ΠΈ извСстной Π°Ρ‚Π°ΠΊΠΎΠΉ. ΠŸΡ€ΠΎ XSS Π°Ρ‚Π°ΠΊΠΈ ΠΈ Π·Π°Ρ‰ΠΈΡ‚Ρƒ ΠΎΡ‚ Π½ΠΈΡ…, написано тысячи статСй ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΉ.

Π’ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅ нашСй ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊ XSS Π°Ρ‚Π°ΠΊΠ°ΠΌ Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚ΠΎΠ² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π±Ρ‹Π»Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π° осСнью 2015 Π³ΠΎΠ΄Π°. Π’Π΅ΡΠ½ΠΎΡŽ 2016 Π³ΠΎΠ΄Π° наша статистика уязвимых сайтов Π½Π° CMS 1Π‘-Битрикс явно ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π»Π° Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ возмоТности эксплуатации Π°Ρ‚Π°ΠΊΠΈ Ρƒ Π±ΠΎΠ»Π΅Π΅ 50% ΠΏΡ€ΠΎΡ†Π΅Π½Ρ‚ΠΎΠ² исслСдуСмых сайтов. Π’ Π°ΠΏΡ€Π΅Π»Π΅ 2016 Π³ΠΎΠ΄Π°, понимая, Ρ‡Ρ‚ΠΎ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΊΠΎΠ΄Π° Π² этом Ρ€Π°Π·Π΄Π΅Π»Π΅ носит систСмный Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€, ΠΌΡ‹ ΠΏΠ΅Ρ€Π΅Π΄Π°Π»ΠΈ всю ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΏΠΎ ΡƒΠ³Ρ€ΠΎΠ·Π΅ бСзопасности Π² компанию Битрикс. Π‘ΠΎΡ‚Ρ€ΡƒΠ΄Π½ΠΈΠΊΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ Битрикс приняли ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, сообщив Π² ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ связи, Ρ‡Ρ‚ΠΎ приняли ΠΌΠ΅Ρ€Ρ‹, исправив Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π°Ρ†ΠΈΡŽ ΠΊ систСмС. НСсмотря Π½Π° принятыС ΠΌΠ΅Ρ€Ρ‹, Π²Ρ‹ΡˆΠ΅ΠΎΠΏΠΈΡΠ°Π½Π½Π°Ρ ΡƒΠ³Ρ€ΠΎΠ·Π° бСзопасности для сайтов Π½Π° 1Π‘-Битрикс остаётся ΠΊΡ€Π°ΠΉΠ½Π΅ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠΉ Π½Π° сСгодняшний дСнь.

НадСюсь, Ρ‡Ρ‚ΠΎ эта информация Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² ΠΈ Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² сайтов, созданных Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1C-Битрикс.

НуТно ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ экспСримСнты с Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒΡŽ Ρ‡ΡƒΠΆΠΈΡ… сайтов, Π½Π΅ говоря ΠΎ эксплуатации Π°Ρ‚Π°ΠΊΠΈ Π² ΠΊΡ€ΠΈΠΌΠΈΠ½Π°Π»ΡŒΠ½Ρ‹Ρ… цСлях, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»Π΅Ρ‡ΡŒ ΡƒΠ³ΠΎΠ»ΠΎΠ²Π½ΡƒΡŽ ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ. Вся информация ΠΏΠΎ ΡƒΠ³Ρ€ΠΎΠ·Π΅ бСзопасности сайтов, Π² этом постС, прСдоставлСна с Ρ†Π΅Π»ΡŒΡŽ ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΎΠ±Ρ‰Π΅Π³ΠΎ уровня Π˜Π‘ ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ 1C-Битрикс.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *