Skip to main content

V3.2.2 Session Binding

Requirement:#

Verify that session tokens possess at least 64 bits of entropy. (C6)

Explanation:#

Entropy: Энтропия Π² контСкстС бСзопасности ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ ΡΠ»ΡƒΡ‡Π°ΠΉΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π½Π΅ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…. Π’ криптографичСских Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Ρ… энтропия измСряСт количСство Π±ΠΈΡ‚ΠΎΠ² случайности Π² Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π΅ Π΄Π°Π½Π½Ρ‹Ρ…. Π‘ΠΎΠ»Π΅Π΅ высокая энтропия ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π±ΠΎΠ»ΡŒΡˆΡƒΡŽ Π½Π΅ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·ΡƒΠ΅ΠΌΠΎΡΡ‚ΡŒ ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π½ΡƒΡŽ Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ Π°Ρ‚Π°ΠΊ Π½Π° ΡƒΠ³Π°Π΄Ρ‹Π²Π°Π½ΠΈΠ΅.

64 Bits of Entropy: Π’Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сСссионныС Ρ‚ΠΎΠΊΠ΅Π½Ρ‹, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΎΠ±Π»Π°Π΄Π°Ρ‚ΡŒ энтропиСй Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 64 Π±ΠΈΡ‚. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, сСссионныС Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ сгСнСрированы Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΡƒΠΌ 64 Π±ΠΈΡ‚Π° случайности.

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

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

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

Remediation:#

Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠΈ сСссионных Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² с энтропиСй Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 64 Π±ΠΈΡ‚, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ криптографичСски бСзопасный Π³Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ случайных чисСл (CSPRNG).

Π£Π±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ сСссионных Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ криптографичСский Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°. Π“Π΅Π½Π΅Ρ€Π°Ρ‚ΠΎΡ€ случайных чисСл с криптографичСской Π·Π°Ρ‰ΠΈΡ‚ΠΎΠΉ (CSPRNG) ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ для создания нСпрСдсказуСмых ΠΈ случайных Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ энтропии.

  1. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π½ΠΈ энтропии.

ΠŸΠ΅Ρ€ΠΈΠΎΠ΄ΠΈΡ‡Π΅ΡΠΊΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ энтропии Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… сСссионных Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². Для ΠΎΡ†Π΅Π½ΠΊΠΈ случайности Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΈΡ… соотвСтствия Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ 64-разрядной энтропии ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ инструмСнты ΠΈΠ»ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ.

  1. Π”Π»ΠΈΠ½Π° Ρ‚ΠΎΠΊΠ΅Π½Π° ΠΈ Π½Π°Π±ΠΎΡ€ символов.

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

  1. Π˜Π·Π±Π΅Π³Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ»ΠΈ прСдсказуСмых Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².

Π˜Π·Π±Π΅Π³Π°Ρ‚ΡŒ использования ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΈΠ»ΠΈ Π»Π΅Π³ΠΊΠΎ ΡƒΠ³Π°Π΄Ρ‹Π²Π°Π΅ΠΌΡ‹Ρ… сСссионных Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ². ΠŸΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ ΠΈΠ»ΠΈ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ с шаблонами уязвимы для Π°Ρ‚Π°ΠΊ пСрСчислСния, ΠΊΠΎΠ³Π΄Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€Π΅Π΄ΡΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ Π½Π° основС Ρ€Π°Π½Π΅Π΅ ΡƒΠ²ΠΈΠ΄Π΅Π½Π½Ρ‹Ρ… Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².

  1. Ротация Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² сСанса.

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

  1. ΠžΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚ΡŒ использованиС Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².

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

  1. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HTTPS.

Для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ сСссионных Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ ΠΈ сСрвСром всСгда ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» HTTPS. Π­Ρ‚ΠΎ обСспСчиваСт Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡƒΡŽ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Ρƒ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΏΠΎ Π·Π°ΡˆΠΈΡ„Ρ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ соСдинСниям, защищая ΠΈΡ… ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° ΠΈ ΠΏΠΎΠ΄Π΄Π΅Π»ΠΊΠΈ.

  1. БСзопасноС Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ².

БСзопасноС Ρ…Ρ€Π°Π½Π΅Π½ΠΈΠ΅ сСссионных Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² HTTP-only cookies) ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ нСсанкционированный доступ ΠΈ ΠΏΠΎΠ΄Π΄Π΅Π»ΠΊΡƒ со стороны клиСнтских скриптов. Π’Π°ΠΊΠΆΠ΅ слСдуСт ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ раскрытия ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ Ρ‚ΠΎΠΊΠ΅Π½Π°Ρ… Π² URL-адрСсах, ΠΆΡƒΡ€Π½Π°Π»Π°Ρ… ΠΈΠ»ΠΈ сообщСниях ΠΎΠ± ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ….

  1. ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ ΠΈ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ Π°Π½ΠΎΠΌΠ°Π»ΡŒΠ½Ρ‹Ρ… активностСй.

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

  1. РСгулярноС тСстированиС бСзопасности.

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

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ создания сСссионного Ρ‚ΠΎΠΊΠ΅Π½Π° с энтропиСй Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 64 Π±ΠΈΡ‚ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Node.js:

const crypto = require('crypto');
function generateSessionToken() {
return crypto.randomBytes(32).toString('hex');
}

Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ crypto.randomBytes() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Π³Π΅Π½Π΅Ρ€Π°Ρ†ΠΈΠΈ 32 случайных Π±Π°ΠΉΡ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π·Π°Ρ‚Π΅ΠΌ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ΡΡ Π² ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½ΡƒΡŽ строку. Π­Ρ‚ΠΎ обСспСчиваСт ΠΌΠ°Ρ€ΠΊΠ΅Ρ€ сСанса с 64 ΡˆΠ΅ΡΡ‚Π½Π°Π΄Ρ†Π°Ρ‚Π΅Ρ€ΠΈΡ‡Π½Ρ‹ΠΌΠΈ символами, Ρ‡Ρ‚ΠΎ эквивалСнтно 256 Π±ΠΈΡ‚Π°ΠΌ энтропии.

Additional:#

https://owasp.org/www-community/vulnerabilities/Insufficient_Session-ID_Length

https://cheatsheetseries.owasp.org/cheatsheets/Session_Management_Cheat_Sheet.html