ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ

Π‘ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΡƒΠΊΠΈ

Π’Ρ‹ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ с ΠΊΡƒΠΊΠΈ? Казалось Π»ΠΈ Π²Π°ΠΌ ΠΏΡ€ΠΈ этом, Ρ‡Ρ‚ΠΎ ΠΈΡ… использованиС ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½ΠΎ просто ΠΈ понятно? Полагаю, Ρ‡Ρ‚ΠΎ Π² Ρ€Π°Π±ΠΎΡ‚Π΅ с ΠΊΡƒΠΊΠΈ Π΅ΡΡ‚ΡŒ мноТСство нюансов, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… стоит Π·Π½Π°Ρ‚ΡŒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ.

ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ

Бвойство document.cookie

ВзглянСм Π½Π° классичСский способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΡƒΠΊΠΈ. Π‘ΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ спСцификация сущСствуСт, благодаря Netscape, с 1994 Π³ΠΎΠ΄Π°. Компания Netscape Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»Π° свойство document.cookie Π² Netscape Navigator Π² 1996 Π³ΠΎΠ΄Ρƒ. Π’ΠΎΡ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΊΡƒΠΊΠΈ ΠΈΠ· Ρ‚Π΅Ρ… Π²Ρ€Π΅ΠΌΡ‘Π½:

ΠšΡƒΠΊΠΈ β€” это нСбольшой Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, хранящийся Π½Π° клиСнтской машинС Π² Ρ„Π°ΠΉΠ»Π΅ cookies.txt.

Π“Π»Π°Π²Ρƒ ΠΏΡ€ΠΎ document.cookie Π΄Π°ΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ·Π΄Π°Π½ΠΈΠΈ ΠΊΠ½ΠΈΠ³ΠΈ Β«Javascript. The Definitive GuideΒ», ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ΡˆΠ»ΠΎ Π² январС 1997 Π³ΠΎΠ΄Π°. Π­Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ 24 Π³ΠΎΠ΄Π° Ρ‚ΠΎΠΌΡƒ Π½Π°Π·Π°Π΄. И ΠΌΡ‹ всё Π΅Ρ‰Ρ‘ ΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ Ρ‚Π΅ΠΌ ΠΆΠ΅ старым способом Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΡƒΠΊΠΈ Ρ€Π°Π΄ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ совмСстимости.

Как ΠΆΠ΅ это выглядит?

ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΊΡƒΠΊΠΈ

Π”Π°, ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ всё ΠΈ дСлаСтся. Π’ нашСм распоряТСнии оказываСтся строка со всСми значСниями, хранящимися Π² ΠΊΡƒΠΊΠΈ-Ρ„Π°ΠΉΠ»Π΅, Ρ€Π°Π·Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌΠΈ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с запятой.

Как Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΡ‚ΡŒ ΠΈΠ· этой строки ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅? Если Π²Π°ΠΌ каТСтся, Ρ‡Ρ‚ΠΎ для этого Π½Π°Π΄ΠΎ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Π±ΠΈΡ‚ΡŒ строку Π½Π° части β€” Π·Π½Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊ ΠΎΠ½ΠΎ ΠΈ Π΅ΡΡ‚ΡŒ:

Как ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠΎΠ³Π΄Π° истСкаСт срок дСйствия ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΈΠ· ΠΊΡƒΠΊΠΈ? Π”Π°, Π² ΠΎΠ±Ρ‰Π΅ΠΌ-Ρ‚ΠΎ, Π½ΠΈΠΊΠ°ΠΊ.

А ΠΊΠ°ΠΊ ΡƒΠ·Π½Π°Ρ‚ΡŒ Π΄ΠΎΠΌΠ΅Π½, с ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ установлСн ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΊΡƒΠΊΠΈ? Π’ΠΎΠΆΠ΅ Π½ΠΈΠΊΠ°ΠΊ.

Установка ΠΊΡƒΠΊΠΈ

По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ срок дСйствия ΠΊΡƒΠΊΠΈ, созданного Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅, истСкаСт послС закрытия Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Но ΠΏΡ€ΠΈ создании ΠΊΡƒΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ срок Π΅Π³ΠΎ дСйствия:

Π”Π°. Π­Ρ‚ΠΎ β€” ΠΊΠ°ΠΊ Ρ€Π°Π· Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΌΠ½Π΅ Π½ΡƒΠΆΠ½ΠΎ β€” ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Ρ‚ΡŒ Π΄Π°Ρ‚Ρƒ ΠΈ врСмя истСчСния срока дСйствия ΠΊΡƒΠΊΠΈ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ GMT ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ ΠΊΡƒΠΊΠΈ. Π›Π°Π΄Π½ΠΎ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ этой Π·Π°Π΄Π°Ρ‡ΠΈ JavaScript-ΠΊΠΎΠ΄ΠΎΠΌ:

Но, ΠΊ ΡΡ‡Π°ΡΡ‚ΡŒΡŽ, Ρƒ нас Π΅ΡΡ‚ΡŒ ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠΉ способ установки ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° истСчСния срока дСйствия ΠΊΡƒΠΊΠΈ:

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΡƒΠΊΠΈ

Для удалСния ΠΊΡƒΠΊΠΈ Π½Π°Π΄ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Ρ‚Ρƒ ΠΈ врСмя истСчСния срока дСйствия ΠΊΡƒΠΊΠΈ Π½Π° ΠΊΠ°ΠΊΠΎΠΉ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΈΠ· ΠΏΡ€ΠΎΡˆΠ»ΠΎΠ³ΠΎ. Для Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ всё Ρ‚ΠΎΡ‡Π½ΠΎ сработало Π±Ρ‹ β€” Ρ‚ΡƒΡ‚ рСкомСндуСтся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π°Ρ‡Π°Π»ΠΎ эпохи Unix.

Π Π°Π±ΠΎΡ‚Π° с ΠΊΡƒΠΊΠΈ Π² сСрвис-Π²ΠΎΡ€ΠΊΠ΅Ρ€Π°Ρ…

Π­Ρ‚ΠΎ просто Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π° с document.cookie β€” это синхронная опСрация, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π΅ΠΉ Π² сСрвис-Π²ΠΎΡ€ΠΊΠ΅Ρ€Π΅ нСльзя.

Cookie Store API

БущСствуСт Ρ‡Π΅Ρ€Π½ΠΎΠ²ΠΈΠΊ стандарта ΠΎΠ΄Π½ΠΎΠ³ΠΎ Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ API, Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° Ρ€Π°Π±ΠΎΡ‚Ρƒ с ΠΊΡƒΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ способСн Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΎΠ±Π»Π΅Π³Ρ‡ΠΈΡ‚ΡŒ Π½Π°ΠΌ Тизнь Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ.

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ… β€” это асинхронный API, Π° Π·Π½Π°Ρ‡ΠΈΡ‚ β€” ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈΠΌ ΠΌΠΎΠΆΠ½ΠΎ, Π½Π΅ блокируя Π³Π»Π°Π²Π½Ρ‹ΠΉ ΠΏΠΎΡ‚ΠΎΠΊ. ΠŸΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈ Π² сСрвис-Π²ΠΎΡ€ΠΊΠ΅Ρ€Π°Ρ….

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ… β€” этот API устроСн Π³ΠΎΡ€Π°Π·Π΄ΠΎ понятнСС, Ρ‡Π΅ΠΌ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΡƒΠΊΠΈ.

β–ΠŸΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ ΠΊΡƒΠΊΠΈ

ΠœΠ΅Ρ‚ΠΎΠ΄ getAll Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ массив, Π° Π½Π΅ строку. ИмСнно этого я ΠΈ ΠΆΠ΄Ρƒ, ΠΊΠΎΠ³Π΄Π° ΠΏΡ‹Ρ‚Π°ΡŽΡΡŒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½Π΅ΠΊΠΈΠΉ список.

А Π²ΠΎΡ‚ β€” приятная Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½ΠΎΡΡ‚ΡŒ. МоТно ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΈ Π΄Π°Ρ‚Ρƒ истСчСния срока дСйствия ΠΊΡƒΠΊΠΈ, ΠΈ свСдСния ΠΎ Π΄ΠΎΠΌΠ΅Π½Π΅ ΠΈ ΠΏΡƒΡ‚ΠΈ, ΠΈ ΠΏΡ€ΠΈ этом Π½Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½ΠΈΠΊΠ°ΠΊΠΈΠΌΠΈ Ρ…Π°ΠΊΠ°ΠΌΠΈ.

▍Установка ΠΊΡƒΠΊΠΈ

МнС ΠΎΡ‡Π΅Π½ΡŒ нравится этот синтаксис!

▍УдалСниС ΠΊΡƒΠΊΠΈ

Или ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π½ΡŒΡˆΠ΅, ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Ρ‚Ρƒ истСчСния срока дСйствия ΠΊΡƒΠΊΠΈ Π½Π° Π½Π΅ΠΊΠΈΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ, Π½ΠΎ Π½Π΅ Π²ΠΈΠΆΡƒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Ρ‹ ΠΏΠΎΡΡ‚ΡƒΠΏΠ°Ρ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ.

▍Бобытия ΠΊΡƒΠΊΠΈ

▍БСрвис-Π²ΠΎΡ€ΠΊΠ΅Ρ€Ρ‹

МоТно Π»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этим API прямо сСйчас?

Π₯отя этим API ΡƒΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ, Π½ΠΎ Ρ‚ΡƒΡ‚ Π½Π°Π΄ΠΎ ΠΏΡ€ΠΎΡΠ²Π»ΡΡ‚ΡŒ ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ. Cookie Store API работоспособно Π² Chrome 87+ (Edge 87+, Opera 73+). Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΏΠΎΠ»ΠΈΡ„ΠΈΠ»Π»ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ, ΠΏΡ€Π°Π²Π΄Π°, Π½Π΅ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ ΠΊΡƒΠΊΠΈ, ΠΊΠ°ΠΊ это сдСлано Π² настоящСм API. ΠŸΡ€ΠΎΠ³Ρ€Π΅ΡΡΠΈΠ²Π½Ρ‹Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½ΠΈΡ β€” это Π²Π΅Ρ‰ΡŒ.

И ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ спСцификация этого API всё Π΅Ρ‰Ρ‘ находится Π² статусС Β«Draft Community Group ReportΒ». Но Ссли Π² вашСм ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅ Π²Π°ΠΆΠ΅Π½ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ Β«ΠΎΠΏΡ‹Ρ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Β» β€” ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ соврСмСнный способ Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΊΡƒΠΊΠΈ.

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

ΠšΡƒΠΊΠΈ HTTP

Cookie ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, для:

⦁ УправлСния сСансом (Π»ΠΎΠ³ΠΈΠ½Ρ‹, ΠΊΠΎΡ€Π·ΠΈΠ½Ρ‹ для Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ)
⦁ ΠŸΠ΅Ρ€ΡΠΎΠ½Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ (ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ прСдпочтСния)
⦁ ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° (отслСТивания повСдСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ)

Π”ΠΎ Π½Π΅Π΄Π°Π²Π½Π΅Π³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ cookie принято Π±Ρ‹Π»ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² качСствС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π½Π° сторонС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. Π­Ρ‚ΠΎ ΠΌΠΎΠ³Π»ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ смысл Π² отсутствии Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ², Π½ΠΎ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° Π² распоряТСнии Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² появились Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ API (ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ интСрфСйсы прилоТСния) для хранСния Π΄Π°Π½Π½Ρ‹Ρ…, это ΡƒΠΆΠ΅ Π½Π΅ Ρ‚Π°ΠΊ. Из-Π·Π° Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ cookie ΠΏΠ΅Ρ€Π΅ΡΡ‹Π»Π°ΡŽΡ‚ΡΡ с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ запросом, ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ слишком сильно ΡΠ½ΠΈΠΆΠ°Ρ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ (особСнно Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах). Π’ качСствС Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° сторонС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ вмСсто Π½ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Web storage API ( localStorage and sessionStorage ) ΠΈ IndexedDB.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ сохранённыС cookies (ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Π΅Ρ‰Ρ‘ способы хранСния Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ Π²Π΅Π±-страница), ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Storage Inspector (Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π°) ΠΈΠ· Ρ€Π°Π·Π΄Π΅Π»Π° Developer Tools (Π’Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°).

Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ cookie

ΠŸΠΎΠ»ΡƒΡ‡ΠΈΠ² HTTP-запрос, вмСстС с ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠΎΠΌ сСрвСр ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Set-Cookie с ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ. Cookie ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ΡΡ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠΌ ΠΈ ΠΏΠΎΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Π² Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° HTTP Cookie (en-US) с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π½ΠΎΠ²Ρ‹ΠΌ запросом ΠΊ ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΈ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ сСрвСру. МоТно Π·Π°Π΄Π°Ρ‚ΡŒ срок дСйствия cookie, Π° Ρ‚Π°ΠΊΠΆΠ΅ срок Π΅Π³ΠΎ ΠΆΠΈΠ·Π½ΠΈ, послС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ cookie Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ограничСния Π½Π° ΠΏΡƒΡ‚ΡŒ ΠΈ Π΄ΠΎΠΌΠ΅Π½, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Π² Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠΈ ΠΊΠ°ΠΊΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΊ ΠΊΠ°ΠΊΠΎΠΌΡƒ сайту ΠΎΠ½ΠΎ отсылаСтся.

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ Set-Cookie ΠΈ Cookie

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Set-Cookie HTTP-ΠΎΡ‚ΠΊΠ»ΠΈΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ cookie с сСрвСра Π½Π° клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (Π±Ρ€Π°ΡƒΠ·Π΅Ρ€). ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ cookie ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊ:

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π½ΠΎΠ²Ρ‹ΠΌ запросом ΠΊ сСрвСру, ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Cookie (en-US) Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ сСрвСру всС сохранённыС Ρ€Π°Π½Π΅Π΅ cookies.

БСссионныС cookie

ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Ρ‹Π΅ cookies

ΠŸΠΎΡΡ‚ΠΎΡΠ½Π½Ρ‹Π΅ cookie ( permanent cookies) ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ Π½Π΅ с Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Π° ΠΏΡ€ΠΈ наступлСнии ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠΉ Π΄Π°Ρ‚Ρ‹ (Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Expires ) ΠΈΠ»ΠΈ послС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ (Π°Ρ‚Ρ€ΠΈΠ±ΡƒΡ‚ Max-Age ).

Secure («Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Ρ‹Π΅») ΠΈ HttpOnly cookies

ΠžΠ±Π»Π°ΡΡ‚ΡŒ видимости ΠΊΡƒΠΊΠΎΠ²

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Ρ‹ Domain ΠΈ Path ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости ΠΊΡƒΠΊΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Ρ‚Π΅ URL-адрСса, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΊΡƒΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΡΡ‹Π»Π°Ρ‚ΡŒΡΡ.
Атрибут Domain ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ хосты, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚ΡΡ‹Π»Π°ΡŽΡ‚ΡΡ ΠΊΡƒΠΊΠΈ. Если ΠΎΠ½ Π½Π΅ Π·Π°Π΄Π°Π½, Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ бСрётся домСнная Ρ‡Π°ΡΡ‚ΡŒ адрСса Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚Π° (Π½ΠΎ Π±Π΅Π· ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ²). Если Π΄ΠΎΠΌΠ΅Π½ ΡƒΠΊΠ°Π·Π°Π½ явно, Ρ‚ΠΎ ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½Ρ‹ всСгда Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹.

Атрибут Path ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ URL, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π² Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌΠΎΠΌ рСсурсС Π½Π° ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° Cookie. Π‘ΠΈΠΌΠ²ΠΎΠ» %x2F («/») интСрпрСтируСтся ΠΊΠ°ΠΊ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Ρ€Π°Π·Π΄Π΅Π»ΠΎΠ², ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ΡΡ.

Если Π·Π°Π΄Π°Π½ΠΎ Path=/docs, Ρ‚ΠΎ подходят ΠΈ Ρ‚Π°ΠΊΠΈΠ΅ ΠΏΡƒΡ‚ΠΈ, ΠΊΠ°ΠΊ:

ΠšΡƒΠΊΠΈ SameSite

ΠšΡƒΠΊΠΈ SameSite ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ сСрвСрам Π΄Π΅ΠΊΠ»Π°Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΡƒΠΊΠΈ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΡ‚ΡΡ‹Π»Π°Ρ‚ΡŒΡΡ с мСТсайтовыми запросами, Ρ‡Ρ‚ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Ρ€ΠΎΠ΄Π΅ обСспСчиваСт Π·Π°Ρ‰ΠΈΡ‚Ρƒ ΠΎΡ‚ мСТсайтовых ΠΏΠΎΠ΄Π΄Π΅Π»ΠΎΠΊ запроса (CSRF). ΠšΡƒΠΊΠΈ SameSite находятся ΠΏΠΎΠΊΠ° Π² стадии экспСримСнта ΠΈ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π½Π΅ всСми Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°ΠΌΠΈ.

Доступ ΠΈΠ· JavaScript посрСдством Document.cookie

Π£Ρ‡ΠΈΡ‚Ρ‹Π²Π°ΠΉΡ‚Π΅, поТалуйста, Π²Ρ‹Ρ‚Π΅ΠΊΠ°ΡŽΡ‰ΠΈΠ΅ ΠΈΠ· этого ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠΈ бСзопасности, ΠΏΠΎΠ΄Ρ‡Ρ‘Ρ€ΠΊΠ½ΡƒΡ‚Ρ‹Π΅ Π½ΠΈΠΆΠ΅ (Ρ€Π°Π·Π΄Π΅Π» Security). ΠšΡƒΠΊΠΈ, доступныС для JavaScript, ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΡ…ΠΈΡ‰Π΅Π½Ρ‹ посрСдством XSS.

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ

ВаТная информация Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ ΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π² ΠΊΡƒΠΊΠ°Ρ… HTTP, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ сам ΠΏΠΎ сСбС нСбСзопасСн.

Π—Π°Ρ…Π²Π°Ρ‚ сСссии (session hijacking) ΠΈ XSS

Атрибут HttpOnly ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΠΏΠΎΠ½ΠΈΠ·ΠΈΡ‚ΡŒ эту ΡƒΠ³Ρ€ΠΎΠ·Ρƒ, пСрСкрывая доступ ΠΊ ΠΊΡƒΠΊΠ°ΠΌ ΠΈΠ· JavaScript..

Π’ Wikipedia ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ CSRF. Π’ сообщСниС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Ρ‡Π°Ρ‚Π΅ ΠΈΠ»ΠΈ Π½Π° Ρ„ΠΎΡ€ΡƒΠΌΠ΅) Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ (якобы) ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅, Π½Π° самом Π΄Π΅Π»Π΅, прСдставляСт собой запрос ΠΊ банковскому сСрвСру Π½Π° снятиС Π΄Π΅Π½Π΅Π³:

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

ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΈ частныС Π΄Π°Π½Π½Ρ‹Π΅

Π‘Ρ‚ΠΎΡ€ΠΎΠ½Π½ΠΈΠ΅ (Third-party) ΠΊΡƒΠΊΠΈ

ΠšΡƒΠΊΠΈ связаны с ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹ΠΌ Π΄ΠΎΠΌΠ΅Π½ΠΎΠΌ. Если ΠΎΠ½ совпадаСт с Π΄ΠΎΠΌΠ΅Π½ΠΎΠΌ страницы, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π²Ρ‹ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ, Ρ‚ΠΎ ΠΈΡ… Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ «ΠΊΡƒΠΊΠ°ΠΌΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π»ΠΈΡ†Π°» (first-party cookies). Если это Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π΄ΠΎΠΌΠ΅Π½, ΠΈΡ… Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ «ΡΡ‚ΠΎΡ€ΠΎΠ½Π½ΠΈΠΌΠΈ ΠΊΡƒΠΊΠ°ΠΌΠΈ» (third-party cookies). ΠšΡƒΠΊΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π»ΠΈΡ†Π° ΠΎΡ‚ΡΡ‹Π»Π°ΡŽΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ‚ΠΎΡ‚ сСрвСр, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡ… создал. Однако, страница ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ изобраТСния ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½Ρ‹Π΅ Π±Π°Π½Π½Π΅Ρ€Ρ‹), хранящиСся Π½Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… сСрвСрах. ΠšΡƒΠΊΠΈ, посылаСмыС Ρ‡Π΅Ρ€Π΅Π· Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ, Π³Π»Π°Π²Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Π² Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½Ρ‹Ρ… цСлях ΠΈΠ»ΠΈ для отслСТивания ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² сСти. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ‚ΠΈΠΏΡ‹ Ρ„Π°ΠΉΠ»ΠΎΠ² cookie, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Google. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°ΡŽΡ‚ использованиС сторонних ΠΊΡƒΠΊΠΎΠ², Π½ΠΎ Π΅ΡΡ‚ΡŒ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰ΠΈΠ΅ ΠΈΡ… Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Privacy Badger ΠΎΡ‚ EFF).

Если Π²Ρ‹ Π½Π΅ сообщитС ΠΎΠ± использовании сторонних ΠΊΡƒΠΊΠΎΠ², Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ ΠΈΡ… ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ, Ρ‚ΠΎ Π΄ΠΎΠ²Π΅Ρ€ΠΈΠ΅ ΠΊ Π²Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡˆΠ°Ρ‚Π½ΡƒΡ‚ΡŒΡΡ. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ этого, Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… странах использованиС ΠΊΡƒΠΊΠΎΠ² рСгламСнтируСтся Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎΠΌ. ΠŸΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ± этом ΠΌΠΎΠΆΠ½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ Π² Ρ€Π°Π·Π΄Π΅Π»Π΅ cookie statement (созданиС ΠΊΡƒΠΊΠΎΠ²).

НС ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ (Do-Not-Track)

Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π° Π•Π²Ρ€ΠΎΡΠΎΡŽΠ·Π° ΠΎ ΠΊΡƒΠΊΠ°Ρ…

ΠŸΡ€Π°Π²ΠΈΠ»Π° ΠΏΠΎ использованию ΠΊΡƒΠΊΠΎΠ² Π² Π•Π²Ρ€ΠΎΡΠΎΡŽΠ·Π΅ (Π•Π‘) ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Ρ‹ Π² Π”ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ 2009/136/EC Π•Π²Ρ€ΠΎΠΏΠ°Ρ€Π»Π°ΠΌΠ΅Π½Ρ‚Π° (Directive 2009/136/EC), Π²ΡΡ‚ΡƒΠΏΠΈΠ²ΡˆΠ΅ΠΉ Π² дСйствиС 25 мая 2011. Π­Ρ‚ΠΎ Π½Π΅ Π·Π°ΠΊΠΎΠ½, ΠΊΠ°ΠΊ Ρ‚Π°ΠΊΠΎΠ²ΠΎΠΉ, Π° рСкомСндация странам-Ρ‡Π»Π΅Π½Π°ΠΌ Π•Π‘ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Π·Π°ΠΊΠΎΠ½Ρ‹, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Π΅Ρ‘ трСбованиям. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ странС Π½Π° этот счёт ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ свои Π·Π°ΠΊΠΎΠ½Ρ‹.

Богласно этой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΈΠ²Π΅ для хранСния ΠΈΠ»ΠΈ извлСчСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ трСбуСтся ΠΏΡ€ΠΎΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅. Π‘ ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π΅Ρ‘ появлСния ΠΌΠ½ΠΎΠ³ΠΈΠ΅ сайты Π΄ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π±Π°Π½Π½Π΅Ρ€Ρ‹, ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎΠ± использовании ΠΊΡƒΠΊΠΎΠ².

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ Π’ΠΈΠΊΠΈΠΏΠ΅Π΄ΠΈΠΈ (Wikipedia). Π—Π° Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΡ‡Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ΡΡŒ ΠΊ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Π°ΠΌ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… стран.

ΠšΡƒΠΊΠΈ-Π·ΠΎΠΌΠ±ΠΈ ΠΈ «Π²Π΅Ρ‡Π½Ρ‹Π΅» ΠΊΡƒΠΊΠΈ

Π‘ΠΎΠ»Π΅Π΅ Ρ€Π°Π΄ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ ΠΊ ΠΊΡƒΠΊΠ°ΠΌ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой ΠΊΡƒΠΊΠΈ-Π·ΠΎΠΌΠ±ΠΈ, ΠΈΠ»ΠΈ «Π²Π΅Ρ‡Π½Ρ‹Π΅» ΠΊΡƒΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²ΠΎΡΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ послС удалСния, ΠΈ ΠΏΠΎΠ»Π½ΠΎΠ΅ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΎ Π·Π°Ρ‚Ρ€ΡƒΠ΄Π½Π΅Π½ΠΎ. Они ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ интСрфСйсы Π²Π΅Π±-Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰ (Web storage API), Flash Local Shared Objects ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ собствСнного воссоздания Π² случаС, Ссли ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΎ ΠΈΡ… отсутствиС.

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

Cookies β€” ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTP

HTTP являСтся ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»ΠΎΠΌ Π±Π΅Π· сохранСния состояния (Π°Π½Π³Π». stateless protocol). Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ каТдая ΠΏΠ°Ρ€Π° запрос-ΠΎΡ‚Π²Π΅Ρ‚ Π½Π΅ связана с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌ запросом-ΠΎΡ‚Π²Π΅Ρ‚ΠΎΠΌ. Π’ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ это оказываСтся Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ½ΠΎΠ³Π΄Π° Π½Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈΠ»ΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΊΠΎΡ€Π·ΠΈΠ½Ρ‹ с Ρ‚ΠΎΠ²Π°Ρ€ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅. Π’ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°: «ΠšΠ°ΠΊ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это Ρ‚ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π»ΠΈ?» РСшСниС этой ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π±Ρ‹Π»ΠΎ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Π±ΠΎΠ»Π΅Π΅ 10 Π»Π΅Ρ‚ Π½Π°Π·Π°Π΄, ΠΊΠΎΠ³Π΄Π° Π±Ρ‹Π» ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π½ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ называСтся β€” Cookie.

Π”Π°Π²Π°ΠΉΡ‚Π΅ сдСлаСм запрос ΠΊ сайту Π₯СкслСта ΠΈ посмотрим ΠΊΠ°ΠΊ этот ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ curl. Она позволяСт Π΄Π΅Π»Π°Ρ‚ΡŒ HTTP запросы ΠΈ Ρ„Π»Π°Π³Π°ΠΌΠΈ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΈΡ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠΈ ΠΎΡ‚ telnet Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π°Ρ€Π°Π½Π΅Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ соСдинСниС ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ сырой запрос. ΠŸΡ€ΠΈ Ρ€Π°Π±ΠΎΡ‚Π΅ с curl ΠΌΠΎΠΆΠ½ΠΎ сразу ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΠΈΡ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ ΠΈ ΠΎΠ½Π° сама ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ всС Π½ΡƒΠΆΠ½Ρ‹Π΅ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ запроса, Π² Ρ‚ΠΎΠΌ числС ΠΈ ΠΏΠΎ HTTPS.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠΌ запрос для получСния Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ², для этого Π΄ΠΎΠ±Π°Π²ΠΈΠΌ ΠΊ запуску curl Ρ„Π»Π°Π³ —head.

ΠœΡ‹ Π²ΠΈΠ΄ΠΈΠΌ Π΄Π²Π° Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ установкой cookie β€” set-cookie. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ каТдая cookie посылаСтся Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅. БоотвСтствСнно Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ достаточно ΠΌΠ½ΠΎΠ³ΠΎ. Π’Π½ΡƒΡ‚Ρ€ΠΈ ΠΊΡƒΠΊΠ° прСдставляСт ΠΈΠ· сСбя ΠΏΠ°Ρ€Ρƒ ΠΊΠ»ΡŽΡ‡=Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈ отдСляСтся ΠΎΡ‚ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с запятой. ΠšΡƒΠΊΠΈ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π΅ ΠΈ ΠΏΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ запросС ΠΎΠ½ отправляСт ΠΈΡ… ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π½Π° сСрвСр. НСпосрСдствСнно Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ ΠΎΠ½ΠΈ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ. Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ аналогия β€” это ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΊ Π² Π³Π°Ρ€Π΄Π΅Ρ€ΠΎΠ±Π΅ ΠΈ ΠΏΠΎΡ‚ΠΎΠΌ Π²Π΅Ρ€Π½ΡƒΡ‚ΡŒ Π΅Π³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ какая ΠΊΡƒΡ€Ρ‚ΠΊΠ° ваша. ΠŸΡ€ΠΈ этом сам Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΊ Π½ΠΈΠΊΠ°ΠΊΠΎΠΉ цСнности Π½Π΅ прСдставляСт ΠΈ Π΅Π³ΠΎ нСльзя ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ.

ΠšΡƒΠΊΠΈ дСлятся ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ Π½Π° Π΄Π²Π° Ρ‚ΠΈΠΏΠ°:

БСссионныС ΠΊΡƒΠΊΠΈ Π² нашСм запросС Π½Π΅ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ Π²ΠΈΠ΄ΠΈΠΌ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π² Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ΅ set-cookie. Если Π±Ρ‹ ΠΈΡ… Π½Π΅ Π±Ρ‹Π»ΠΎ, Ρ‚ΠΎ ΠΊΡƒΠΊΠ° Π½Π°Π·Ρ‹Π²Π°Π»Π°ΡΡŒ Π±Ρ‹ сСссионной. ОсновноС ΠΈΡ… ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ постоянных Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΊΠ°ΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ закрываСтся Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΊΡƒΠΊΠ° удаляСтся. НапримСр, Π½Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… сайтах, Ссли Π²Ρ‹ Π½Π΅ ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚Π΅ Π³Π°Π»ΠΎΡ‡ΠΊΡƒ «Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ мСня» ΠΈ послС закрытия Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π·Π°ΠΉΠ΄Ρ‘Ρ‚Π΅ Π½Π° сайт снова, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π½Π΅ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½Ρ‹. Π’Π°ΠΊ происходит ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ сСссионная ΠΊΡƒΠΊΠ°.

ВрСмя ΠΆΠΈΠ·Π½ΠΈ ΠΊΡƒΠΊΠΈ

Π’ Π΄Π°Π½Π½ΠΎΠΌ случаС ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ΡΡ постоянныС ΠΊΡƒΠΊΠΈ. Они ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π½Π° Тёстком дискС ΠΈ мСсто ΠΈΡ… хранСния ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π°Π·Π½Ρ‹ΠΌ Π² зависимости ΠΎΡ‚ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°. Π’Π°ΠΊΠΈΠ΅ ΠΊΡƒΠΊΠΈ ΠΎΡ‚Π»ΠΈΡ‡Π°ΡŽΡ‚ΡΡ ΠΎΡ‚ сСссионных Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Π΄Π»ΠΈΠ½ΠΎΠΉ ΠΈΡ… ΠΆΠΈΠ·Π½ΠΈ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° expires.

Π’ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π΅ expires указываСтся Π΄Π°Ρ‚Π° удалСния ΠΊΡƒΠΊΠΈ, послС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½Π° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° сСрвСр. Π‘Ρ‚ΠΎΠΈΡ‚ ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ‚Π΅Ρ… ΠΆΠ΅ Ρ†Π΅Π»Π΅ΠΉ β€” MAX-AGE. Π’ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΈ указываСтся количСство сСкунд ΠΏΠΎ истСчСнии ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΡƒΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½Π°.

Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ MAX-AGE, Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΈ часто ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ сразу ΠΎΠ±Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΈ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Ρ‹ просто ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΡŽΡ‚ Ρ‚ΠΎΡ‚, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈΠΌ Π½Π΅ Π½ΡƒΠΆΠ΅Π½. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ set-cookie, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ содСрТит Π΄Π²Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° MAX-AGE ΠΈ expires, считаСтся Π²Π°Π»ΠΈΠ΄Π½Ρ‹ΠΌ. Π’ стандартС Ρ‚Π°ΠΊΠΆΠ΅ говорится ΠΈ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ рСгистр ΠΈΠΌΠ΅Π½ΠΈ ΠΊΡƒΠΊΠΈ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ domain ΠΈ path

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ domain ΠΈ path Π·Π°Π΄Π°ΡŽΡ‚ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ видимости ΠΊΡƒΠΊΠΈ, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ URL, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΊΡƒΠΊΠ° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ. Если ΠΎΠ½ΠΈ Π½Π΅ Π·Π°Π΄Π°Π½Ρ‹, Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΊΡƒΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΡΡ‹Π»Π°Ρ‚ΡŒΡΡ Π½Π° сСрвСр Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΡƒΡ‚ΠΈ ΠΈ Π΄ΠΎΠΌΠ΅Π½Π°. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ Π² path ΡƒΠΊΠ°Π·Π°Π½ ΠΊΠΎΡ€Π΅Π½ΡŒ сайта.

Π’ΠΎ Π΅ΡΡ‚ΡŒ ΠΊΡƒΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ для всСх страниц. Π•ΡΡ‚ΡŒ нюанс, Ссли установлСн domain=.hexlet.io, ΠΏΡ€ΠΈΡ‡Ρ‘ΠΌ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠΌΠ΅Π½Π΅ΠΌ Π΄ΠΎΠΌΠ΅Π½Π° Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ‚ значСния, Ρ‚ΠΎ ΠΊΡƒΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для всСх страниц сайта, Π½ΠΎ ΠΈ для всСх ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ². А Ссли ΠΌΡ‹ совсСм Π½Π΅ установим ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ domain, хотя ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π΅Π³ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ hexlet.io, Ρ‚ΠΎ ΠΊΡƒΠΊΠ° для ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ² Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚.

Π£Π½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΊΡƒΠΊΠΈ опрСдСляСтся трСмя ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°ΠΌΠΈ key (имя ΠΊΡƒΠΊΠΈ), domain ΠΈ path. Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ Ссли ΠΊΠ°ΠΊΡƒΡŽ-Ρ‚ΠΎ ΠΊΡƒΠΊΡƒ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ врСмя Π΅Ρ‘ ΠΆΠΈΠ·Π½ΠΈ, Ρ‚ΠΎ ΠΏΡ€ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ запросС Π² set-cookie эти ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ. Если хотя Π±Ρ‹ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½ΠΈΡ… отличаСтся, Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ установлСна новая ΠΊΡƒΠΊΠ°.

Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΊΡƒΠΊΠΈ

Π—Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° для удалСния ΠΊΡƒΠΊΠΈ Π½Π΅ сущСствуСт, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΅Ρ‘, Π½ΡƒΠΆΠ½ΠΎ ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π½ΡƒΠ»Π΅Π²ΠΎΠΉ ΠΈΠ»ΠΈ ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ MAX-AGE, Π»ΠΈΠ±ΠΎ Π·Π°Π΄Π°Ρ‚ΡŒ expires Π² ΠΏΡ€ΠΎΡˆΠ»ΠΎΠΌ, Ρ‚ΠΎΠ³Π΄Π° ΠΊΡƒΠΊΠ° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ ΡƒΠ΄Π°Π»Π΅Π½Π°.

HttpOnly cookie

МоТно Π·Π°ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π² нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ установлСн Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ HttpOnly. HttpOnly ΠΊΡƒΠΊΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ с AJAX-запросами, Π½ΠΎ ΠΈΡ… нСльзя ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· JavaScript Π½Π° страницС сайта. Π­Ρ‚ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ бСзопасности ΠΎΡ‚ XSS Π°Ρ‚Π°ΠΊ.

ΠžΡ‚ΠΏΡ€Π°Π²ΠΊΠ° Π½Π° сСрвСр

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ ΠΌΡ‹ обновляСм страницу Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅, происходит ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°:

ΠžΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ доступ

ΠšΡƒΡ€ΡΡ‹ программирования для Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² ΠΈ ΠΎΠΏΡ‹Ρ‚Π½Ρ‹Ρ… Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². НачнитС ΠΎΠ±ΡƒΡ‡Π΅Π½ΠΈΠ΅ бСсплатно.

Наши выпускники Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚ Π² компаниях:

Π‘ нуля Π΄ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅ΠΌ дСньги, Ссли Π½Π΅ ΡƒΠ΄Π°Π»ΠΎΡΡŒ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

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

Β«ΠžΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎ, ΠΏΠ΅Ρ‡Π΅Π½ΡŒΠΊΠΈ!Β»: совСты Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠΌ тСстировщикам Π² сфСрС бСзопасности

ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ

ΠŸΡ€ΠΈΠ²Π΅Ρ‚, мСня Π·ΠΎΠ²ΡƒΡ‚ Π’ΠΈΠΊΠ° Π‘Π΅Π³Π΅Π½Ρ‡Π΅Π²Π°, я QA-ΠΈΠ½ΠΆΠ΅Π½Π΅Ρ€ Π² Redmadrobot. Π― расскаТу, ΠΊΠ°ΠΊ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΊΡ€Π°Π΄ΡƒΡ‚ наши Π΄Π°Π½Π½Ρ‹Π΅, ΠΈ Ρ‡Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ этого Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ.

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

Π‘Ρ‚Π°Ρ‚ΡŒΡ написана для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… тСстировщиков бСзопасности ΠΈ Ρ‚Π΅Ρ…, ΠΊΠΎΠΌΡƒ нСпонятно, Ρ‡Ρ‚ΠΎ Π·Π° Β«Ρ„Ρ€ΡƒΠΊΡ‚Ρ‹Β» эти Ρ…Π°ΠΊΠ΅Ρ€Ρ‹ ΠΈ Ρ‡Π΅ΠΌ ΠΎΠ½ΠΈ Ρ‚Π°ΠΌ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ. ΠœΡ‹ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ самых частых уязвимостСй ΠΈ постараСмся Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ Π³Ρ€Π°ΠΌΠΎΡ‚Π½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π½Π° слабыС мСста ΠΈ ΡΡ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρƒ сСбя ΠΎΠ±Ρ€Π°Π· ΠΌΡ‹ΡˆΠ»Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² дальнСйшСм станСт вашим Π²Π΅Ρ€Π½Ρ‹ΠΌ ΠΏΠΎΠΌΠΎΡ‰Π½ΠΈΠΊΠΎΠΌ Π² тСстировании.

Π§Ρ‚ΠΎ хранят cookie

Допустим, ΠΌΡ‹ зашли Π½Π° сайт ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° ошСйников для собак ΠΈ Π²Ρ‹Π±Ρ€Π°Π»ΠΈ французский язык (ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ ΠΈ Π½Π΅Ρ‚). Π”ΠΎΠ±Π°Π²ΠΈΠ»ΠΈ Π² ΠΊΠΎΡ€Π·ΠΈΠ½Ρƒ ΠΏΠ°Ρ€Ρƒ шлССк ΠΈ ΠΏΠΎΠ²ΠΎΠ΄ΠΎΠΊ. Π§Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚, Ссли ΠΌΡ‹ Π·Π°ΠΊΡ€ΠΎΠ΅ΠΌ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ ΠΈ Π·Π°ΠΉΠ΄Ρ‘ΠΌ Π½Π° сайт снова? Всё останСтся ΠΏΡ€Π΅ΠΆΠ½ΠΈΠΌ: интСрфСйс Π½Π° французском ΠΈ Ρ‚Ρ€ΠΈ Ρ‚ΠΎΠ²Π°Ρ€Π° Π² ΠΊΠΎΡ€Π·ΠΈΠ½Π΅. Магия? НСт, cookie.

Cookie β€” ΠΎΠ΄ΠΈΠ½ ΠΈΠ· инструмСнтов, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΡ‹ΠΉ Ρ„ΠΈΠ½Π³Π΅Ρ€ΠΏΡ€ΠΈΠ½Ρ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² сСти. Π•Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ с Β«ΠΎΡ‚ΠΏΠ΅Ρ‡Π°Ρ‚ΠΊΠΎΠΌ ΠΏΠ°Π»ΡŒΡ†Π°Β», ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π° Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ ΠΏΠΎΠΊΡƒΠΏΠ°Π΅Ρ‚ ошСйник для собаки.

На вашСм устройствС Π΅ΡΡ‚ΡŒ тСкстовый Ρ„Π°ΠΉΠ», Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ содСрТится различная информация ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ сайта β€” cookie. Она хранится для Ρ€Π°Π·Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ, Π² Ρ‚ΠΎΠΌ числС ΠΈ для удобства пользования сайтом. Cookie Π±Ρ‹Π²Π°ΡŽΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ (cookie-сСссии) ΠΈ постоянныС. Π”Π°Π²Π°ΠΉΡ‚Π΅ взглянСм Π½Π° Π½ΠΈΡ… ΠΏΠΎΠ±Π»ΠΈΠΆΠ΅.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ панСль Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π² Chrome ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° Ρ€Π°Π½Π΄ΠΎΠΌΠ½ΡƒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ Π½Π° Β«Π₯Π°Π±Ρ€Π΅Β». Π’ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Network Π½Π°Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ запрос, ΠΈ Π² Ρ…Π΅Π΄Π΅Ρ€Π°Ρ… Π²ΠΈΠ΄ΠΈΠΌ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ΡΡ cookie:

ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊΒ«Π₯Π°Π±Ρ€Β» Π² Chrome

И Π² рСспонсС (ΠΎΡ‚Π²Π΅Ρ‚Π΅) Π²ΠΈΠ΄ΠΈΠΌ cookie:

Set-Cookie: fl=ru; expires=Fri, 25-Feb-2022 08:33:31 GMT; Max-Age=31536000; path=/

Π’ΡƒΡ‚ ΡƒΠΆΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π»ΠΎΠ³ΠΈΠΊΠ° ΠΈ Google (Ссли ΠΎΡ‡Π΅Π½ΡŒ Π½ΡƒΠΆΠ½ΠΎ): cookie Ρ‚ΠΈΠΏΠ° fl=ru (ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€, вСроятно, ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‰ΠΈΠΉ Π·Π° язык) ΠΈΠ»ΠΈ Ρ‚Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ хранят Ρ‚ΠΎΠ²Π°Ρ€Ρ‹ Π² ΠΊΠΎΡ€Π·ΠΈΠ½Π΅ β€” постоянныС cookie. Они Π½Π΅ ΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΈΡ… Π½Π΅ Ρ‚Ρ€ΠΎΠ³Π°Π΅Ρ‚. Нас ΠΆΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π΅ΡΡƒΡŽΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΈΠ»ΠΈ сСссионныС cookie. Они хранят ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, которая ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ сайту ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это всё Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ сСссии.

НапримСр, ΠΏΡ€ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° сайтС, Π² Ρ„Π°ΠΉΠ» cookie проставляСтся условный session_id β€” ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ сСссии Π½Π° Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ привязаны Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ.

Когда ΠΌΡ‹ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π΅ΠΌ дСйствия, доступныС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ этому ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ, ΠΌΡ‹ отправляСм Π² Ρ…Π΅Π΄Π΅Ρ€ запроса (Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ запроса, Π² Π½Π΅Π³ΠΎ пСрСдаётся способ общСния с сСрвСром) ΠΈ Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ локально сохранили Π² cookie, Ρ‡Ρ‚ΠΎΠ± ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ это ΠΌΡ‹, Π° Π½Π΅ условный программист ΠΈΠ· Ѐинляндии. Π’Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ cookie ΠΈΠΌΠ΅ΡŽΡ‚ срок годности ΠΈ ΡΡ‚ΠΈΡ€Π°ΡŽΡ‚ΡΡ Π² ΠΊΠΎΠ½Ρ†Π΅ сСссии, ΠΈΠ»ΠΈ становятся Π½Π΅Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ с Ρ‚Π΅Ρ‡Π΅Π½ΠΈΠ΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ.

Как ΠΏΠΎΠ½ΡΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ваши Π΄Π°Π½Π½Ρ‹Π΅ Π² опасности

Если Ρ…Π°ΠΊΠ΅Ρ€Ρƒ удастся ΡƒΠ³Π½Π°Ρ‚ΡŒ cookie ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‚ΠΎ ΠΎΠ½ смоТСт Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΡ‚ Π΅Π³ΠΎ Π»ΠΈΡ†Π° ΠΈΠ»ΠΈ ΠΆΠ΅ просто ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΡŽΠ·Π΅Ρ€Π°. Как ΡƒΠ·Π½Π°Ρ‚ΡŒ, всё Π»ΠΈ впорядкС?

Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Π½Π΅ хранятся Π»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ ΠΎΡ‚ сайтов Π² cookie. Π£Π΄ΠΈΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ, Π½ΠΎ Π² 2021 Π³ΠΎΠ΄Ρƒ Π΄ΠΎ сих ΠΏΠΎΡ€ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ сайты, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ это Π΄Π΅Π»Π°ΡŽΡ‚. Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡ ΠΎ сСссиях Π΄ΠΎΠ»ΠΆΠ½Π° ΠΈΠΌΠ΅Ρ‚ΡŒ ограничСния β€” Π±Ρ‹Ρ‚ΡŒ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ с ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π½ΠΎΠ²ΠΎΠΉ сСссиСй.

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ всС ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ cookie Π±Ρ‹Π»ΠΈ с Ρ„Π»Π°Π³ΠΎΠΌ httpOnly ΠΈ secure.

Cookie с Ρ„Π»Π°Π³ΠΎΠΌ β€œsecure” ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ Π½Π° сСрвСр Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ HTTPS. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π² этом случаС Π΅ΡΡ‚ΡŒ сСртификат SSL ΠΈΠ»ΠΈ TLS. Cookie с Ρ„Π»Π°Π³ΠΎΠΌ β€œhttpOnly” Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Ρ‹ ΠΎΡ‚ манипуляции JavaScript Ρ‡Π΅Ρ€Π΅Π· Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚, Π³Π΄Π΅ хранятся cookie.

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Π² Chrome «инструмСнты Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Β» ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Application.

ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡΠ΅ΠΌ, Π½Π΅ хранятся Π»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π² LocalStorage Π² этом ΠΆΠ΅ Ρ€Π°Π·Π΄Π΅Π»Π΅ «инструмСнтов Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°Β».

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим сцСнарии ΠΊΡ€Π°ΠΆΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΊΠ°ΠΊ ΠΎΡ‚ Π½ΠΈΡ… Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ.

HTTP ΠΈ HTTPS

Гуляя ΠΏΠΎ сайтам ΠΌΡ‹ Π΄ΠΎ сих ΠΏΠΎΡ€ встрСчаСм прСдупрСТдСния Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ² ΠΎ Β«Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Ρ‘Π½Π½ΠΎΠΌ соСдинСнии». Иногда строгий Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ пускаСт нас Π½Π° сайт, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ…ΠΎΡ‡Π΅Ρ‚ нСсти Π·Π° Π½Π΅Π³ΠΎ ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒ. А Ρ‡Π΅Π³ΠΎ ΠΎΠ½ боится?

А боится ΠΎΠ½ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP β€” ΠΎΠ½ Π΄Ρ€Π΅Π²Π½ΠΈΠΉ ΠΈ нСбСзопасный. ВсС соврСмСнныС сайты ΠΎΠ±Ρ‰Π°ΡŽΡ‚ΡΡ ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ HTTPS ΠΈ Π²ΠΎΡ‚ ΠΈΡ… Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π»ΡŽΠ±ΠΈΡ‚. Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ HTTP ΠΈ HTTPS всСго Π² ΠΎΠ΄Π½ΠΎΠΉ Π±ΡƒΠΊΠ²Π΅, Π½ΠΎ эта Π±ΡƒΠΊΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΠΌΠ½ΠΎΠ³ΠΎ β€” Β«SecureΒ». Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… β€” Π³Π»Π°Π²Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ соврСмСнных Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ΠΎΠ².

Π‘Π°ΠΉΡ‚Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Ρ‰Π°ΡŽΡ‚ΡΡ с сСрвСром ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ HTTPS, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ сСртификат TLS (Π΅Π³ΠΎ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΈΠΊ β€” SSL). Π’Π°ΠΊΠΎΠΉ сСртификат ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Ρ‰ΠΈΡ‰Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΠ΄ΠΈΠ½ Π΄ΠΎΠΌΠ΅Π½, Ρ‚Π°ΠΊ ΠΈ Π³Ρ€ΡƒΠΏΠΏΡƒ ΠΏΠΎΠ΄Π΄ΠΎΠΌΠ΅Π½ΠΎΠ².

ВСрнёмся Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½ β€” ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠ»ΠΈ всё-Ρ‚Π°ΠΊΠΈ ΠΊΡƒΠΏΠΈΡ‚ΡŒ ошСйник своСй собакС. ΠŸΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ Π² ΠΊΠΎΡ€Π·ΠΈΠ½Ρƒ, Π²Π²ΠΎΠ΄ΠΈΠΌ Π΄Π°Π½Π½Ρ‹Π΅ банковской ΠΊΠ°Ρ€Ρ‚Ρ‹ для ΠΎΠΏΠ»Π°Ρ‚Ρ‹, Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ Π½Π° Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ ΠΊΠ½ΠΎΠΏΠΊΡƒ Β«ΠžΠΏΠ»Π°Ρ‚ΠΈΡ‚ΡŒΒ» ΠΈ наши Π΄Π°Π½Π½Ρ‹Π΅ ΡƒΠ»Π΅Ρ‚Π°ΡŽΡ‚ Π½Π° сСрвСр для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ запроса. Допустим, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ Ρ€Π΅ΡˆΠΈΠ»ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ нашСй банковской ΠΊΠ°Ρ€Ρ‚Ρ‹ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠΈ запроса.

Если сайт общаСтся ΠΏΠΎ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Ρƒ HTTPS, Ρ‚ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΌΠ°Π³Π°Π·ΠΈΠ½ΠΎΠΌ ΠΈ сСрвСром построСн бСзопасный «мост». SSL-сСртификат позволяСт ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ нашСй ΠΊΠ°Ρ€Ρ‚Ρ‹ ΠΈ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ΅Ρ‚ ΠΈΡ… Π² Π½Π΅Ρ‡ΠΈΡ‚Π°Π΅ΠΌΡ‹ΠΉ Π½Π°Π±ΠΎΡ€ символов.

На этом ΠΌΠΎΠΌΠ΅Π½Ρ‚Π΅ всС Ρ…Π°ΠΊΠ΅Ρ€Ρ‹ ΠΌΠΈΡ€Π° грустят, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сСрвСр. На Π½Ρ‘ΠΌ Π΅ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ Π΄Π΅ΡˆΠΈΡ„Ρ€Π°Ρ‚ΠΎΡ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΡ‹ Π²Π²Π΅Π»ΠΈ Π½Π° сайтС ΠΈ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ ΠΈΡ… ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ ΠΊΡ€Π°ΠΆΠΈ Π΄Π°Π½Π½Ρ‹Ρ…, ΡƒΠ±Π΅Π΄ΠΈΡ‚Π΅ΡΡŒ:

Π§Ρ‚ΠΎ сайт общаСтся Ρ‡Π΅Ρ€Π΅Π· HTTPS, Π° Π½Π΅ Ρ‡Π΅Ρ€Π΅Π· HTTP.

Π•ΡΡ‚ΡŒ Ρ€Π΅Π΄ΠΈΡ€Π΅ΠΊΡ‚ с http:// Π½Π° https:// β€” Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ссылку с http://, Ρ‚ΠΎΠ³Π΄Π° Π΄Π°Π½Π½Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ³Π½Π°Ρ‚ΡŒ. Π Π΅Π΄ΠΈΡ€Π΅ΠΊΡ‚ насильно ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π½Π° https:// Ρ€Π°Π΄ΠΈ Π΅Π³ΠΎ ΠΆΠ΅ Π±Π»Π°Π³Π°. И всС счастливы.

Brute force Π°Ρ‚Π°ΠΊΠΈ

Допустим, Π² нашСм любимом ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅ ошСйников для ΠΏΠΈΡ‚ΠΎΠΌΡ†Π΅Π² Π΅ΡΡ‚ΡŒ Π°Π΄ΠΌΠΈΠ½ΠΊΠ°. Π’Π»Π°Π΄Π΅Π»Π΅Ρ† сайта Ρ€Π΅ΡˆΠΈΠ» ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ссылку Π°Π΄ΠΌΠΈΠ½ΠΊΠΈ ΠΏΠΎ адрСсу β€œhttps:// […].com/admin”. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎ этому адрСсу ΠΈ Π΅Π³ΠΎ ΠΆΠ΄Ρ‘Ρ‚ страница Π²Ρ…ΠΎΠ΄Π° Π² панСль администратора. Допустим, наш Ρ…Π°ΠΊΠ΅Ρ€ Π²Π²ΠΎΠ΄ΠΈΡ‚ Π»ΠΎΠ³ΠΈΠ½ Β«adminΒ», Π° ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΏΠΎΠ΄Π±ΠΈΡ€Π°Π΅Ρ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ скрипта, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сам Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ.

Если Π»ΠΎΠ³ΠΈΠ½ Π²Π΅Ρ€Π½Ρ‹ΠΉ, Ρ‚ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π΄Π΅Π»ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… часов. Запустил скрипт Π½Π° Π½ΠΎΡ‡ΡŒ, Π»Ρ‘Π³ ΡΠΏΠ°Ρ‚ΡŒ, Π° ΡƒΡ‚Ρ€ΠΎΠΌ ΡƒΠΆΠ΅ Π΅ΡΡ‚ΡŒ доступ ΠΊ ΠΏΠ°Π½Π΅Π»ΠΈ администратора. Π’Π°ΠΊΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π±ΠΎΡ€ ΠΈ Π΅ΡΡ‚ΡŒ brute force Π°Ρ‚Π°ΠΊΠ°.

Π—Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ Π²Π·Π»ΠΎΠΌΠ° ΠΌΠΎΠΆΠ½ΠΎ нСсколькими способами (ΠΏΡ€ΠΎ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ/Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΈ oauth2 ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½ΠΈΠΆΠ΅). Но, Ссли Ρ€Π΅Ρ‡ΡŒ ΠΈΠ΄Ρ‘Ρ‚ ΠΎ brute force Π°Ρ‚Π°ΠΊΠ΅, Ρ‚ΠΎ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ°Ρ Π·Π°Ρ‰ΠΈΡ‚Π° Ρ‚ΡƒΡ‚ β€” установка Π»ΠΈΠΌΠΈΡ‚Π° Π½Π° ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Π²Π²ΠΎΠ΄Π° пароля.

Π›ΠΈΠΌΠΈΡ‚Ρ‹ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ Π² зависимости ΠΎΡ‚ спСцифики ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹:

ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ число ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ Π² Π΅Π΄ΠΈΠ½ΠΈΡ†Ρƒ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ;

ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ число ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ с ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с восстановлСниСм доступа Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΡ‡Ρ‚Ρƒ ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠΈ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈΡΡŒ);

установлСниС Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° послС n ΠΏΠΎΠΏΡ‹Ρ‚ΠΎΠΊ Π²Π²ΠΎΠ΄Π°.

ЕстСствСнно, это Π½Π΅ ΠΈΠ·Π±Π°Π²ΠΈΡ‚ ΠΎΡ‚ всСх ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Π½ΠΎ сильно услоТнит Тизнь Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ.

Π’ΠΎΠΊΠ΅Π½Ρ‹ ΠΈ сСссии

Π”Π°Π²Π°ΠΉΡ‚Π΅ прСдставим, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ Π·Π°Ρ…ΠΎΡ‚Π΅Π»ΠΈ Π²ΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ Π² Ρ‚Π°ΠΉΠ½Ρ‹ΠΉ ΠΊΠ»ΡƒΠ± Π»ΡŽΠ±ΠΈΡ‚Π΅Π»Π΅ΠΉ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΈΠ³Ρ€. Π’ΡƒΠ΄Π° просто Ρ‚Π°ΠΊ Π½Π΅ ΠΏΠΎΠΏΠ°ΡΡ‚ΡŒ. Π‘Π½Π°Ρ‡Π°Π»Π° Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΠΌ Π½Π° Ρ€ΠΎΠ»ΡŒ Ρ‡Π»Π΅Π½Π° ΠΊΠ»ΡƒΠ±Π° β€” любим настолки.

Π˜Ρ‚Π°ΠΊ, Π² ΠΊΠ»ΡƒΠ±Π΅ Π·Π½Π°ΡŽΡ‚ нашС имя ΠΈ Ρ„Π°ΠΌΠΈΠ»ΠΈΡŽ, ΠΌΡ‹ Π΄ΠΎΠΊΠ°Π·Π°Π»ΠΈ, Ρ‡Ρ‚ΠΎ любим ΠΈΠ³Ρ€Ρ‹, ΠΈ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ Π²Ρ‹Π΄Π°Π΄ΡƒΡ‚ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΉ пропуск, ΠΏΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΌΡ‹ смоТСм ΠΏΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Π·Π΄Π°Π½ΠΈΠ΅ Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡƒΠ±Π°. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· Π΄ΠΎΠΊΠ°Π·Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ β€” это ΠΌΡ‹. Π£ нас Π΅ΡΡ‚ΡŒ Π²ΠΎΠ»ΡˆΠ΅Π±Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡-пропуск, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ Π΄Π²Π΅Ρ€ΠΈ Ρ‚Π°ΠΉΠ½ΠΎΠ³ΠΎ ΠΊΠ»ΡƒΠ±Π°.

А Ρ‡Ρ‚ΠΎ Π±ΡƒΠ΄Π΅Ρ‚, Ссли наш пропуск-ΠΊΠ»ΡŽΡ‡ ΡƒΠΊΡ€Π°Π΄ΡƒΡ‚? По Π½Π΅ΠΌΡƒ просто Π²ΠΎΠΉΠ΄ΡƒΡ‚ Π² Π·Π΄Π°Π½ΠΈΠ΅ ΠΈ ΡƒΠ·Π½Π°ΡŽΡ‚ всС сСкрСты Π·Π°ΠΊΡ€Ρ‹Ρ‚ΠΎΠ³ΠΎ ΠΊΠ»ΡƒΠ±Π°. Π’ΠΎΠΊΠ΅Π½Ρ‹ сСссии β€” это ΠΊΠ»ΡŽΡ‡ΠΈ ΠΊ рСсурсам нашСго сайта. Когда ΠΌΡ‹ логинимся Π½Π° сайтС, ΠΌΡ‹ отправляСм запрос Π½Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ/Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ. На сСрвСрС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ΡΡ Π΅Π³ΠΎ ΠΏΡ€Π°Π²Π° ΠΈ гСнСрируСтся Ρ‚ΠΎΠΊΠ΅Π½.

Access-token опрСдСляСт ΠΏΡ€Π°Π²Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ рСсурсов для Π½Π΅Π³ΠΎ. Выглядит ΠΎΠ½ ΠΊΠ°ΠΊ Π΄Π»ΠΈΠ½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ символов. МоТно ΡΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½ β€” Ρ‚ΠΎΡ‚ самый пропуск, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π°ΠΌ Π²Ρ‹Π΄Π°Π»ΠΈ Π² нашСм Ρ‚Π°ΠΉΠ½ΠΎΠΌ ΠΊΠ»ΡƒΠ±Π΅.

ΠŸΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ ΠΊ рСсурсам Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π°ΠΌ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, Ρ‡Ρ‚ΠΎΠ± Π΄ΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΈΠΌΠ΅Π΅ΠΌ ΠΏΡ€Π°Π²ΠΎ Π½Π° доступ. ΠŸΡ€ΠΎΡΡ‚ΠΎ Π² ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ запросС Π½Π° ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΉ рСсурс отправляСм наш пропуск β€” access-token.

Π₯ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΈ частой ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ являСтся использованиС врСмя ΠΆΠΈΠ·Π½ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π°. ПослС Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ формирования access-Ρ‚ΠΎΠΊΠ΅Π½Π°, фиксируСтся врСмя ΠΆΠΈΠ·Π½ΠΈ – Π΄Π°Ρ‚Π°, Π΄ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ‚ΠΎΠΊΠ΅Π½ считаСтся Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ. Π­Ρ‚ΠΎ ΠΊΠ°ΠΊ Π°Π±ΠΎΠ½Π΅ΠΌΠ΅Π½Ρ‚ Π½Π° мСсяц Π² Ρ‚Π°ΠΉΠ½Ρ‹ΠΉ ΠΊΠ»ΡƒΠ±.

На Ρ€Π°Π·Π½Ρ‹Ρ… рСсурсах, трСбования ΠΊΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΆΠΈΠ·Π½ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π° Ρ€Π°Π·Π½Ρ‹Π΅. На ΠΎΠ΄Π½ΠΎΠΌ сайтС Ρ‚ΠΎΠΊΠ΅Π½ ΠΆΠΈΠ²Ρ‘Ρ‚ Π³ΠΎΠ΄, Π° Π½Π° Π΄Ρ€ΡƒΠ³ΠΎΠΌ β€” всСго лишь час. ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ срок дСйствия Ρ‚ΠΎΠΊΠ΅Π½Π° истСчёт, систСма попросит ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ снова Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ всё врСмя Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ послС истСчСния access-Ρ‚ΠΎΠΊΠ΅Π½Π°, ΠΏΡ€ΠΈΠ΄ΡƒΠΌΠ°Π»ΠΈ refresh-Ρ‚ΠΎΠΊΠ΅Π½.

Π£ refresh-Ρ‚ΠΎΠΊΠ΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° Ρ†Π΅Π»ΡŒ β€” ΠΎΠ±Π½ΠΎΠ²Π»ΡΡ‚ΡŒ access-Ρ‚ΠΎΠΊΠ΅Π½. Π­Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Ρ‚Π°ΠΊ:

отправляСм запрос Π½Π° Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ рСсурс с ΠΈΡΡ‚Π΅ΠΊΡˆΠΈΠΌ аксСсс-Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ;

сСрвСр Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΎ Β«ΠΏΡ€ΠΎΡ‚ΡƒΡ…ΡˆΠ΅ΠΌΒ» Ρ‚ΠΎΠΊΠ΅Π½Π΅;

ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π²ΠΈΠ΄ΠΈΡ‚ эту ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΈ сразу Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ запрос Π½Π° ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ аксСсс-Ρ‚ΠΎΠΊΠ΅Π½Π°;

Π² Ρ…Π΅Π΄Π΅Ρ€Ρ‹ этого запроса проставляСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Ρ€Π΅Ρ„Ρ€Π΅Ρˆ-Ρ‚ΠΎΠΊΠ΅Π½Π°;

сСрвСр свСряСт Ρ€Π΅Ρ„Ρ€Π΅Ρˆ-Ρ‚ΠΎΠΊΠ΅Π½ с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…, Ρ„ΠΎΡ€ΠΌΠΈΡ€ΡƒΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ аксСсс-Ρ‚ΠΎΠΊΠ΅Π½ ΠΈ отправляСт Π΅Π³ΠΎ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ Π½Π° ΠΊΠ»ΠΈΠ΅Π½Ρ‚;

ΠΊΠ»ΠΈΠ΅Π½Ρ‚ автоматичСски повторяСт запрос Π½Π° Π·Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ рСсурс ΡƒΠΆΠ΅ с Π½ΠΎΠ²Ρ‹ΠΌ аксСсс-Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ.

Π“ΠΎΡ‚ΠΎΠ²ΠΎ! А ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ сайта Π΄Π°ΠΆΠ΅ Π½ΠΈΡ‡Π΅Π³ΠΎ Π½Π΅ ΡƒΠ²ΠΈΠ΄Π΅Π»ΠΈ ΠΈ Π½Π΅ поняли. Как этим ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ…Π°ΠΊΠ΅Ρ€Ρ‹?

Access- ΠΈ refresh-Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ – это Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ сСссии. Если Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ удастся ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ ΠΈΡ…, Ρ‚ΠΎ ΠΎΠ½ Π΄ΠΎΠΊΠ°ΠΆΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ ΠΎΠ½ β€” это ΠΌΡ‹, просто подставив Π² запрос. Он ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ доступ ΠΊ нашим рСсурсам ΠΈ смоТСт ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ дСйствия ΠΎΡ‚ нашСго ΠΈΠΌΠ΅Π½ΠΈ.

Π§Ρ‚ΠΎΠ±Ρ‹ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ, Π½ΡƒΠΆΠ½ΠΎ:

ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ сСссии Π½Π΅ хранятся Π² Ρ„Π°ΠΉΠ»Π°Ρ… Cookie ΠΈΠ»ΠΈ LocalStorage;

ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ всС запросы с Ρ‚ΠΎΠΊΠ΅Π½Π°ΠΌΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ HTTPS;

ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ доступа ΠΊ рСсурсу Π±Π΅Π· ΠΏΡ€Π΅Π΄ΡŠΡΠ²Π»Π΅Π½ΠΈΡ Ρ‚ΠΎΠΊΠ΅Π½Π° β€” ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ запрос Π±Π΅Π· Ρ‚ΠΎΠΊΠ΅Π½Π°;

ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π½Π΅Ρ‚ доступа с Ρ‡ΡƒΠΆΠΈΠΌ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ запросы с Π½Π΅ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΌ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ;

ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ запросы с ΠΈΡΡ‚Π΅ΠΊΡˆΠΈΠΌ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ;

ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π²Ρ€ΡƒΡ‡Π½ΡƒΡŽ врСмя ΠΆΠΈΠ·Π½ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π° (ΠΏΡ€ΠΎΠ΄Π»ΠΈΡ‚ΡŒ/ΠΏΡ€ΠΎΡΡ€ΠΎΡ‡ΠΈΡ‚ΡŒ);

ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ access-token Ρ‚ΠΎΠΊΠ΅Π½ ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ запрос.

Авторизация ΠΈ аутСнтификация

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ систСмС ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ с Π½Π΅ΠΉ Ρ€Π°Π·Π½Ρ‹ΠΌ ролям ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ (Π°Π΄ΠΌΠΈΠ½Ρ‹, ΠΌΠΎΠ΄Π΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹ ΠΈ Ρ‚.Π΄.), Π²Π°ΠΆΠ½ΠΎ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ‚ΡŒ различия ΠΌΠ΅ΠΆΠ΄Ρƒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠ΅ΠΉ.

АутСнтификация β€” это ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° Π½Π° соотвСтствиС заявлСнного ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ (паспорта) с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠΌ Π² систСмС (Π›Π°Π²Ρ€Π΅Π½Ρ‚ΠΈΠΉ ΠšΡƒΠ°ΡˆΠ½ΠΈΠΊΠΎΠ²). Авторизация β€” это прСдоставлСниС Π½Π°ΠΌ ΠΏΡ€Π°Π² Π² соотвСтствии с нашСй Ρ€ΠΎΠ»ΡŒΡŽ Π² систСмС (ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΊΠΎΠΌΠ½Π°Ρ‚Π° для спикСра).

ВСрнёмся ΠΊ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρƒ с Π°Π΄ΠΌΠΈΠ½ΠΊΠΎΠΉ нашСго ΠΌΠ°Π³Π°Π·ΠΈΠ½Π° ошСйников. Π‘Π½ΠΎΠ²Π° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΠΌ ΠΏΠΎ адрСсу Π°Π΄ΠΌΠΈΠ½ΠΊΠΈ ΠΈ нас ΠΆΠ΄Ρ‘Ρ‚ страница с Π²Π²ΠΎΠ΄ΠΎΠΌ Π»ΠΎΠ³ΠΈΠ½Π° ΠΈ пароля. Π›ΠΎΠ³ΠΈΠ½ β€” это ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π² систСмС. ΠŸΠ°Ρ€ΠΎΠ»ΡŒ β€” это Π΄ΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ β€” это ΠΎΠ½ (вСдь Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π½Π°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ).

Когда Π² запросС ΠΌΡ‹ отправляСм эти Π΄Π°Π½Π½Ρ‹Π΅, сСрвСр провСряСт ΠΈΡ… Π½Π° соотвСтствиС β€” это аутСнтификация. Если аутСнтификация ΠΏΡ€ΠΎΡˆΠ»Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Ρ‚ΠΎ сСрвСр смотрит Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° Π½Π°ΡˆΡƒ Ρ€ΠΎΠ»ΡŒ Π² систСмС ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ возмоТности Ρƒ нас Π΅ΡΡ‚ΡŒ β€” это авторизация.

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

А Π΅Ρ‰Ρ‘ наш сСрвСр ΡƒΠΌΠ½Ρ‹ΠΉ, ΠΈ ΠΎΠ½ Π·Π½Π°Π΅Ρ‚, ΠΊΠ°ΠΊ Ρ€Π΅Π°Π³ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ошибки Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ/Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Π£ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ Π΄Π²Π° ΠΊΠΎΠ΄Π° ошибок:

401 β€” Ссли Π»ΠΎΠ³ΠΈΠ½/ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ ΠΈΠ»ΠΈ Ссли для доступа ΠΊ рСсурсу Π½ΡƒΠΆΠ½Π° аутСнтификация;

403 β€” ΠΊΠΎΠ³Π΄Π° сСрвСр понял, Ρ‡Ρ‚ΠΎ Π·Π° ΡŽΠ·Π΅Ρ€ ΠΊ Π½Π΅ΠΌΡƒ ломится, Π½ΠΎ ΠΎΡ‚ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π΅ΠΌΡƒ Π² доступС.

Если Ρ…Π°ΠΊΠ΅Ρ€ Π΄ΠΎΠΊΠ°Π·Π°Π», Ρ‡Ρ‚ΠΎ ΠΎΠ½ β€” это ΠΌΡ‹, Ρ‚ΠΎ систСма ΠΏΡ€ΠΈΠΌΠ΅Ρ‚ Π΅Π³ΠΎ с распростСртыми ΠΎΠ±ΡŠΡΡ‚ΠΈΡΠΌΠΈ. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ доступ ΠΊ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΈ дСйствиям, доступным Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°ΠΌ.

Π‘Π°ΠΌΡ‹ΠΉ простой способ ΠΏΠΎΠΌΠΎΡ‡ΡŒ Ρ…Π°ΠΊΠ΅Ρ€Ρƒ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ Π² систСмС β€” ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π² запросС Π² Π½Π΅Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. Ну ΠΈ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² cookie, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ. Но ΠΌΡ‹ Π½Π΅ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΏΠΎΠΌΠΎΠ³Π°Ρ‚ΡŒ Ρ…Π°ΠΊΠ΅Ρ€Π°ΠΌ. Π’Π°ΠΊ Ρ‡Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ?

Π•ΡΡ‚ΡŒ ряд ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡΠ½ΠΈΠΆΠ°ΡŽΡ‚ Π²Π΅Ρ€ΠΎΡΡ‚Π½ΠΎΡΡ‚ΡŒ Π²Π·Π»ΠΎΠΌΠ°:

ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π΅ хранятся Π² cookie. Π’ΠΎΠΊΠ΅Π½Ρ‹ – хранятся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² httpOnly ΠΊΡƒΠΊΠ°Ρ…;

всС запросы, Π³Π΄Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ авторизация, ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½ΠΎΠΌΡƒ соСдинСнию https.

Π’Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ доступ ΠΊ рСсурсам с кэшСм страницы:

ΠΠ²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ Π² систСмС.

ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Ρ‚Ρƒ ΠΆΠ΅ страницу Π² сосСднСй Π²ΠΊΠ»Π°Π΄ΠΊΠ΅, ΠΏΡ€ΠΈ этом ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΎΠ²Π°Π½.

Π Π°Π·Π»ΠΎΠ³ΠΈΠ½ΡŒΡ‚Π΅ΡΡŒ ΠΈΠ· Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ.

Π’Π΅Ρ€Π½ΠΈΡ‚Π΅ΡΡŒ Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ (кэш сайта ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΅Ρ‰Ρ‘ Π² систСмС).

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° страницу с ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½Ρ‹ΠΌ доступом ΠΈΠ· ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π»ΠΈΡ‡Π½Ρ‹ΠΉ ΠΊΠ°Π±ΠΈΠ½Π΅Ρ‚.

Доступ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π·Π°ΠΏΡ€Π΅Ρ‰Ρ‘Π½. Π’ΠΎ ΠΆΠ΅ самоС ΠΏΡ€ΠΎΠ΄Π΅Π»Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΈ условии, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π½Π΅ просто Π²Ρ‹ΡˆΠ»ΠΈ Π²ΠΎ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅, Π° зашли ΠΏΠΎΠ΄ Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΡƒΡ‡Ρ‘Ρ‚Π½ΠΎΠΉ записью.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅ врСмя ΠΆΠΈΠ·Π½ΠΈ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π² систСмС. МоТно ΠΏΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ врСмя ΠΆΠΈΠ·Π½ΠΈ Π½Π° 3 ΠΌΠΈΠ½ΡƒΡ‚Ρ‹, вмСсто 7 Π΄Π½Π΅ΠΉ. Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ ΠΏΠΎΠΌΠ΅Π½ΡΡ‚ΡŒ врСмя сСрвСра. Но врСмя ΠΆΠΈΠ·Π½ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Π° Π² любом случаС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ.

ΠžΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ запрос Π±Π΅Π· Ρ…Π΅Π΄Π΅Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠžΡ‚ΠΏΡ€Π°Π²ΡŒΡ‚Π΅ запрос с Ρ‡ΡƒΠΆΠΈΠΌΠΈ значСниями ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ запрос с ΠΈΡΡ‚Π΅ΠΊΡˆΠΈΠΌ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ ΠΈΠ»ΠΈ с Ρ‚Π΅ΠΌ ΠΆΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠΌ послС Π»ΠΎΠ³Π°ΡƒΡ‚Π° (послС Π»ΠΎΠ³Π°ΡƒΡ‚Π° Ρ‚ΠΎΠΊΠ΅Π½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΡ‚Π°Ρ‚ΡŒ Π½Π΅Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ).

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π»ΠΎΠ³ΠΈΠ½/ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π½Π΅ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π»ΠΈΡΡŒ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… запроса. ΠŸΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠ½/ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π² ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π°Ρ… http запроса: β€œhttp://site.ru/page.php?login=testqa&password=12345678”.

Π’Π°ΠΊ ΠΆΠ΅ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… систСмах с ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π½Ρ‹ΠΌΠΈ трСбованиями ΠΊ бСзопасности ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ. ΠŸΠ΅Ρ€Π²ΠΎΠ΅, Ρ‡Ρ‚ΠΎ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ, Ρ‚Π°ΠΊ это ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΡŽ ΠΏΡ€ΠΈ смСнС пароля:

ΠΠ²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ Π² систСмС Π² ΠΎΠ΄Π½ΠΎΠΌ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅.

ΠΠ²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ Π² систСмС Π² Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅ (ΠΈΠ»ΠΈ Π²ΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ΅ Β«ΠΈΠ½ΠΊΠΎΠ³Π½ΠΈΡ‚ΠΎΒ»).

Π‘ΠΌΠ΅Π½ΠΈΡ‚Π΅ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π² систСмС Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€.

ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ доступ ΠΊ рСсурсам Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΌ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅.

Π’ΡƒΡ‚ ΠΌΡ‹ провСряСм, достаточно Π»ΠΈ систСмС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ сохранённых Π΄Π°Π½Π½Ρ‹Ρ… Π² cookie. ΠŸΡ€ΠΈ смСнС пароля всС Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌΠΈ.

Π’Ρ‚ΠΎΡ€ΠΎΠ΅: ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡ‚ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Β«Π’Ρ‹Ρ…ΠΎΠ΄ со всСх устройств». ΠŸΡ€ΠΈ этом запросС ΠΌΡ‹ Π³ΠΎΠ²ΠΎΡ€ΠΈΠΌ сСрвСру, Ρ‡Ρ‚ΠΎ Π°Π½Π½ΡƒΠ»ΠΈΡ€ΡƒΠ΅ΠΌ всС Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, ΠΊΡ€ΠΎΠΌΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ.

Π’Ρ€Π΅Ρ‚ΡŒΠ΅: ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ постоянного Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° сСссии (Session-Timeout), ΠΎΠ½ΠΈ Π±Ρ‹Π²Π°ΡŽΡ‚ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… Π²ΠΈΠ΄ΠΎΠ². НаличиС постоянного Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ доступ ΠΊ рСсурсу Ρ‡Π΅Ρ€Π΅Π· n ΠΌΠΈΠ½ΡƒΡ‚ послС Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ. НаличиС динамичСского Ρ‚Π°ΠΉΠΌ-Π°ΡƒΡ‚Π° Π·Π°ΠΏΡ€Π΅Ρ‰Π°Π΅Ρ‚ доступ ΠΊ рСсурсу Ρ‡Π΅Ρ€Π΅Π· n ΠΌΠΈΠ½ΡƒΡ‚ послС послСднСго запроса. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, динамичСский Ρ‚Π°ΠΉ-ΠΌΠ°ΡƒΡ‚ Π·Π°ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ доступ ΠΈΠ·-Π·Π° вашСго бСздСйствия Π² систСмС.

И напослСдок, Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ, доступна Π»ΠΈ двухфакторная аутСнтификация Π½Π° сайтС.

Двухфакторная аутСнтификация

Если Π² вашСй Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ Π΄Π²Π΅Ρ€ΠΈ Π΅ΡΡ‚ΡŒ Π·Π°ΠΌΠΎΠΊ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°, Ρ‚ΠΎ Π³Ρ€Π°Π±ΠΈΡ‚Π΅Π»ΡŽ Π½ΡƒΠΆΠ½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Π° ΠΎΡ‚ΠΌΡ‹Ρ‡ΠΊΠ° (ΠΎΡ‚ΠΌΡ‹Ρ‡ΠΊΠ° ΠΎΠ΄Π½ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ°). Если ΠΆΠ΅ Ρƒ вас Π΅ΡΡ‚ΡŒ Π΅Ρ‰Ρ‘ ΠΈ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ Π·Π°Ρ‰ΠΈΡ‚Π° (Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ°, навСсной Π·Π°ΠΌΠΎΠΊ, собака), Ρ‚ΠΎ Π³Ρ€Π°Π±ΠΈΡ‚Π΅Π»ΡŽ Π±ΡƒΠ΄Π΅Ρ‚ слоТнСС вас ΠΎΠ³Ρ€Π°Π±ΠΈΡ‚ΡŒ. Π‘ΠΊΠΎΡ€Π΅Π΅ всСго ΠΎΠ½ ΠΏΠ΅Ρ€Π΅Π΄ΡƒΠΌΠ°Π΅Ρ‚.

Π’Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ двухфакторная аутСнтификация. Π£ нас Π΅ΡΡ‚ΡŒ основной Π·Π°ΠΌΠΎΠΊ β€” Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. И Ρƒ нас Π΅ΡΡ‚ΡŒ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ‚ΠΈΠΏ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ β€” Ρ‡Π°Ρ‰Π΅ всСго это ΠΊΠΎΠ΄, приходящий ΠΏΠΎ SMS, элСктронной ΠΏΠΎΡ‡Ρ‚Π΅ ΠΈΠ»ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π΄Π²ΡƒΡ…Ρ„Π°ΠΊΡ‚ΠΎΡ€Π½ΠΎΠΉ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Google Authenticator).

Π•Ρ‰Ρ‘ Π½Π΅ΠΏΠ»ΠΎΡ…ΠΎΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ являСтся использованиС Π½Π° сайтС ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° oAuth2. ΠŸΡ€ΠΎΡΡ‚Ρ‹ΠΌΠΈ словами, oAuth2 β€” это ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ авторизуСмся Π² ΠΎΠ΄Π½ΠΎΠΌ сСрвисС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ. НапримСр, ΠΊΠΎΠ³Π΄Π° рСгистрируСмся/логинимся Π½Π° сайтС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Gmail.

ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊΠ‘Ρ…Π΅ΠΌΠ° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ oAuth2

SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΈ ΠΊΠΎΠ΄Π°

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ углубимся Ρ‡Π΅Ρ€Π΅Π· Π΅Ρ‰Ρ‘ ΠΎΠ΄Π½Ρƒ аналогию. Допустим, ΠΌΡ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅ΠΌ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π½Ρ‚ΠΎΠΌ Π² элитном рСсторанС. Гости пСриодичСски просят ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ состав блюд. ΠžΡ„ΠΈΡ†ΠΈΠ°Π½Ρ‚ ΠΎΡ‚ΠΌΠ΅Ρ‡Π°Π΅Ρ‚, ΠΊΠ°ΠΊΠΈΠ΅ измСнСния внСсти Π² мСню.

НСдобросовСстный ΠΎΡ„ΠΈΡ†ΠΈΠ°Π½Ρ‚ Π°Π½Π°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ ΠΏΠΎΠ½ΠΈΠΌΠ°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½Π° ΠΊΡƒΡ…Π½Π΅ Π½Π΅ раздумывая Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ любой запрос. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ ΠΌΠΎΠΆΠ½ΠΎ внСсти свои собствСнныС измСнСния Π² Π·Π°ΠΊΠ°Π· ΠΈ ΠΏΠΎΠ²Π°Ρ€Π° Π±Π΅Π·ΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΎΡ‡Π½ΠΎ приготовят блюдо. И ΠΎΠ½ ΠΏΠΈΡˆΠ΅Ρ‚ Π½Π° ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΌ Ρ€Π΅Ρ†Π΅ΠΏΡ‚Π΅:

Β«Π”ΠžΠ‘ΠΠ’Π˜Π’Π¬ ΠΏΠ΅Ρ€Π΅Ρ† И УБРАВЬ сахар».

Π’ΠΎΡ‚ ΠΈ всё. ΠŸΡ€Π°Π½ΠΊ удался. Но ΠΌΡ‹ Π½Π° сторонС Π΄ΠΎΠ±Ρ€Π°, Ρ‚Π°ΠΊ Ρ‡Ρ‚ΠΎ вмСсто Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ Π·Π°ΠΊΠ°Π·, ΠΌΡ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ, ΠΊΠ°ΠΊ Π½Π° ΠΊΡƒΡ…Π½Π΅ ΡƒΠΌΠ΅ΡŽΡ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€ΠΎΠ²Π°Ρ‚ΡŒ измСнСния. Как этим ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ…Π°ΠΊΠ΅Ρ€Ρ‹? SQL injection β€” это Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠ΅ внСсСниС Π² Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ·Π²Π½Π΅. Π’ нашСм ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅, кухня β€” это Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…. SQL-запросы β€” Π·Π°ΠΊΠ°Π·Ρ‹ ΠΎΡ‚ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π½Ρ‚ΠΎΠ².

ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ запросы уходят с ΠΊΡƒΠΊΠ°ΠΌΠΈ Π° ΠΊΠ°ΠΊΠΈΠ΅ Π±Π΅Π· ΠΊΡƒΠΊΠ‘Ρ…Π΅ΠΌΠ° зараТСния

Если Ρƒ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅Ρ‚ Ρ„ΠΈΠ»ΡŒΡ‚Ρ€Π°Ρ†ΠΈΠΈ запросов, Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹ΠΌΠΈ: ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ (Π² Ρ‚ΠΎΠΌ числС Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ), Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹, Π·Π°ΠΌΠ΅Π½ΡΡ‚ΡŒ значСния. Как ΠΆΠ΅ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ Ρ‚Π°ΠΊΠΈΠ΅ запросы? Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ HTTP, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π² адрСсной строкС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹:

β€œhttp://some.site.ru/test/index.php?name=1β€² UNION SELECT 1,2,3,4,5 β€”+ &password=1234”

НС ΡƒΠ³Π»ΡƒΠ±Π»ΡΡΡΡŒ Π² Ρ‚ΠΎ, ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ сами ΠΏΠΎΠΏΡ€ΠΎΠ±ΠΎΠ²Π°Ρ‚ΡŒ Ρ…Π°ΠΊΠ½ΡƒΡ‚ΡŒ свою Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ…, разбСрёмся Π² ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°Ρ… уязвимости ΠΈ посмотрим, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ.

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

Π’ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, провСряСм, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΈ Π½Π°ΠΌΠ΅Ρ€Π΅Π½ΠΎ ΠΊΡ€ΠΈΠ²ΠΎΠΌ запросС Π½Π΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ ошибки, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π²Ρ‹Π²ΠΎΠ΄Ρ‹ ΠΎ составС Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. НапримСр, ошибка β€œUnknown column β€˜4’ in β€˜order clause’” Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ΡΡ ΠΏΠΎ Ρ‚Ρ€Ρ‘ΠΌ ΠΊΠΎΠ»ΠΎΠ½ΠΊΠ°ΠΌ ΠΈΠ»ΠΈ мСньшС.

БСгодня сущСствуСт мноТСство Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠΎΠ² ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ Π·Π°Ρ‰ΠΈΡ‚Ρƒ ΠΎΡ‚ SQL-ΠΈΠ½ΡŠΠ΅ΠΊΡ†ΠΈΠΉ. НапримСр, Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° node-mysql для node.js.

XSS Ρ€Π°ΡΡˆΠΈΡ„Ρ€ΠΎΠ²Ρ‹Π²Π°Π΅Ρ‚ΡΡ ΠΊΠ°ΠΊ β€œCross-Site Scripting”. Π­Ρ‚Π° ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² список OWASP TOP-10. Π•Ρ‘ смысл Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ внСдряСт JavaScript-ΠΊΠΎΠ΄ Ρ‡Π΅Ρ€Π΅Π· ΠΈΠ½ΠΏΡƒΡ‚ Π½Π° сайтС: Π² ΠΏΠΎΠ»Π΅ Π²Π²ΠΎΠ΄Π° Β«ΠΏΡƒΡˆΠΈΡ‚Β» ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сохраняСтся Π½Π° страницС. Π’ΠΏΡ€Π΅Π΄ΡŒ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π· ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ страницы. Π­Ρ‚ΠΎ происходит ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ Π½Π° сайтС отсутствуСт экранированиС спСц символов.

Π£ Ρ…Π°ΠΊΠ΅Ρ€Π° ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ этой ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒΡŽ: ΠΎΡ‚ отобраТСния Π°Π»Π΅Ρ€Ρ‚Π° (Π²ΡΠΏΠ»Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ ΠΎΠΊΠ½Π°) с Ρ€Π΅ΠΊΠ»Π°ΠΌΠΎΠΉ Π΄ΠΎ ΠΊΡ€Π°ΠΆΠΈ cookie ΠΈ Ρ€Π΅Π΄ΠΈΡ€Π΅ΠΊΡ‚Π° Π½Π° сайт-Π·Π΅Ρ€ΠΊΠ°Π»ΠΎ.

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ уязвимостСй Π½Π° Ρ‡ΡƒΠΆΠΎΠΌ сайтС ΠΏΠΎ Π·Π°ΠΊΠΎΠ½ΠΎΠ΄Π°Ρ‚Π΅Π»ΡŒΡΡ‚Π²Ρƒ Π Π€ (ΠΈ ΠΌΠ½ΠΎΠ³ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΡ… стран) Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ΠΎ. Π­Ρ‚ΠΎ воспринимаСтся, ΠΊΠ°ΠΊ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π½Π°ΠΌΠ΅Ρ€Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅Π½ΠΈΠ΅ Π²Ρ€Π΅Π΄Π° сайту. И Ρ‡Ρ‚ΠΎ Ρ‚ΠΎΠ³Π΄Π° Π΄Π΅Π»Π°Ρ‚ΡŒ?

ПослС этого ​вводим Π² ΠΈΠ½ΠΏΡƒΡ‚Ρ‹ строку:

Π­Ρ‚ΠΎ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ° сразу Π½Π° нСсколько кСйсов. Если Ρ‡Π°ΡΡ‚ΡŒ символов исчСзла (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΏΠΎΠ»Π΅ поиска) ΠΈΠ»ΠΈ Π½Π΅ записалась Π² Π‘Π” (Ссли это ΠΏΠΎΠ»Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΡ€ΠΈ рСгистрации, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), Ρ‚ΠΎ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π΅ΡΡ‚ΡŒ. ВсС символы Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ исполняСмого поля. Если Ρ‡Π°ΡΡ‚ΡŒ символов исчСзла (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² ΠΏΠΎΠ»Π΅ поиска) ΠΈΠ»ΠΈ Π½Π΅ записалась Π² Π‘Π” (Ссли это ΠΏΠΎΠ»Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΡ€ΠΈ рСгистрации, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€), Ρ‚ΠΎ ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ Π΅ΡΡ‚ΡŒ. ВсС символы Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²ΠΎΡΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒΡΡ, ΠΊΠ°ΠΊ Ρ‡Π°ΡΡ‚ΡŒ исполняСмого поля.

Π’ ΠΊΠΎΠ½Ρ†Π΅ Π²Π²ΠΎΠ΄ΠΈΠΌ скрипт ΠΈΠ»ΠΈ спСцсимволы Π² ΠΎΠΊΠ½ΠΎ Ρ„Ρ€ΠΎΠ½Ρ‚Π΅Π½Π΄Π° β€” вставляСм прям Π² ΠΊΠΎΠ΄ сайта Ρ‡Π΅Ρ€Π΅Π· dev tools Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π΅.

НапутствиС

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

Π”ΡƒΠΌΠ°ΠΉ, ΠΊΠ°ΠΊ Ρ…Π°ΠΊΠ΅Ρ€! ΠŸΡ‹Ρ‚Π°ΠΉΡΡ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π²Ρ‹Π³ΠΎΠ΄Ρƒ ΠΈΠ»ΠΈ Π½Π°Π²Ρ€Π΅Π΄ΠΈΡ‚ΡŒ. Но Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° своём ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π΅. Π‘Π»Π΅Π΄ΠΈ Π·Π° новостями бСзопасности. Π‘ΠΌΠΎΡ‚Ρ€ΠΈ рССстр уязвимостСй, Ρ‡ΠΈΡ‚Π°ΠΉ ΡΡ‚Π°Ρ‚ΡŒΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΈΡˆΡƒΡ‚ Ρ„ΠΈΡ€ΠΌΡ‹ ΠΏΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡Π΅Π½ΠΈΡŽ бСзопасности ΠΈ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΡŒ новости ΠΏΡ€ΠΎ ΡƒΡ‚Π΅Ρ‡ΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ…. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ пытайся Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² сути. И Π±ΡƒΠ΄ΡŒ Π½Π° сторонС Π΄ΠΎΠ±Ρ€Π°!

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

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

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