ΠŸΡ€ΠΈΠΌΠ΅Ρ€ xss уязвимости: Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΈ ΠΊΠ°ΠΊ тСстировщику Π½Π΅ ΠΏΡ€ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Π΅Π΅ / Π₯Π°Π±Ρ€

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

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

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

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

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


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

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

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

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

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

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

Но вСрнСмся ΠΊ XSS.

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


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

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

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

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

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

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


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

Если Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Ρ…ΠΎΡ‡Π΅Ρ‚, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ тСкст Ρ‚ΠΎΠ»ΡŒΠΊΠΎ выглядСл ΠΊΠ°ΠΊ ΠΊΠΎΠ΄, Π½ΠΎ Ρ‚Π°ΠΊΠΎΠ²Ρ‹ΠΌ Π½Π΅ являлся (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π½Π΅ обрабатывался Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ, Π° выводился ΠΊΠ°ΠΊ Π΅ΡΡ‚ΡŒ), этот тСкст Π½Π°Π΄ΠΎ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ ΠΎΡ‚Π΄Π°Ρ‚ΡŒ Π΅Π³ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ. Вакая ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° называСтся β€œΡΠΊΡ€Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌβ€.

Π’ процСссС экранирования тСкста Π² этом тСкстС всС спСц. символы Π·Π°ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ ΠΈΡ… β€œΠ°Π½Π°Π»ΠΎΠ³Π°ΠΌΠΈβ€, ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΡƒΠΆΠ΅ Π·Π½Π°Π΅Ρ‚ навСрняка, Ρ‡Ρ‚ΠΎ это просто тСкст. Π’Π°ΠΆΠ½Π΅Π΅ всСго ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ Ρ‚ΠΎΡ‚ тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ любой ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒΡΡ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ ΠΈ вмСстС с тСкстом ΠΏΡ€ΠΈΡΠ»Π°Ρ‚ΡŒ ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΊΠΎΠ΄. Π£Π²Ρ‹, ΠΈΠ½ΠΎΠ³Π΄Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ± экранировании Π² Ρ‚Π΅Ρ… ΠΈΠ»ΠΈ ΠΈΠ½Ρ‹Ρ… мСстах Π²Π΅Π±-прилоТСния, ΠΈ тСкст выводится Π±Π΅Π· всякой ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. ΠŸΡ€ΠΈΡ‡ΠΈΠ½ для этого ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько.

НапримСр, Π½Π΅ всСгда программист Π΄Π΅Ρ€ΠΆΠΈΡ‚ Π² ΡƒΠΌΠ΅ всС мСста, Π³Π΄Π΅ тСкст, Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π° страницу. Π‘ΠΎΠ»Π΅Π΅ Ρ‚ΠΎΠ³ΠΎ, ΠΈΠ½ΠΎΠ³Π΄Π° Ρ€Π°Π·Π½Ρ‹Π΅ части сайта ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² Ρ€Π°Π·Π½ΠΎΠ΅ врСмя ΠΈ/ΠΈΠ»ΠΈ Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ людьми. Π’ этом случаС Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ ошибки возрастаСт.

Π•Ρ‰Π΅ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ находится Π½Π΅ Π² ΠΊΠΎΠ΄Π΅ самого Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°, Π° Π² ΠΊΠΎΠ΄Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΎΠ½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это ΠΊΠ°ΠΊΠΈΠ΅-Ρ‚ΠΎ Π³ΠΎΡ‚ΠΎΠ²Ρ‹Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ для создания Π²Π΅Π±-сСрвисов. Π’ Ρ‚Π°ΠΊΠΎΠΌ случаС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°ΠΆΠ΅ Π½Π΅ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°Ρ‚ΡŒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΊ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Ρƒ этот Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊ, ΠΎΠ½ автоматичСски ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊ Π½Π΅ΠΌΡƒ ΠΆΠ΅ ΡƒΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²ΡƒΡŽ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ.

Π’Π°ΠΊΠΎΠΉ риск Π΅ΡΡ‚ΡŒ всСгда. ВсС ΠΆΠ΅ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ с нуля, Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π² нашС врСмя Π΄ΠΎΠ»Π³ΠΎ ΠΈ Π΄ΠΎΡ€ΠΎΠ³ΠΎ. Π”Π°Π»Π΅ΠΊΠΎ Π½Π΅ каТдая компания ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ сСбС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ Ρ‚Π°ΠΊΠΎΠ³ΠΎ уровня.

Π’ этом случаС вся Π½Π°Π΄Π΅ΠΆΠ΄Π° Π½Π° тСстировщиков.

Π§Π΅ΠΌ опасна XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ?


Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΅Ρ‰Π΅ Ρ€Π°Π·, Π±ΠΎΠ»Π΅Π΅ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎ, ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± опасности XSS-уязвимости. Π‘Π°ΠΌΠ° ΠΏΠΎ сСбС ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π½Π΅ являСтся опасной. Опасной ΠΎΠ½Π° становится Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Π΅Π΅ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ Π΅Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² своих цСлях. ИспользованиС уязвимости называСтся β€œΠ²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠΌ атаки”. Π’ случаС XSS Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π°Ρ‚Π°ΠΊΠΈ довольно ΠΌΠ½ΠΎΠ³ΠΎ.

Π‘Π°ΠΌΡ‹ΠΉ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ β€” ΠΊΡ€Π°ΠΆΠ° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… cookie ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π²Π΅Π±-прилоТСния. Π§Π°Ρ‰Π΅ всСго сайт, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ присутствуСт авторизация, ΠΎΡ‚Π»ΠΈΡ‡Π°Π΅Ρ‚ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΠΎ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ сСссионной cookie. Если Π΅Π΅ Π½Π΅Ρ‚, Ρ‚ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½. А Ссли ΠΎΠ½Π° Π΅ΡΡ‚ΡŒ, Ρ‚ΠΎ ΠΏΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡŽ этой cookie сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ.

ВсС cookie хранятся Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ. Если я Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΡŽΡΡŒ своим ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, я Π±ΡƒΠ΄Ρƒ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ своС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ cookie. А Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ‡ΡƒΠΆΠΎΠΉ просто Ρ‚Π°ΠΊ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π½Π΅ смогу.

Π’ΠΎ ΠΆΠ΅ касаСтся JavaScript-ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ выполняСтся Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π­Ρ‚ΠΎΡ‚ JavaScript-ΠΊΠΎΠ΄ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ cookie Ρ‚ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΎΠ½ исполняСтся ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΅Π³ΠΎ.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ допустим, Ρ‡Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ удастся Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ JavaScript-ΠΊΠΎΠ΄ Π½Π° страницу Π²Π΅Π±-прилоТСния. Π£ любого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π°ΠΉΠ΄Π΅Ρ‚ Π½Π° эту страницу, Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ JavaScript-ΠΊΠΎΠ΄. Он Π±ΡƒΠ΄Π΅Ρ‚ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ cookie этого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΡƒΠΆΠ΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹). ΠžΡΡ‚Π°Π»ΠΎΡΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ это Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ β€” ΠΈ Π΄Π΅Π»ΠΎ сдСлано. Но ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, вСдь врСдоносный ΠΊΠΎΠ΄ исполняСтся Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹?

ВсС довольно просто. Π­Ρ‚ΠΎΡ‚ ΠΆΠ΅ JavaScript-ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ AJAX-запрос Π½Π° ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ сСрвСр. НапримСр, Π½Π° Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ URL: www.zloy-site.ru/stolen={Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅_cookie_ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹}

Π”ΠΎΠΌΠ΅Π½ zloy-site ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈΡ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ ΠΈΠ· нашСго ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°. ВсС запросы, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ приходят Π½Π° этот Π΄ΠΎΠΌΠ΅Π½, Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ΡΡ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Π² Π½Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ URL, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΡƒΠ·Π½Π°Π΅Ρ‚ значСния cookie ΠΆΠ΅Ρ€Ρ‚Π² ΠΈ смоТСт ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ Π² ΠΈΡ… Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Ρ‹.

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

Π“Π΄Π΅ ΠΈΡΠΊΠ°Ρ‚ΡŒ XSS? Как с Π½Π΅ΠΉ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ? Π”Π΅ΠΌΠΎ-страница с ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ


Π’ ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ стоит ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π½Π° XSS-уязвимости Ρ‚Π΅ мСста Π½Π° сайтС, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρƒ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ Π½Π° ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚. Если ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² ΠΊΠ°ΠΊΠΎΠ΅-Ρ‚ΠΎ мСсто ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ тСкст, ΠΎΠ½ смоТСт ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΈ JavaScript-ΠΊΠΎΠ΄.

Π”Π°Π²Π°ΠΉΡ‚Π΅ это рассмотрим Π½Π° ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅. Π― ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΠ» ΠΎΡ‡Π΅Π½ΡŒ ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ пСсочницу, Π³Π΄Π΅ ΡΠΏΡ€ΡΡ‚Π°Π»Π°ΡΡŒ XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. ΠŸΡ€Π΅Π΄Π»Π°Π³Π°ΡŽ ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π΅ Π½Π°ΠΉΡ‚ΠΈ вмСстС.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ пСсочницу: https://playground.learnqa.ru/demo/xss

Для Π½Π°Ρ‡Π°Π»Π° посмотрим, ΠΊΠ°ΠΊ устроСна страница. Π­Ρ‚ΠΎ ΠΏΠΎ сути ΠΎΡ‡Π΅Π½ΡŒ простой ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΊΠ½ΠΈΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π΅ΡΡ‚ΡŒ поиск. Если ввСсти Π² запросС β€œΠ Π΅ΠΉ БрэдбСри” ΠΌΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ всС ΠΊΠ½ΠΈΠ³ΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΅ΡΡ‚ΡŒ Π² этом ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ этого Π°Π²Ρ‚ΠΎΡ€Π°.

Π’Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΡƒΠΆΠ΅ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ», Ρ‡Ρ‚ΠΎ тСкст, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΡ‹ Π²Π²ΠΎΠ΄ΠΈΠ»ΠΈ Π² ΠΏΠΎΠ»Π΅ поиска, Ρ‚ΡƒΡ‚ ΠΆΠ΅ оказался Π² URL. Нам этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π΅Ρ‰Π΅ пригодится.

А ΠΏΠΎΠΊΠ° Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊΡƒΡŽ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π΅Ρ€ΡƒΠ½Π΄Ρƒ Π² ΠΏΠΎΠ»Π΅ поиска: β€œfwefewf”.

ΠœΡ‹ ΡƒΠ²ΠΈΠ΄ΠΈΠΌ, Ρ‡Ρ‚ΠΎ Π² этом случаС Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π½Π° страницС Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ. А тСкст запроса повторился Π² тСкстС ошибки:

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

<script>alert(123)</script>

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

Оно ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠ·Π½Π°Ρ‡Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ наш JavaScript-ΠΊΠΎΠ΄ исполнился ΠΈ ΠΌΡ‹ нашли 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=<script>alert(123)</script>

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

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

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

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

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

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

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

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

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

ΠΊΠ°ΠΊΠΈΠΌΠΈ ΠΎΠ½ΠΈ Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΈ Ρ‡Π΅ΠΌ опасны Xss ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΈ

  • Π’Ρ‹ здСсь: Β 
  • Главная/
  • Вирусы

Π§Π΅Ρ€Π΅Π· XSS ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Π΅ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΡŽΡ‚ Π² страницы сайтов-ΠΆΠ΅Ρ€Ρ‚Π² Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠ΅ Π½Π° Π½ΠΈΡ… скрипты, выполняСмыС Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ посСщСния Π·Π°Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Ρ… рСсурсов. БущСствуСт нСсколько Π²ΠΈΠ΄ΠΎΠ² XSS-уязвимостСй, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½ΡƒΡŽ ΡΡ‚Π΅ΠΏΠ΅Π½ΡŒ опасности.

НаиболСС остороТно стоит ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΊ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΠΉ уязвимости. Когда Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ внСдряСт свой SQL-ΠΊΠΎΠ΄ Π² Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΡƒΡŽ Π±Π°Π·Ρƒ Π»ΠΈΠ±ΠΎ Ρ„Π°ΠΉΠ» Π½Π° сСрвСр, ΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΏΠΎΡΠ΅Ρ‚ΠΈΡ‚Π΅Π»ΡŒ Π·Π°Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ рСсурса. Π’Π°ΠΊΠΈΠ΅ мСста часто ΠΈΠ½Ρ‚Π΅Π³Ρ€ΠΈΡ€ΡƒΡŽΡ‚ΡΡ, поэтому Π΄Π°ΠΆΠ΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π½Π½Ρ‹Π΅ вашСй Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Π΅, хранящиСся Π² Π‘Π”, ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ.

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ пассивной XSS-уязвимости Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΈΠ·ΠΎΠ±Ρ€Π΅Ρ‚Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π›ΠΈΠ±ΠΎ вас Π·Π°ΠΌΠ°Π½ΠΈΠ²Π°ΡŽΡ‚ Π½Π° подставной рСсурс всСвозмоТными ссылками, Π»ΠΈΠ±ΠΎ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ Π»ΡŽΠ±Ρ‹ΠΌΠΈ способами ΠΏΠ΅Ρ€Π΅Π°Π΄Ρ€Π΅ΡΠΎΠ²Π°Ρ‚ΡŒ Π½Π° Ρ‚Ρ€Π΅Π±ΡƒΠ΅ΠΌΡ‹ΠΉ сайт. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ это происходит Ρ‡Π΅Ρ€Π΅Π· письма ΠΎΡ‚ Π²Ρ‹ΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎΠΉ администрации посСщаСмой Π²Π°ΠΌΠΈ страницы, с запросами ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ настроСк Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°. Π’Π°ΠΊΠΆΠ΅ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½Ρ‹Π΅ спам-рассылки ΠΈΠ»ΠΈ посты Π½Π° ΡˆΠΈΡ€ΠΎΠΊΠΎ посСщаСмых Ρ„ΠΎΡ€ΡƒΠΌΠ°Ρ….

Пассивная XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΡ‚ POST Ρ‚Π°ΠΊ ΠΈ ΠΎΡ‚ GET-ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ². Для ΠΏΠ΅Ρ€Π²Ρ‹Ρ… Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π΅Π½ ряд Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΡƒΡ…ΠΈΡ‰Ρ€Π΅Π½ΠΈΠΉ, для Π²Ρ‚ΠΎΡ€Ρ‹Ρ… – ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²ΠΊΠ° url-строки Π»ΠΈΠ±ΠΎ вставка Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ.

ΠŸΠΎΡ…ΠΈΡ‰Π΅Π½ΠΈΠ΅ Cookies

Π§Π°Ρ‰Π΅ всСго ΠΈΠΌΠ΅Π½Π½ΠΎ ваши Cookies становятся Ρ†Π΅Π»ΡŒΡŽ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΠΌΠΎΠΉ XSS Π°Ρ‚Π°ΠΊΠΈ. Иногда Π² Π½ΠΈΡ… остаСтся цСнная информация, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π°Ρ Π»ΠΎΠ³ΠΈΠ½Ρ‹ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π»ΠΈΠ±ΠΎ ΠΈΡ… Ρ…ΡΡˆ. Но достаточно опасны ΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΊΡ€Π°ΠΆ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… сСссий Π²Π°ΠΆΠ½Ρ‹Ρ… для вас сайтов, поэтому Π½Π΅ стоит Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ Π½Π°ΠΆΠΈΠΌΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«Π²Ρ‹Ρ…ΠΎΠ΄Β» Π΄Π°ΠΆΠ΅ ΠΏΡ€ΠΈ посСщСнии сайтов с домашнСго ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°. Π₯отя Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ рСсурсов для прСдотвращСния ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… дСйствий ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ автоматичСскоС ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈΠ΅ Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сСссии. Π”ΠΎΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΆΠ΅ ограничСния XMLHttpRequest ΠΎΡ‚ Ρ‚Π°ΠΊΠΈΡ… Π°Ρ‚Π°ΠΊ Π½Π΅ ΡΠΏΠ°ΡΠ°ΡŽΡ‚.

Π”Π°Π½Π½Ρ‹Π΅ ΠΈΠ· заполняСмых Ρ„ΠΎΡ€ΠΌ

ΠŸΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈ считываниС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² заполняСмых Ρ„ΠΎΡ€ΠΌΠ°Ρ…. Для этого Π½Π° Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… интСрСс страницах выполняСтся отслСТиваниС событий (onsubmit), Π° всС прСдоставляСмыС Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ Π½Π° сСрвСра Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ². Π’Π°ΠΊΠΈΠ΅ Π°Ρ‚Π°ΠΊΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ схоТи с Ρ„ΠΈΡˆΠΈΠ½Π³ΠΎΠ²Ρ‹ΠΌΠΈ, Π½ΠΎ ΠΊΡ€Π°ΠΆΠ° происходит Π½Π΅ Π½Π° поддСльном, Π° Π½Π° Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ сайтС с Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ Ρ€Π΅ΠΏΡƒΡ‚Π°Ρ†ΠΈΠ΅ΠΉ.

РаспрСдСлСнныС DDoS-Π°Ρ‚Π°ΠΊΠΈ

Для Π°Ρ‚Π°ΠΊ Ρ‡Π΅Ρ€Π΅Π· XSS ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΈ многопосСщаСмыС рСсурсы. Благодаря XSS-уязвимости выполняСтся пСрСадрСсация приходящих Π½Π° Π½ΠΈΡ… запросов Π½Π° Π²Π·Π»Π°ΠΌΡ‹Π²Π°Π΅ΠΌΡ‹ΠΉ сСрвСр, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ Π΅Π³ΠΎ Π·Π°Ρ‰ΠΈΡ‚Π° Π½Π΅ Π²Ρ‹Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚.

ΠŸΠΎΠ΄Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ мСТсайтовыС запросы (CSRF/XSRF)

Π£ Π½ΠΈΡ… Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠ°Π»ΠΎ ΠΎΠ±Ρ‰Π΅Π³ΠΎ с XSS. Π­Ρ‚ΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ Ρ€Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ уязвимостСй, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² сочСтании с XSS. Π˜Ρ… Ρ†Π΅Π»ΡŒΡŽ являСтся Π·Π°Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ с нСуязвимого сайта Π½Π° ΠΏΠΎΠ΄ΡΡ‚Π°Π²Π½ΡƒΡŽ ΡƒΡΠ·Π²ΠΈΠΌΡƒΡŽ страницу для провСдСния ΠΎΠ±ΠΌΠ°Π½Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ. НапримСр, ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰Π΅Π³ΠΎ ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ систСму ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ΅ΠΉ, Π²Ρ‹ΠΌΠ°Π½ΠΈΠ²Π°ΡŽΡ‚ Π½Π° уязвимый сайт, пСрСводящий дСньги Π½Π° счСта Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ². ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ ΠΏΠ»Π°Ρ‚Π΅ΠΆΠ½Ρ‹Ρ… систСм прСдусмотрСна Π·Π°Ρ‰ΠΈΡ‚Π° ΠΏΡƒΡ‚Π΅ΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ввСдСния пароля Π»ΠΈΠ±ΠΎ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ ΠΊΠΎΠ΄Π°.

Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ XSS-Ρ‡Π΅Ρ€Π²Π΅ΠΉ

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π±Π΅Π·ΠΎΠ±ΠΈΠ΄Π½Ρ‹Ρ… XSS

Π—Π°ΠΌΠ΅Ρ‚ΠΈΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ счСтчиков Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ Ρ€ΠΎΠ»ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… XSS. Π‘ Π½ΠΈΡ… вСдСтся ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΎ Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ посСтитСлях (ΠΈΡ… IP-адрСса, Π΄Π°Π½Π½Ρ‹Π΅ ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΌ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ).

Волько Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠ΄ интСгрируСтся Ρƒ вас Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΏΠΎ вашСй ΠΆΠ΅ Π²ΠΎΠ»Π΅. К Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ΠΌ XSS ΠΌΠΎΠΆΠ½ΠΎ смСло отнСсти Ρ†Π΅Π»Ρ‹ΠΉ ряд кроссдомСнных AJAX-запросов.

ΠŸΡ€ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ получСния Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ со сторонних сайтов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ простой Π°Ρ‚Π°ΠΊΠΈ — Cross Site Scripting Inclusion (XSSI).

Если Ρ‚Ρ‹ Ρ‡ΠΈΡ‚Π°Π΅ΡˆΡŒ Easy Hack систСматичСски, Ρ‚ΠΎ, Π½Π°Π²Π΅Ρ€Π½ΠΎΠ΅, ΡƒΠΆΠ΅ Ρ…ΠΎΡ€ΠΎΡˆΠΎ Π·Π½Π°ΠΊΠΎΠΌ с Same Origin Policy (SOP), ΠΌΡ‹ ΠΊ Π½Π΅ΠΌΡƒ часто возвращаСмся. Из-Π·Π° SOP Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ взаимодСйствия ΠΌΠ΅ΠΆΠ΄Ρƒ двумя «сайтами» ΠΎΡ‡Π΅Π½ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π°. Но Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π·Π°Π΄Π°Ρ‡Π° получСния ΠΈ ΠΎΠΏΡ€Π°Π²ΠΊΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° ΠΎΠ΄Π½ΠΎΠΌ сайтС с Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ часто, Ρ‚ΠΎ Π±Ρ‹Π»ΠΈ Π²Π½Π΅Π΄Ρ€Π΅Π½Ρ‹ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для «смягчСния» ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ ΠΈ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ взаимодСйствия. НапримСр, Ρ‚Π°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ CORS ΠΈΠ»ΠΈ crossdomain.xml. Один ΠΈΠ· Π±ΠΎΠ»Π΅Π΅ старых ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠ² — ΠΏΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΊΠ° JavaScript с Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ Π΄ΠΎΠΌΠ΅Π½Π° Ρ‡Π΅Ρ€Π΅Π· Ρ‚Π΅Π³

К ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ, Π΅ΡΡ‚ΡŒ хост Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ evil. ru ΠΈ сайт ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ — victim.com. На evil.ru ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» HTML ΠΈ ΡΠΎΡΠ»Π°Ρ‚ΡŒΡΡ Π½Π° любой скрипт Ρƒ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹:

ΠŸΡ€ΠΈ Π²Ρ…ΠΎΠ΄Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° сайт Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΈΡ‚ ΠΈ запустит JS с victim.com, Π½ΠΎ Π² контСкстС SOP evil.ru. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΠΈΠ· JS самого Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΡ‹ смоТСм ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ (Π½Π΅ всСм) JS с сСрвСра ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹.

НапримСр, содСрТимоС JS c cΠ°ΠΉΡ‚Π°-ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ (http://victim.com/any_script_.js):

Var a = «12345»;

Π’ΠΎΠ³Π΄Π° Π½Π° сайтС Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ:

ИдСя Ρ€Π°Π±ΠΎΡ‚Ρ‹ проста, ΠΊΠ°ΠΊ Π°Π»ΡŽΠΌΠΈΠ½ΠΈΠ΅Π²Ρ‹ΠΉ Ρ‡Π°ΠΉΠ½ΠΈΠΊ.

По сути, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ с Π΄Ρ€ΡƒΠ³ΠΈΡ… сайтов статичСский JS нСсСт Π² сСбС Π½Π΅ большС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ для сайта-ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, Ρ‡Π΅ΠΌ ΠΏΠΎΠ³Ρ€ΡƒΠ·ΠΊΠ° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° JS формируСтся динамичСски, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ JS-скрипта мСняСтся Π½Π° основании Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ· cookie Π² зависимости ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΊ Π½Π΅ΠΌΡƒ обращаСтся. НапримСр, Π² JS хранится какая-Ρ‚ΠΎ «критичная» информация: ΠΏΠ΅Ρ€ΡΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ свСдСния (email, имя ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° сайтС-ΠΆΠ΅Ρ€Ρ‚Π²Π΅) ΠΈΠ»ΠΈ тСхничСская ΠΈΠ½Ρ„Π° (Π°Π½Ρ‚ΠΈ CSRF-Ρ‚ΠΎΠΊΠ΅Π½Ρ‹).

Но, ΠΊΠ°ΠΊ ΠΌΡ‹ Π·Π½Π°Π΅ΠΌ, ΠΏΡ€ΠΈ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠ·ΠΊΠ΅ скрипта Ρ‡Π΅Ρ€Π΅Π· Ρ‚Π΅Π³

Π§Ρ‚ΠΎ ΠΆΠ΅ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠ·Π½Π°Ρ‚ΡŒ? Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ. К соТалСнию, доступа ΠΊ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌ/функциям Π½Π°ΠΌ Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ (хотя, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ Π½Π°ΠΉΠ΄Π΅Ρ‚ способ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ это).

Function test(){
return «private data frm function»;
}

Вакая Π°Ρ‚Π°ΠΊΠ° выглядит Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠΉ, Π½ΠΎ каТСтся, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° слишком проста ΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ распространСнной. Π­Ρ‚ΠΈΠΌ ΠΈ интСрСсна прСзСнтация Π½Π° Black Hat. Π˜ΡΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΡ€ΠΎΠ°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ 150 популярных сайтов ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ»ΠΈ, Ρ‡Ρ‚ΠΎ Π² Ρ‚ΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΌΠ΅Ρ€Π΅ уязвима Ρ‚Ρ€Π΅Ρ‚ΡŒ ΠΈΠ· Π½ΠΈΡ…. Вакая статистика заставляСт Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Ρ‡ΡƒΡ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ ΠΏΡ€ΠΈΡΡ‚Π°Π»ΡŒΠ½ΠΎ.

Π‘Ρ‹Π»Π° выявлСна ΠΈ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° Π·Π°ΠΊΠΎΠ½ΠΎΠΌΠ΅Ρ€Π½ΠΎΡΡ‚ΡŒ. Content Security Policy становится всС Π±ΠΎΠ»Π΅Π΅ распространСнной. Как Ρ‚Ρ‹ знаСшь, с Π½Π΅ΠΉ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, с ΠΊΠ°ΠΊΠΈΡ… Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ΅Π½ Ρ‚ΠΎΡ‚ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ рСсурс. НапримСр, ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒ JS Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с Ρ‚ΠΎΠ³ΠΎ ΠΆΠ΅ рСсурса. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π»ΡƒΡ‡ΡˆΠΈΠ΅ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ настройки CSP ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ Π·Π°ΠΏΡ€Π΅Ρ‚ Π½Π° запуск inline JS (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ находится прямо Π² HTML, Π° Π½Π΅ ΠΏΠΎΠ΄Π³Ρ€ΡƒΠΆΠ΅Π½ ΠΈΠ· JS-Ρ„Π°ΠΉΠ»Π°).

Однако пСрСнос inline Π² Ρ„Π°ΠΉΠ»Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сдСлан с костылями ΠΈ Π½Π° ΡΠΊΠΎΡ€ΡƒΡŽ Ρ€ΡƒΠΊΡƒ — Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ посрСдством динамичСски Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… скриптов. Π’Π°ΠΊ ΠΊΠ°ΠΊ CSP Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ влияСт Π½Π° XSSI, ΠΌΡ‹ ΠΎΠΏΡΡ‚ΡŒ-Ρ‚Π°ΠΊΠΈ ΠΌΠΎΠΆΠ΅ΠΌ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ наши Π°Ρ‚Π°ΠΊΠΈ. Π’ΠΎΡ‚ такая Π²ΠΎΡ‚ bad practice.

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

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ XSS, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ нацСливаСтся нСпосрСдствСнно Π½Π° ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ. ВмСсто этого ΠΎΠ½ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ Π²Π΅Π±-сайта ΠΈΠ»ΠΈ Π²Π΅Π±-прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ посСтит ΠΆΠ΅Ρ€Ρ‚Π²Π°, ΠΏΠΎ сущСству ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ уязвимый Π²Π΅Π±-сайт Π² качСствС срСдства доставки врСдоносного сцСнария Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹.

Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ XSS ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован Π² VBScript, ActiveX ΠΈ Flash (хотя послСдний Π² настоящСС врСмя считаСтся ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌ), бСсспорно, ΠΈΠΌ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ Π·Π»ΠΎΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π»ΡΡŽΡ‚ Π² JavaScript – Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ JavaScript ΠΈΠΌΠ΅Π΅Ρ‚ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° сайтов.

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

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ врСдоносный ΠΊΠΎΠ΄ JavaScript Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ сначала Π½Π°ΠΉΡ‚ΠΈ способ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π½Π° Π²Π΅Π±-страницу, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ посСщаСт ΠΆΠ΅Ρ€Ρ‚Π²Π°. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΠΎΡΠ΅Ρ‚ΠΈΡ‚ΡŒ ΡƒΡΠ·Π²ΠΈΠΌΡƒΡŽ страницу с Π²Π²Π΅Π΄Π΅Π½Π½ΠΎΠΉ ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ JavaScript.

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

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ псСвдо-ΠΊΠΎΠ΄ Π½Π° сторонС сСрвСра ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для отобраТСния послСднСго коммСнтария Π½Π° Π²Π΅Π±-страницС.

Print «»
print «

»
print database.latestComment
print «»
ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅ скрипт просто распСчатываСт послСдний ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΈ ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ содСрТимоС Π½Π° HTML-страницС, прСдполагая, Ρ‡Ρ‚ΠΎ распСчатанный ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ состоит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΈΠ· тСкста.

Π’Ρ‹ΡˆΠ΅ΡƒΠΏΠΎΠΌΡΠ½ΡƒΡ‚Ρ‹ΠΉ ΠΊΠΎΠ΄ страницы уязвим ΠΊ xss, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π²Ρ€Π΅Π΄ΠΎΠ½ΠΎΡΠ½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

.
ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ, ΠΏΠΎΡΠ΅Ρ‰Π°ΡŽΡ‰ΠΈΠ΅ Π²Π΅Π±-страницу, ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ HTML-страницу.

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

Π’Π°ΠΆΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: -xss-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ссли полСзная Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° (врСдоносный скрипт), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ вставляСт, Π² ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎΠΌ счСтС обрабатываСтся (ΠΊΠ°ΠΊ HTML Π² Π΄Π°Π½Π½ΠΎΠΌ случаС) Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹

Π§Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ с JavaScript?

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

Однако, учитывая, Ρ‡Ρ‚ΠΎ JavaScript ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ, Π»Π΅Π³Ρ‡Π΅ ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ творчСскиС Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ с JavaScript.

ВрСдоносный JavaScript ΠΈΠΌΠ΅Π΅Ρ‚ доступ ΠΊΠΎ всСм Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈ ΠΎΡΡ‚Π°Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ Π²Π΅Π±-страницы, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ доступ ΠΊ cookies. Π€Π°ΠΉΠ»Ρ‹ cookie часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для хранСния ΠΌΠ°Ρ€ΠΊΠ΅Ρ€ΠΎΠ² сСансов, Ссли Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ„Π°ΠΉΠ» cookie сСанса ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ»ΠΈΡ†Π΅Ρ‚Π²ΠΎΡ€ΡΡ‚ΡŒ этого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

JavaScript ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XMLHttpRequest для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ http-запросов с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ содСрТаниСм Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… направлСниях.

JavaScript Π² соврСмСнных Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ API HTML5, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ доступ ΠΊ Π³Π΅ΠΎΠ»ΠΎΠΊΠ°Ρ†ΠΈΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Π²Π΅Π±-ΠΊΠ°ΠΌΠ΅Ρ€Π°, ΠΌΠΈΠΊΡ€ΠΎΡ„ΠΎΠ½ ΠΈ Π΄Π°ΠΆΠ΅ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π’ Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠ· этих API Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ участия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, XSS Π² сочСтании с Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΡƒΠΌΠ½ΠΎΠΉ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΠ΅ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ принСсти Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΈΠ΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹.

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

Π Π°Π·Π²Π΅ мСТсайтовыС скрипты Π½Π΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ?

НСт. Если Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π»ΠΎΡƒΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚ΡŒ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ XSS Π½Π° Π²Π΅Π±-страницС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ JavaScript Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ посСтитСля, Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ этого Π²Π΅Π±-сайта ΠΈΠ»ΠΈ Π²Π΅Π± — прилоТСния ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π±Ρ‹Π»Π° скомпромСтирована-xss Π½Π΅ являСтся ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠ°ΠΊ ΠΈ любая другая Π£ΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ бСзопасности, Ссли ΠΎΠ½Π° Π·Π°Ρ‚Ρ€Π°Π³ΠΈΠ²Π°Π΅Ρ‚ Π²Π°ΡˆΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, это повлияСт Π½Π° вас.

Анатомия мСТсайтовой скриптовой Π°Ρ‚Π°ΠΊΠΈ

Для Xss-Π°Ρ‚Π°ΠΊΠΈ Π½ΡƒΠΆΠ½Ρ‹ Ρ‚Ρ€ΠΈ участника: сайт, ΠΆΠ΅Ρ€Ρ‚Π²Π° ΠΈ Π½Π°ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΠΉ. Π’ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ Π½ΠΈΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ прСдполагаСтся, Ρ‡Ρ‚ΠΎ Ρ†Π΅Π»ΡŒΡŽ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° являСтся Π²Ρ‹Π΄Π°Ρ‡Π° сСбя Π·Π° ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ ΠΏΡƒΡ‚Π΅ΠΌ ΠΊΡ€Π°ΠΆΠΈ ΠΊΡƒΠΊΠΈ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹. ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Ρ„Π°ΠΉΠ»ΠΎΠ² cookie Π½Π° сСрвСр Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ осущСствлСна Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ способами, ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… являСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠ΄Π° JavaScript Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ уязвимости XSS.

На рисункС Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ пошаговоС руководство ΠΏΠΎ простой Π°Ρ‚Π°ΠΊΠ΅ XSS.

  • Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π²Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π΅Π±-сайта, отправляя ΡƒΡΠ·Π²ΠΈΠΌΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ врСдоносного ΠΊΠΎΠ΄Π° JavaScript
  • Π–Π΅Ρ€Ρ‚Π²Π° Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Π²Π΅Π±-страницу с Π²Π΅Π±-сайта
  • Π’Π΅Π±-сайт слуТит Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρƒ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ страница с ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΎΠΉ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ Ρ‚Π΅Π»Π° HTML.
  • Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ врСдоносный скрипт Π²Π½ΡƒΡ‚Ρ€ΠΈ Ρ‚Π΅Π»Π° HTML. Π’ этом случаС ΠΎΠ½ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ ΠΊΡƒΠΊΠΈ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ Π½Π° сСрвСр Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ просто ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Ρ„Π°ΠΉΠ» cookie ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, ΠΊΠΎΠ³Π΄Π° HTTP-запрос поступаСт Π½Π° сСрвСр, послС Ρ‡Π΅Π³ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΊΡ€Π°Π΄Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» cookie ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹.

НСкоторыС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ скриптов мСТсайтовой Π°Ρ‚Π°ΠΊΠΈ

НиТС ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ нСбольшой список сцСнариСв Π°Ρ‚Π°ΠΊΠΈ XSS, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΡ бСзопасности Π²Π΅Π±-сайта ΠΈΠ»ΠΈ Π²Π΅Π±-прилоТСния.

Π­Ρ‚ΠΎΡ‚

Ρ‚Π΅Π³

ΠŸΡ€ΠΈ xss ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ доставлСна Π²Π½ΡƒΡ‚Ρ€ΡŒ

Ρ‚Π΅Π³Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ onload Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π° ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π±ΠΎΠ»Π΅Π΅ Ρ‚Π΅ΠΌΠ½Ρ‹ΠΌ Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ΠΎΠΌ, Ρ‚Π°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ background.

Ρ‚Π΅Π³
НСкоторыС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ JavaScript, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ находится Π² .

Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ…, Ссли этот type Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Ρ‚Π΅Π³Π° ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ image, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для размСщСния скрипта.

Ρ‚Π΅Π³

Π’ Ρ‚Π΅Π³Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ссылки Π½Π° внСшниС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ стилСй, ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ скрипт.

Ρ‚Π΅Π³

Π’ackground Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ table ΠΈ td Ρ‚Π΅Π³ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использован для обозначСния скрипт вмСсто изобраТСния.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ мСТсайтовый скриптинг? Π’ΠΈΠΏΡ‹ XSS, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π°

  • Π”ΠΎΠΌ
  • ΠΠ°ΠΏΡ€Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅
  • Атаки с использованиСм мСТсайтового скриптинга (XSS)

Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅

Π’ наши Π΄Π½ΠΈ Π³ΠΎΡ€Π°Π·Π΄ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π΅Π΅ Π΄ΡƒΠΌΠ°Ρ‚ΡŒ ΠΎ Π²Π΅Π±-сайтах ΠΊΠ°ΠΊ ΠΎ ΠΎΠ½Π»Π°ΠΉΠ½-прилоТСниях, Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ… ряд Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, Π° Π½Π΅ ΠΊΠ°ΠΊ ΠΎ старых статичСских страницах. Π‘ΠΎΠ»ΡŒΡˆΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ этой Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ связана с ΡˆΠΈΡ€ΠΎΠΊΠΈΠΌ использованиСм языка программирования JavaScript. Π₯отя JavaScript позволяСт Π²Π΅Π±-сайтам Π΄Π΅Π»Π°Ρ‚ΡŒ довольно интСрСсныС Π²Π΅Ρ‰ΠΈ, ΠΎΠ½ Ρ‚Π°ΠΊΠΆΠ΅ прСдставляСт Π½ΠΎΠ²Ρ‹Π΅ ΠΈ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹Π΅ уязвимости β€” мСТсайтовый скриптинг (XSS) являСтся ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· самых ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… ΡƒΠ³Ρ€ΠΎΠ·.

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠ°Π½ΠΈΠ΅

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ мСТсайтовый скриптинг (XSS)?

Как Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π°Ρ‚Π°ΠΊΠΈ мСТсайтового скриптинга (XSS)?

КакиС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΈΠΏΡ‹ Π°Ρ‚Π°ΠΊ с использованиСм мСТсайтовых сцСнариСв (XSS)?

1 Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½Π½Ρ‹ΠΉ (постоянный) мСТсайтовый скриптинг

2 ΠžΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΉ мСТсайтовый скриптинг

3 Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ мСТсайтовый скриптинг

4 Π‘Π»Π΅ΠΏΠΎΠΉ мСТсайтовый скриптинг

5 ΠŸΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ мСТсайтового0 скриптинга Π½Π° основС DOM 10 90 Атаки с использованиСм мСТсайтовых сцСнариСв?

1 ЗначСния Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ списка

2 Π˜Π·Π±Π΅Π³Π°ΠΉΡ‚Π΅ ΠΈ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ HTML Π½Π° Π²Ρ…ΠΎΠ΄Π°Ρ…

3 ЗначСния дСзинтСзирования

4 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„Π»Π°Π³ΠΈ Httponly Π½Π° ΠΏΠ΅Ρ‡Π΅Π½ΡŒΠ΅

5 Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ WAF для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ XSS

послС HACK ACTION

1 LOCAT 2 Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΈ бэкдоров

3 Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ уязвимости

4 ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ свои ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅

5 НастройтС WAF

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ мСТсайтовый скриптинг (XSS)?

ΠœΠ΅ΠΆΡΠ°ΠΉΡ‚ΠΎΠ²Ρ‹ΠΉ скриптинг, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ XSS, Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° Ρ…Π°ΠΊΠ΅Ρ€Ρ‹ Π·Π°ΠΏΡƒΡΠΊΠ°ΡŽΡ‚ врСдоносный ΠΊΠΎΠ΄ JavaScript Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ выполнСния ΠΊΠΎΠ΄Π° (RCE), ΠΊΠΎΠ΄ запускаСтся Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. ПослС ΠΏΠ΅Ρ€Π²ΠΎΠ½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΈ сайт ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π΅ ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ контролируСтся Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ. ВмСсто этого Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ прикрСпляСт свой врСдоносный ΠΊΠΎΠ΄ ΠΊ Π·Π°ΠΊΠΎΠ½Π½ΠΎΠΌΡƒ Π²Π΅Π±-сайту, фактичСски обманывая Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹, заставляя ΠΈΡ… Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ своС врСдоносноС ПО всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° сайт загруТаСтся.

ИспользованиС JavaScript Π² мСТсайтовых сцСнариях

JavaScript β€” это язык программирования, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСтся Π½Π° Π²Π΅Π±-страницах Π² вашСм Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅. Π­Ρ‚ΠΎΡ‚ клиСнтский ΠΊΠΎΠ΄ добавляСт Π²Π΅Π±-страницС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π²ΠΎ всСх основных прилоТСниях ΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… CMS.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ сСрвСрных языков, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ PHP, ΠΊΠΎΠ΄ JavaScript Π²Π½ΡƒΡ‚Ρ€ΠΈ вашСго Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ²Π»ΠΈΡΡ‚ΡŒ Π½Π° Π²Π΅Π±-сайт для Π΄Ρ€ΡƒΠ³ΠΈΡ… посСтитСлСй. Он привязан ΠΊ Π²Π°ΡˆΠ΅ΠΌΡƒ собствСнному Π½Π°Π²ΠΈΠ³Π°Ρ‚ΠΎΡ€Ρƒ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ дСйствия Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠΊΠ½Π΅ вашСго Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.

Π₯отя JavaScript являСтся клиСнтской стороной ΠΈ Π½Π΅ запускаСтся Π½Π° сСрвСрС, Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для взаимодСйствия с сСрвСром ΠΏΡƒΡ‚Π΅ΠΌ выполнСния Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… запросов. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эти Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Π΅ запросы для добавлСния Π½Π΅ΠΆΠ΅Π»Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ спам-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° Π½Π° Π²Π΅Π±-страницу Π±Π΅Π· Π΅Π΅ обновлСния, сбора Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΈ ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ выполнСния дСйствий асинхронно.

Как Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π°Ρ‚Π°ΠΊΠΈ с использованиСм мСТсайтовых сцСнариСв?

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

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

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

КакиС ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚ΠΈΠΏΡ‹ Π°Ρ‚Π°ΠΊ с использованиСм мСТсайтовых сцСнариСв?

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ рассмотрСли основы, Π΄Π°Π²Π°ΠΉΡ‚Π΅ углубимся. Π’ зависимости ΠΎΡ‚ своих Ρ†Π΅Π»Π΅ΠΉ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ мСТсайтовыС сцСнарии Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ способами. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнных Ρ‚ΠΈΠΏΠΎΠ² Π°Ρ‚Π°ΠΊ.

Атаки с использованиСм Ρ…Ρ€Π°Π½ΠΈΠΌΡ‹Ρ… мСТсайтовых сцСнариСв происходят, ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ свою ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π½Π° скомпромСтированном сСрвСрС, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ Π²Π΅Π±-сайт доставляСт врСдоносный ΠΊΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΈΠΌ посСтитСлям.

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ этот ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹Ρ… дСйствий ΠΈ впослСдствии ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΈΡ… посСтитСлСй, это Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ опасный ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ Ρ‚ΠΈΠΏ мСТсайтового скриптинга.

ΠžΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΉ (нСпостоянный) мСТсайтовый скриптинг

Атаки с использованиСм ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Ρ… мСТсайтовых сцСнариСв происходят, ΠΊΠΎΠ³Π΄Π° полСзная Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠ° сохраняСтся Π² Π΄Π°Π½Π½Ρ‹Ρ…, отправляСмых ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π½Π° сСрвСр. Π­Ρ‚ΠΈ Π°Ρ‚Π°ΠΊΠΈ популярны Π² ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ°Ρ… Ρ„ΠΈΡˆΠΈΠ½Π³Π° ΠΈ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ΠΈΠΈ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ уязвимыС Π²Π΅Π±-сайты ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌ бСсконСчный Π½Π°Π±ΠΎΡ€ Π²Π΅Π±-сайтов, выглядящих ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠ½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для Π°Ρ‚Π°ΠΊ.

Π’ΠΈΠΏΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ мСТсайтового скриптинга являСтся Ρ„ΠΎΡ€ΠΌΠ° поиска, Π³Π΄Π΅ посСтитСли ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ свой поисковый запрос Π½Π° сСрвСр, ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½ΠΈ видят Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚.

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

Β 

Π‘Π°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ мСТсайтовый скриптинг Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ, которая Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΎΡ‡Π΅Π½ΡŒ спСцифичСского контСкста ΠΈ Ρ€ΡƒΡ‡Π½Ρ‹Ρ… ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ЕдинствСнный, ΠΊΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠΉ, β€” это Π²Ρ‹ сами.

Π­Ρ‚ΠΈ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Π΅ измСнСния ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ Π² сСбя Ρ‚Π°ΠΊΠΈΠ΅ Π²Π΅Ρ‰ΠΈ, ΠΊΠ°ΠΊ значСния Ρ„Π°ΠΉΠ»ΠΎΠ² cookie ΠΈΠ»ΠΈ установку вашСй собствСнной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ мСТсайтового скриптинга являСтся запуск Π½Π΅ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСй ΠΈΠ»ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½-ΠΈΠ³Ρ€Π°Ρ…, Π³Π΄Π΅ Π·Π° запуск ΠΊΠΎΠ΄Π° прСдлагаСтся Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΎΠ·Π½Π°Π³Ρ€Π°ΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ информация.

Π‘Π»Π΅ΠΏΡ‹Π΅ Π°Ρ‚Π°ΠΊΠΈ с использованиСм мСТсайтовых сцСнариСв происходят, ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π°Ρ‚Π°ΠΊΠΈ. Π’ этих Π°Ρ‚Π°ΠΊΠ°Ρ… ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ находится Π½Π° страницС, доступ ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΈΠΌΠ΅ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ.

Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ большСй ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ для ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠ³ΠΎ провСдСния Π°Ρ‚Π°ΠΊΠΈ; Π² случаС сбоя ΠΏΠΎΠ»Π΅Π·Π½ΠΎΠΉ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ²Π΅Π΄ΠΎΠΌΠ»Π΅Π½.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ²Ρ‹ΡΠΈΡ‚ΡŒ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ успСха этих Π°Ρ‚Π°ΠΊ, Ρ…Π°ΠΊΠ΅Ρ€Ρ‹ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΠΎΠ»ΠΈΠ³Π»ΠΎΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… сцСнариях, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚Π΅, Π² Π²ΠΈΠ΄Π΅ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ тСкста ΠΈΠ»ΠΈ Π² Ρ‚Π΅Π³Π΅ скрипта.

Атаки с использованиСм мСТсайтовых сцСнариСв Π½Π° основС DOM происходят, ΠΊΠΎΠ³Π΄Π° Π½Π΅ сам сСрвСр уязвим для XSS, Π° JavaScript Π½Π° страницС.

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ Π°Ρ‚Π°ΠΊΠΈ мСТсайтового скриптинга Π½Π° основС DOM ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ, ΠΊΠΎΠ³Π΄Π° Π²Π΅Π±-сайт мСняСт Π²Ρ‹Π±ΠΎΡ€ языка с языка ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π½Π° язык, ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Π² URL-адрСсС

.

Π—Π½Π°Π΅Ρ‚Π΅ Π»ΠΈ Π²Ρ‹?

Брандмауэр Sucuri ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ ΡƒΡΡ‚Ρ€Π°Π½ΠΈΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ Π½Π° ваш Π²Π΅Π±-сайт.

Как ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ с использованиСм мСТсайтовых сцСнариСв?

Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ для использования уязвимостСй Π²Π΅Π±-сайтов. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π½Π΅ сущСствуСт Π΅Π΄ΠΈΠ½ΠΎΠΉ стратСгии сниТСния риска Π°Ρ‚Π°ΠΊΠΈ с использованиСм мСТсайтовых сцСнариСв.

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

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒ свой Π²Π΅Π±-сайт, ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π²Π°ΠΌ ΡƒΡΠΈΠ»ΠΈΡ‚ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρƒ Π²Π°ΡˆΠΈΡ… Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π·Π°Ρ‰ΠΈΡ‚Π½Ρ‹Ρ… ΠΌΠ΅Ρ€.

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

Π₯отя HTML ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½Π½ΠΎΠ³ΠΎ содСрТимого, Π΅Π³ΠΎ слСдуСт ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ Π΄ΠΎΠ²Π΅Ρ€Π΅Π½Π½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ. Если Π²Ρ‹ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π΅Ρ‚Π΅ ΡΡ‚ΠΈΠ»ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, Π²Π°ΠΌ слСдуСт Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ использования Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹Ρ… способов создания ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Markdown.

НаконСц, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ HTML, ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ очиститС Π΅Π³ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ Π΄Π΅Π·ΠΈΠ½Ρ„ΠΈΡ†ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ срСдства, Ρ‚Π°ΠΊΠΎΠ³ΠΎ ΠΊΠ°ΠΊ DOMPurify , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ вСсь нСбСзопасный ΠΊΠΎΠ΄.

Когда Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ Π½Π° страницС, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‡Ρ‚ΠΎ это Π½Π΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ HTML-ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Ρƒ, Π·Π°ΠΌΠ΅Π½ΠΈΠ² нСбСзопасныС символы ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°ΠΌΠΈ. Бущности выглядят Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ символы, Π½ΠΎ ΠΈΡ… нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для создания HTML.

Π€Π°ΠΉΠ»Ρ‹ cookie сСанса β€” это ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ позволяСт Π²Π΅Π±-сайту Ρ€Π°ΡΠΏΠΎΠ·Π½Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρƒ запросами, ΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ часто ΠΊΡ€Π°Π΄ΡƒΡ‚ сСансы администрирования, удаляя Ρ„Π°ΠΉΠ»Ρ‹ cookie. ПослС ΠΊΡ€Π°ΠΆΠΈ Ρ„Π°ΠΉΠ»Π° cookie Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠΉΡ‚ΠΈ Π² свою ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись Π±Π΅Π· ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ доступа.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ„Π°ΠΉΠ»Ρ‹ cookie HttpOnly, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΏΡ€Π΅Ρ‚ΠΈΡ‚ΡŒ JavaScript ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ содСрТимоС Ρ„Π°ΠΉΠ»Π° cookie, Ρ‡Ρ‚ΠΎ затрудняСт ΠΊΡ€Π°ΠΆΡƒ сСанса Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠΌ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»Π° cookie Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°ΠΌΠΈ. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΏΠΎ-ΠΏΡ€Π΅ΠΆΠ½Π΅ΠΌΡƒ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΉ сСанс Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ запросов, дСйствуя ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ-администратора. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ»Π΅Π·Π΅Π½ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ использовании Ρ„Π°ΠΉΠ»ΠΎΠ² cookie Π² качСствС основного ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ WAF для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ с использованиСм мСТсайтовых сцСнариСв

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ брандмауэр для Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ устранСния Π°Ρ‚Π°ΠΊ Π½Π° ваш Π²Π΅Π±-сайт. Π­Ρ‚ΠΎΡ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Π°ΠΊΠΈΠ΅ Π°Ρ‚Π°ΠΊΠΈ, ΠΊΠ°ΠΊ XSS, RCE ΠΈΠ»ΠΈ SQLi, Π΅Ρ‰Π΅ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ врСдоносныС запросы достигнут вашСго Π²Π΅Π±-сайта. Он Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ прСимущСство Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΠΊΡ€ΡƒΠΏΠ½ΠΎΠΌΠ°ΡΡˆΡ‚Π°Π±Π½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ DDOS.

НуТна ΠΏΠΎΠΌΠΎΡ‰ΡŒ Π² Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ²?

Наш брандмауэр ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ для Π²Π΅Π±-сайтов (WAF) останавливаСт Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΎΠ², ускоряСт врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ вашСго Π²Π΅Π±-сайта.

ДСйствия послС Π²Π·Π»ΠΎΠΌΠ°

Π’ случаС мСТсайтового скриптинга сущСствуСт ряд шагов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€Π΅Π΄ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ свой Π²Π΅Π±-сайт.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ шагом Π² восстановлСнии послС мСТсайтового скриптинга являСтся ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ мСста располоТСния уязвимости. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚ΡŒΡΡ ΠΊ Π½Π°ΡˆΠ΅ΠΌΡƒ полСзному руководству ΠΏΠΎ Π²Π·Π»ΠΎΠΌΡƒ Π²Π΅Π±-сайта , Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ·Π½Π°Ρ‚ΡŒ, ΠΊΠ°ΠΊ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ.

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ мСстонахоТдСнии врСдоносного ПО, ΡƒΠ΄Π°Π»ΠΈΡ‚Π΅ всС врСдоносноС содСрТимоС ΠΈΠ»ΠΈ Π½Π΅Π²Π΅Ρ€Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· своСй Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ восстановитС Π΅Π΅ Π΄ΠΎ чистого состояния. Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΎΡΡ‚Π°Π»ΡŒΠ½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ вашСго Π²Π΅Π±-сайта ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ бэкдоров.

Π₯Π°ΠΊΠ΅Ρ€Ρ‹ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ уязвимости Π² Π±Π°Π·Π°Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, прилоТСниях ΠΈ сторонних ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ…. Как Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΠ»ΠΈ уязвимоС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ΅ обСспСчСниС, ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚Π΅ исправлСния ΠΈ обновлСния ΠΊ уязвимому ΠΊΠΎΠ΄Ρƒ вмСстС с Π»ΡŽΠ±Ρ‹ΠΌΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΠΈΠΌΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ.

ΠžΠ±Π½ΠΎΠ²ΠΈΡ‚Π΅ свои ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅

ΠŸΡ€ΠΈ ΠΊΠΎΠΌΠΏΡ€ΠΎΠΌΠ΅Ρ‚Π°Ρ†ΠΈΠΈ Π²Π°ΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ всС ваши ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΈ сСкрСты ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ устранСна. ΠŸΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚Π΅ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ Π·Π°Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, очистив свои Π΄Π°Π½Π½Ρ‹Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅Ρ‚ ΠΌΠΎΡˆΠ΅Π½Π½ΠΈΡ‡Π΅ΡΠΊΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ-администраторов ΠΈΠ»ΠΈ бэкдоров.

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

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

Наша ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ Π³Ρ€ΡƒΠΏΠΏΠ° рСагирования Π½Π° ΠΈΠ½Ρ†ΠΈΠ΄Π΅Π½Ρ‚Ρ‹ ΠΈ брандмауэр Π²Π΅Π±-сайта ΠΌΠΎΠ³ΡƒΡ‚ бСзопасно ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ врСдоносный ΠΊΠΎΠ΄ ΠΈΠ· Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм ΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… вашСго Π²Π΅Π±-сайта, ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ восстановив Π΅Π³ΠΎ Π΄ΠΎ исходного состояния.

Π“ΠΎΡ‚ΠΎΠ²Ρ‹ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ WAF?

Π‘ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° рСсурсов Sucuri

РасскаТитС ΠΎ Π½ΠΎΠ²Ρ‹Ρ… ΡƒΠ³Ρ€ΠΎΠ·Π°Ρ… бСзопасности Π²Π΅Π±-сайтов с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π½Π°ΡˆΠΈΡ… ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Ρ… руководств, элСктронной ΠΏΠΎΡ‡Ρ‚Ρ‹, курсов ΠΈ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠ² Π±Π»ΠΎΠ³Π°.

Π’Π΅Π±-сСминар

Π£Π·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ Π²Ρ‹ΡΠ²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Ссли Π²Ρ‹ ΠΏΠΎΠ΄ΠΎΠ·Ρ€Π΅Π²Π°Π΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ваш сайт WordPress Π±Ρ‹Π» Π²Π·Π»ΠΎΠΌΠ°Π½.

Π­Π»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½Ρ‹ΠΉ курс

ΠŸΡ€ΠΈΡΠΎΠ΅Π΄ΠΈΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΊ нашСй сСрии элСктронных писСм, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΡ‹ ΠΏΡ€Π΅Π΄Π»Π°Π³Π°Π΅ΠΌ практичСскиС шаги ΠΈ основныС ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ обСспСчСния бСзопасности для Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π΅Π² сайтов WordPress.

ΠžΡ‚Ρ‡Π΅Ρ‚

По нашим Π΄Π°Π½Π½Ρ‹ΠΌ, трСмя Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто Π·Π°Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΌΠΈ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°ΠΌΠΈ CMS Π±Ρ‹Π»ΠΈ WordPress, Joomla! ΠΈ ΠœΠ°Π΄ΠΆΠ΅Π½Ρ‚ΠΎ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ мСТсайтовый скриптинг (XSS)? Π’ΠΈΠΏΡ‹ XSS, ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ ΠΏΠΎ установкС исправлСний

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ мСТсайтовый скриптинг (XSS)

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

Π­Ρ‚Π° Π°Ρ‚Π°ΠΊΠ° ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π½Π°Ρ†Π΅Π»Π΅Π½Π° Π½Π° Π²Π΅Π±-прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚ ΠΈΠ»ΠΈ Π²Π²ΠΎΠ΄, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ доски объявлСний, Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΈΠ»ΠΈ ΠΎΠΊΠ½Π° поиска.

Доступно спонсорство

Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ врСдоносный ΠΊΠΎΠ΄, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π² Π²ΠΈΠ΄Π΅ сцСнария, Π½Π° Π²Π΅Π±-страницу, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ запускаСтся Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΡ‚ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ

  • ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Ρ‚Π°ΠΊΡƒΡŽ ​​как ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для Π²Ρ…ΠΎΠ΄Π° Π² систСму, Ρ„Π°ΠΉΠ»Ρ‹ cookie ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ сСанса
  • Π’Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… врСдоносных дСйствий, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° Ρ„ΠΈΡˆΠΈΠ½Π³ΠΎΠ²Ρ‹ΠΉ сайт

БущСствуСт нСсколько XSS-Π°Ρ‚Π°ΠΊ, Π² Ρ‚ΠΎΠΌ числС

  • Stored XSS , ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ внСдряСт врСдоносный ΠΊΠΎΠ΄ Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π΅Π±-прилоТСния
  • ΠžΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΉ XSS , Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΎΠ±ΠΌΠ°Π½ΠΎΠΌ заставляСт ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ Ρ‰Π΅Π»ΠΊΠ½ΡƒΡ‚ΡŒ Π²Ρ€Π΅Π΄ΠΎΠ½ΠΎΡΠ½ΡƒΡŽ ссылку, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ врСдоносный ΠΊΠΎΠ΄
  • .

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ XSS-Π°Ρ‚Π°ΠΊΠΈ  Атака

Допустим, Π΅ΡΡ‚ΡŒ Π²Π΅Π±-сайт с ΠΎΠΊΠ½ΠΎΠΌ поиска, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΈΡΠΊΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ²Π°Ρ€Ρ‹. Π’Π΅Π±-сайт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ поиска Π² URL-адрСсС для получСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ² поиска ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

https://example.com/search?q=<поисковый запрос>

Β 

Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΡ‰Π΅Ρ‚ Β«Π½ΠΎΡƒΡ‚Π±ΡƒΠΊΠΈΒ», URL-адрСс Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

https://example.com/search? q=laptops

Β 

ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Ρ…ΠΎΡ‡Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ это ΠΎΠΊΠ½ΠΎ поиска для провСдСния XSS-Π°Ρ‚Π°ΠΊΠΈ. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ врСдоносный поисковый запрос, содСрТащий Ρ‚Π΅Π³ скрипта:

https://example.com/search?q=

Β 

Если ΠΆΠ΅Ρ€Ρ‚Π²Π° Ρ‰Π΅Π»ΠΊΠ½Π΅Ρ‚ ссылку, Π²Π΅Π΄ΡƒΡ‰ΡƒΡŽ ΠΊ этому врСдоносному URL-адрСсу, Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ сцСнарий ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰Π΅Π΅ сообщСниС с тСкстом

Β«XSS-Π°Ρ‚Π°ΠΊΠ°!Β».

Π­Ρ‚ΠΎ всСго лишь ΠΎΠ΄ΠΈΠ½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ осущСствлСна ​​XSS-Π°Ρ‚Π°ΠΊΠ°. Π•ΡΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΠΈΡ… способов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π΅Π±-прилоТСния для выполнСния XSS-Π°Ρ‚Π°ΠΊ, Π½ΠΎ всС ΠΎΠ½ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ΄Π° Π² Π²Π΅Π±-страницы, просматриваСмыС Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ.

Π’ Ρ‡Π΅ΠΌ Ρ€Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ SQLi ΠΈ XSS?

SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡ (SQLi) ΠΈ мСТсайтовый скриптинг (XSS) β€” это уязвимости бСзопасности Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, Π½ΠΎ ΠΎΠ½ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΏΠΎ своСй ΠΏΡ€ΠΈΡ€ΠΎΠ΄Π΅ ΠΈ способам использования.

Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ SQL β€” это Π°Ρ‚Π°ΠΊΠ°, ΠΏΡ€ΠΈ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ внСдряСт врСдоносный ΠΊΠΎΠ΄ SQL Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π΅Π±-прилоТСния Ρ‡Π΅Ρ€Π΅Π· уязвимоС ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π°, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΠΊΠ½ΠΎ поиска ΠΈΠ»ΠΈ Ρ„ΠΎΡ€ΠΌΡƒ Π²Ρ…ΠΎΠ΄Π°. Он Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ Π² список OWASP Top 10 .

ЦСлью Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° являСтся ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ содСрТимого Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ….

НапримСр, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΡŽ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ административной ΠΏΠ°Π½Π΅Π»ΠΈ Π²Π΅Π±-сайта.

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

ЦСль Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° β€” ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ нСсанкционированныС дСйствия ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для Π²Ρ…ΠΎΠ΄Π° ΠΈΠ»ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΈΡˆΠΈΠ½Π³ΠΎΠ²ΡƒΡŽ Π°Ρ‚Π°ΠΊΡƒ.

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ SQLi ΠΈ XSS Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ†Π΅Π»ΠΈ Π°Ρ‚Π°ΠΊΠΈ. SQLi Π½Π°Ρ†Π΅Π»Π΅Π½ Π½Π° ΡΠ΅Ρ€Π²Π΅Ρ€Π½ΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π²Π΅Π±-прилоТСния ΠΈ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для управлСния Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ….

XSS Π½Π°Ρ†Π΅Π»Π΅Π½ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΡƒΡŽ Ρ‡Π°ΡΡ‚ΡŒ Π²Π΅Π±-прилоТСния ΠΈ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ Π½Π° ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΠΌ Π²Π΅Π±-Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния прСдотвращСния SQLi ΠΈ XSS ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ ΠΏΡƒΡ‚Π΅ΠΌ Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈ очистки ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Π½Π° сторонС сСрвСра ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΌΠ΅Ρ€ бСзопасности, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΡ Π²Π²ΠΎΠ΄Π°, ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Π΅ запросы ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности содСрТимого (CSP).

7 способов использования ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ XSS-Π°Ρ‚Π°ΠΊΠ°ΠΌΠΈ

1. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ cookie ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, Π²Π½Π΅Π΄Ρ€ΠΈΠ² врСдоносный скрипт Π½Π° Π²Π΅Π±-страницу. Π­Ρ‚ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ cookie ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π·Π°Ρ…Π²Π°Ρ‚Π° сСанса ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹ ΠΈ выполнСния нСсанкционированных дСйствий ΠΎΡ‚ ΠΈΠΌΠ΅Π½ΠΈ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹.

2. КСйлоггинг: Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XSS-Π°Ρ‚Π°ΠΊΡƒ для внСдрСния сцСнария, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ записываСт наТатия клавиш ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, Ρ‡Ρ‚ΠΎ позволяСт Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Ρ‚Π°ΠΊΡƒΡŽ ​​как ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ для Π²Ρ…ΠΎΠ΄Π°.

3. Ѐишинг: Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XSS-Π°Ρ‚Π°ΠΊΡƒ для создания Ρ„Π°Π»ΡŒΡˆΠΈΠ²ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ Π²Ρ…ΠΎΠ΄Π°, которая выглядит Π·Π°ΠΊΠΎΠ½Π½ΠΎΠΉ. И ΠΊΡ€Π°Π΄Π΅Ρ‚ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ΠΈ вводят ΠΈΡ… Π² ΠΏΠΎΠ΄Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ.

4. ДСфСйс: Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XSS-Π°Ρ‚Π°ΠΊΡƒ для дСфСйса Π²Π΅Π±-сайта, Π²Π½Π΅Π΄Ρ€ΠΈΠ² сцСнарий, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ измСняСт содСрТимоС Π²Π΅Π±-страницы, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ тСкст, изобраТСния ΠΈΠ»ΠΈ ссылки.

5. РаспространСниС врСдоносных ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ: Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XSS-Π°Ρ‚Π°ΠΊΡƒ для внСдрСния сцСнария, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ автоматичСски Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅Ρ‚ ΠΈ устанавливаСт врСдоносноС ПО Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹.

6. Clickjacking : Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XSS-Π°Ρ‚Π°ΠΊΡƒ для создания ΠΏΡ€ΠΎΠ·Ρ€Π°Ρ‡Π½ΠΎΠ³ΠΎ налоТСния ΠΏΠΎΠ²Π΅Ρ€Ρ… Π·Π°ΠΊΠΎΠ½Π½ΠΎΠΉ Π²Π΅Π±-страницы, ΠΎΠ±ΠΌΠ°Π½ΠΎΠΌ заставляя ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠΈΠ»ΠΈ ссылку, которая выполняСт врСдоносноС дСйствиС.

7. ΠŸΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ сСанса: Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ XSS-Π°Ρ‚Π°ΠΊΡƒ для ΠΊΡ€Π°ΠΆΠΈ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° сСанса ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Π²Ρ‹Π΄Π°Ρ‡ΠΈ сСбя Π·Π° ΠΆΠ΅Ρ€Ρ‚Π²Ρƒ ΠΈ выполнСния нСсанкционированных дСйствий ΠΎΡ‚ Π΅Π΅ ΠΈΠΌΠ΅Π½ΠΈ.

Π­Ρ‚ΠΎ всСго лишь нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ XSS-Π°Ρ‚Π°ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для эксплуатации Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ВоздСйствиС XSS-Π°Ρ‚Π°ΠΊΠΈ зависит ΠΎΡ‚ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π° уязвимости ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π° ​​атака.

Π’Ρ€ΠΈ Ρ‚ΠΈΠΏΠ° XSS-Π°Ρ‚Π°ΠΊ

Π’Ρ€ΠΈ основных Ρ‚ΠΈΠΏΠ° мСТсайтовых сцСнариСв (XSS) β€” ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Π΅ XSS, сохранСнныС XSS ΠΈ XSS Π½Π° основС DOM. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ‚ΠΈΠΏ XSS-Π°Ρ‚Π°ΠΊΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ, Π½ΠΎ всС ΠΎΠ½ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ΄Π° Π½Π° Π²Π΅Π±-страницы, просматриваСмыС Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ.

Π’ΠΎΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пояснСния ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° XSS-Π°Ρ‚Π°ΠΊ:

1. ΠžΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Π΅ XSS-Π°Ρ‚Π°ΠΊΠΈ

ΠžΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Π΅ XSS-Π°Ρ‚Π°ΠΊΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π² сСбя Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ΄Π° Π² ΠΎΡ‚Π²Π΅Ρ‚ Π²Π΅Π±-прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚Ρ€Π°ΠΆΠ°Π΅Ρ‚ дСйствия ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ отправляСт Ρ„ΠΎΡ€ΠΌΡƒ с поисковым запросом ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ Π²Π²ΠΎΠ΄ΠΎΠΌ, Π° Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ этот Π²Π²ΠΎΠ΄ Π² ΠΎΡ‚Π²Π΅Ρ‚ Π±Π΅Π· Π½Π°Π΄Π»Π΅ΠΆΠ°Ρ‰Π΅ΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΠ»ΠΈ очистки.

Если Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ Ρ‚Π΅Π³ сцСнария ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ врСдоносный ΠΊΠΎΠ΄ Π² ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄, это Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ.

НапримСр, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ URL-адрСс, содСрТащий врСдоносный скрипт:

https://example.com/search?q=

Β 

Когда ΠΆΠ΅Ρ€Ρ‚Π²Π° Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ Π½Π° эту ссылку ΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ поисковый запрос Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅, сцСнарий Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½, ΠΈ отобразится ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰Π΅Π΅ сообщСниС.

2. Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½Π½Ρ‹Π΅ XSS

Π‘ΠΎΡ…Ρ€Π°Π½Π΅Π½Π½Ρ‹Π΅ XSS-Π°Ρ‚Π°ΠΊΠΈ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ΄Π° Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… Π²Π΅Π±-прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Ρ‚Π΅ΠΌ отобраТаСтся Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ, ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΌ Π·Π°Ρ‚Ρ€ΠΎΠ½ΡƒΡ‚ΡƒΡŽ страницу. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ, ΠΊΠΎΠ³Π΄Π° Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ позволяСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ содСрТимоС, Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ ΠΈΠ»ΠΈ сообщСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хранятся Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ для Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

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

НапримСр, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, содСрТащий врСдоносный скрипт:

Β 

Когда Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°ΡŽΡ‚ страницу, ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‰ΡƒΡŽ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ, скрипт Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ, ΠΈ появится ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰Π΅Π΅ сообщСниС.

3. XSS на основС DOM

XSS-Π°Ρ‚Π°ΠΊΠΈ Π½Π° основС DOM ΠΏΠΎΠ΄Ρ€Π°Π·ΡƒΠΌΠ΅Π²Π°ΡŽΡ‚ Π²Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ врСдоносного ΠΊΠΎΠ΄Π° Π² ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π½ΡƒΡŽ модСль Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° (DOM) Π²Π΅Π±-страницы.

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

НапримСр, Ссли Π²Π΅Π±-страница содСрТит ΠΊΠΎΠ΄ JavaScript, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°Π΄Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ поля Π²Π²ΠΎΠ΄Π° Π½Π° основС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° запроса, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ URL-адрСс, содСрТащий врСдоносный скрипт:

https://example.com/page.html#input

Β 

Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½, ΠΊΠΎΠ³Π΄Π° ΠΆΠ΅Ρ€Ρ‚Π²Π° посСтит этот URL-адрСс, ΠΈ появится ΠΏΡ€Π΅Π΄ΡƒΠΏΡ€Π΅ΠΆΠ΄Π°ΡŽΡ‰Π΅Π΅ сообщСниС. Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ.

Как ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‚Π΅ΡΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ мСТсайтовый скриптинг?

Π’ΠΎΡ‚ нСсколько шагов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ для ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ XSS-уязвимостСй:

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ инструмСнты

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ инструмСнты, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Indusface WAS , для сканирования Π²Π΅Π±-прилоТСния Π½Π° Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ XSS-уязвимостСй. Π­Ρ‚ΠΈ инструмСнты ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ распространСнныС уязвимости XSS, Π² Ρ‚ΠΎΠΌ числС ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹Π΅ XSS ΠΈ сохранСнныС XSS.

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ ΠΊΠΎΠ΄

ΠŸΡ€ΠΎΡΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ исходный ΠΊΠΎΠ΄ Π²Π΅Π±-прилоТСния, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ области, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ принимаСтся ΠΈ отобраТаСтся. Π­Ρ‚ΠΎ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡ‹, поля поиска, Ρ€Π°Π·Π΄Π΅Π»Ρ‹ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠ΅Π² ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Π΅ элСмСнты.

ΠŸΡ€ΠΎΠ²Π΅ΡΡ‚ΠΈ тСстированиС Π½Π° ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅

Π₯отя это ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ собствСнными силами, Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠ»Π°Π½ΠΎΠΌ Indusface WAS Premium , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π΅ΠΆΠ΅Π³ΠΎΠ΄Π½ΠΎΠ΅ тСстированиС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΠ΅Ρ€Π° ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΡƒΡŽ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΎΡ‚Ρ‡Π΅Ρ‚ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ автоматичСского сканСра.

Π’ΠΎΡ‚ тСстовыС случаи, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ тСстировании Π½Π° ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅:

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π° β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° ΠΏΠΎΠ»Π΅ΠΉ Π²Π²ΠΎΠ΄Π° ΠΏΡƒΡ‚Π΅ΠΌ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ символы, Ρ‚Π΅Π³ΠΈ HTML ΠΈ ΠΊΠΎΠ΄ JavaScript. Π˜Ρ‰ΠΈΡ‚Π΅ любоС Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅, Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠ°ΠΊ нСэкранированный ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄, ΠΎΡ‚Ρ€Π°ΠΆΠ΅Π½Π½Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° сцСнариСв Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ сцСнариСв Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… Π² Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚Π°ΠΉΡ‚Π΅ΡΡŒ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ прСдоставлСнными Π²Ρ…ΠΎΠ΄Π½Ρ‹ΠΌΠΈ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. НапримСр, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, ΠΊΠ°ΠΊ Π²Π΅Π΄Π΅Ρ‚ сСбя Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ отправляСтС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Π²Π²ΠΎΠ΄ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ URL ΠΈΠ»ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ HTTP-запроса.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ сообщСния ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ сообщСний ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Ρ… Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ Π² сообщСния ΠΊΠΎΠ΄ сцСнария. Если Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ выполняСт ΠΊΠΎΠ΄ скрипта, это ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ Π½Π° XSS-ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ² β€” НайдитС Π»ΡŽΠ±Ρ‹Π΅ установлСнныС Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ‹Ρ‚Π°ΡŽΡ‚ΡΡ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ символы ΠΈΠ»ΠΈ Ρ‚Π΅Π³ΠΈ HTML. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ эти Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Ρ‹, Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π² Π²Π²ΠΎΠ΄ ΠΈΠ»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ символов.

ВСстовыС Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° – Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ XSS Me , Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ Firefox, ΠΏΠΎΠΌΠΎΠ³Π°ΡŽΡ‰Π΅Π΅ Π²Ρ‹ΡΠ²Π»ΡΡ‚ΡŒ XSS-уязвимости.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° с использованиСм Ρ€Π°Π·Π½Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² β€” ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π²Π΅Π±-прилоТСния с использованиСм Ρ€Π°Π·Π½Ρ‹Ρ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΈ вСрсий Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ². НСкоторыС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π±ΠΎΠ»Π΅Π΅ уязвимы для XSS-Π°Ρ‚Π°ΠΊ, Ρ‡Π΅ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠ΅.

Π’Π°ΠΆΠ½ΠΎ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ тСстированиС XSS-уязвимости β€” это Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹ΠΉ процСсс, ΠΈ уязвимости ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ развития Π²Π΅Π±-прилоТСния. ΠœΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ ΡΠΊΠ°Π½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ прилоТСния ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Ρ€Π°Π· Π² мСсяц ΠΈ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ тСстированиС Π½Π° ΠΏΡ€ΠΎΠ½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 6 мСсяцСв.

Как ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ XSS ?

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ описанныС Π²Ρ‹ΡˆΠ΅ шаги для обнаруТСния уязвимости мСТсайтового скриптинга, Π²ΠΎΡ‚ нСсколько способов исправлСния уязвимостСй:

ΠŸΡ€ΠΈΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π²Π²ΠΎΠ΄Π°

Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ Π²Π²ΠΎΠ΄Π° β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ эффСктивных способов прСдотвращСния XSS Π°Ρ‚Π°ΠΊΠΈ. Π­Ρ‚ΠΎ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ соотвСтствуСт ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡƒ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ ΠΈ Π½Π΅ содСрТит ΠΏΠΎΠ΄ΠΎΠ·Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… символов ΠΈΠ»ΠΈ ΠΊΠΎΠ΄Π° скрипта.

Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Π°

Π•Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ способ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ с использованиСм мСТсайтовых сцСнариСв β€” Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ Π²Π²ΠΎΠ΄Π° Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ½ Π½Π΅ интСрпрСтировался Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ сцСнария.

ИспользованиС ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ бСзопасности ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° (CSP)

ΠŸΠΎΠ»ΠΈΡ‚ΠΈΠΊΠ° бСзопасности ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° (CSP) β€” это функция бСзопасности, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π³Ρ€ΡƒΠΆΠ°Ρ‚ΡŒ вашС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’Π½Π΅Π΄Ρ€Π΅Π½ΠΈΠ΅ CSP ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ врСдоносных сцСнариСв Π² вашСм Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

ОбновлСниС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ

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

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ брандмауэр Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (WAF)

Брандмауэр Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ (WAF) , Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ AppTrana, Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ XSS, ΠΎΡ‚Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Ρ‹Π²Π°Ρ Π²Ρ€Π΅Π΄ΠΎΠ½ΠΎΡΠ½ΡƒΡŽ ΠΏΠΎΠ»Π΅Π·Π½ΡƒΡŽ Π½Π°Π³Ρ€ΡƒΠ·ΠΊΡƒ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ ΠΎΠ½Π° ΠΏΠΎΠΏΠ°Π΄Π΅Ρ‚ Π² Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Как ΠΈ Π² случаС с процСссом обнаруТСния уязвимостСй, исправлСниС уязвимостСй Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½Ρ‹ΠΌ. Благодаря Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΌ спринтам для исправлСния Π²Ρ‹ всСгда Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π² курсС ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚Ρ‹Ρ… уязвимостСй, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ находят ваши автоматичСскиС сканСры ΠΈ ΠΏΠ΅Π½-тСстСры.

Как WAF Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π°Ρ‚Π°ΠΊΠΈ с использованиСм мСТсайтовых сцСнариСв?

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

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ² становится ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° Ρ‚Ρ€Π΅Ρ‚ΡŒΡ сторона Π½Π΅ выпустит ΠΏΠ°Ρ‚Ρ‡. Они Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒΡΡ ΠΏΠ°Ρ‚Ρ‡Π°, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ Π°Ρ‚Π°ΠΊΠ°. ИмСнно здСсь появляСтся WAF, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ Indusface AppTrana , с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ XSS Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ WAF.

AppTrana ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΡƒΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ ΠΎΡ†Π΅Π½ΠΊΠΈ Π°Π½ΠΎΠΌΠ°Π»ΠΈΠΉ, основанный Π½Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ Π²Ρ…ΠΎΠ΄Π½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…, сигнатурах, повСдСнчСском Π°Π½Π°Π»ΠΈΠ·Π΅ ΠΈ Π°Π½Π°Π»ΠΈΠ·Π΅ ΡƒΠ³Ρ€ΠΎΠ·, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ Π½Π° ΡƒΡ€ΠΎΠ²Π½Π΅ запроса.

Π’Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ AppTrana для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ кодирования Π²Ρ‹Π²ΠΎΠ΄Π° ΠΈ ΠΏΠΎΠ»ΠΈΡ‚ΠΈΠΊΠΈ бСзопасности ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π°.

This entry was posted in ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΠ΅