НСвидимка Π²ΠΊ авторизация: vkontakte api — VK api — Как ΡΠΊΡ€Ρ‹Ρ‚ΡŒ статус «online» Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ?

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

Π˜ΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ€ StarLine i96CAN: Π·Π°Ρ‰ΠΈΡ‚Π½ΠΈΠΊ-Π½Π΅Π²ΠΈΠ΄ΠΈΠΌΠΊΠ°

by StarLine_news, 12.12.2018

StarLine i96 CANΒ β€” ΡƒΠΌΠ½Ρ‹ΠΉ ΠΈ Π½Π°Π΄Π΅ΠΆΠ½Ρ‹ΠΉ страТ автомобиля. Он распознаёт Π²Π»Π°Π΄Π΅Π»ΡŒΡ†Π° ΠΏΠΎ бСспроводной Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Bluetooth Smart ΠΈ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ ΠΎΡ‚ ΡƒΠ³ΠΎΠ½Π°, блокируя Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ ΠΏΡ€ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π΄Π²ΠΈΠΆΠ΅Π½ΠΈΠ΅ Π±Π΅Π· Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π£ΠΌΠ½ΠΎΠ΅ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ

Π‘ΠΎΠ±ΠΈΡ€Π°Π΅Ρ‚Π΅ΡΡŒ Π² ΠΏΡƒΡ‚ΡŒ? ΠΠ²Ρ‚ΠΎΡ€ΠΈΠ·ΡƒΠΉΡ‚Π΅ΡΡŒ ΠΏΠΎ Bluetooth Smart с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ StarLine ΠΌΠ΅Ρ‚ΠΊΠΈ ΠΈΠ»ΠΈ смартфона с ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌΒ StarLine ΠšΠ»ΡŽΡ‡. Π›ΠΈΠ±ΠΎ вводя ΠΈΠ½Π΄ΠΈΠ²ΠΈΠ΄ΡƒΠ°Π»ΡŒΠ½Ρ‹ΠΉ PIN-ΠΊΠΎΠ΄ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ автомобиля. Для Π΅Ρ‰Π΅ большСй надСТности рСкомСндуСтся ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ способы. ΠŸΡ€ΠΈΠ²ΠΎΠ΄ΠΈΠΌ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π½Π°Π΄Π΅ΠΆΠ½Ρ‹Ρ… Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ²:

БСзопасная Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° двигатСля

Π›ΠΈΡˆΠΈΡ‚Π΅ ΡƒΠ³ΠΎΠ½Ρ‰ΠΈΠΊΠ° Π½Π°ΠΆΠΈΠ²Ρ‹! Π˜ΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ€Β ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π΅Ρ‚ запуск двигатСля ΠΏΠΎ Π±ΠΎΡ€Ρ‚ΠΎΠ²ΠΎΠΌΡƒ Π½Π°ΠΏΡ€ΡΠΆΠ΅Π½ΠΈΡŽ. Благодаря Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈΒ iCAN,Β Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½ ΠΏΠΎ Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ шинС.

Π”Π°ΠΆΠ΅ Ссли Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΏΠΎΠ²Ρ€Π΅Π΄ΠΈΡ‚ CAN-ΡˆΠΈΠ½Ρƒ, ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ€ Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΡƒΠ΅Ρ‚ Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΡŒ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ запуска с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠ³ΠΎ Ρ€Π΅Π»Π΅Β StarLine R4,Β ΠΏΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΎΠ²ΠΎΠΉ Ρ†Π΅ΠΏΠΈ. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄Π±ΠΎΡ€Π° ΠΊΠΎΠ΄ΠΎΠ²ΠΎΠΉ посылки ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½Π°!

Π₯ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ дистанционный запуск Π½Π° своСм Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅? Π£ΠΌΠ½Ρ‹ΠΉΒ StarLine i96CAN позаботится ΠΎΠ± этом: Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° двигатСля Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π½Π°Ρ‡Π°Π»Π΅ двиТСния ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ АКПП, ΠΈΠ»ΠΈ ΠΏΡ€ΠΈ ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠΈ ΠΎΠ±ΠΎΡ€ΠΎΡ‚ΠΎΠ² двигатСля. Π₯озяину β€” ΠΏΠΎΠΌΠΎΠ³Π°Π΅ΠΌ, ΡƒΠ³ΠΎΠ½Ρ‰ΠΈΠΊΡƒ β€” мСшаСм!

Π—Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ силового Π·Π°Ρ…Π²Π°Ρ‚Π°

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

Π—Π°Ρ‰ΠΈΡ‚Π° диагностичСской ΡˆΠΈΠ½Ρ‹

НС Π΄Π°ΠΉΡ‚Π΅ ΡƒΠ³ΠΎΠ½Ρ‰ΠΈΠΊΡƒ ΠΏΡ€ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ свой ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΠΈΠ»ΠΈ Β«Π·Π°ΠΊΠΎΡ€ΠΎΡ‚ΠΈΡ‚ΡŒΒ» CAN-ΡˆΠΈΠ½Ρƒ!Β StarLine i96 CANΒ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ ΠΎΡ‚ нСсанкционированного доступа ΠΊ диагностичСской шинС вашСго автомобиля. Π‘Π»ΠΎΠΊΠΈΡ€ΡƒΠΉΡ‚Π΅ этот Ρ€Π°Π·ΡŠΠ΅ΠΌ всСгда ΠΊΡ€ΠΎΠΌΠ΅ сСрвисного Ρ€Π΅ΠΆΠΈΠΌΠ° ΠΈΠ»ΠΈ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Β«ΠžΡ…Ρ€Π°Π½Π°Β».

Π—Π°Ρ‰ΠΈΡ‚Π° ΠΏΡ€ΠΈ ΠΊΡ€Π°ΠΆΠ΅ ΡˆΡ‚Π°Ρ‚Π½ΠΎΠ³ΠΎ ΠΊΠ»ΡŽΡ‡Π°

Если Ρƒ вас Π² Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»Π΅ Π΅ΡΡ‚ΡŒ функция Π±Π΅ΡΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ доступа Keyless, попроситС мастСра-установщика ввСсти Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π·Π°Ρ‰ΠΈΡ‚Ρ‹ β€”Β Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΡƒ ΡˆΡ‚Π°Ρ‚Π½ΠΎΠ³ΠΎ Ρ€Π°Π΄ΠΈΠΎΠΊΠ°Π½Π°Π»Π° ΠΏΠΎ CAN. Она активируСтся ΠΏΡ€ΠΈ вашСм ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠΈ ΠΎΡ‚ автомобиля. Π—Π»ΠΎΡƒΠΌΡ‹ΡˆΠ΅Π½Π½ΠΈΠΊΠ° ΠΆΠ΄Π΅Ρ‚ Ρ€Π°Π·ΠΎΡ‡Π°Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅: завСсти Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ ΡƒΠΊΡ€Π°Π΄Π΅Π½Π½Ρ‹ΠΌ ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ Π² отсутствиС Bluetooth ΠΌΠ΅Ρ‚ΠΊΠΈ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

Π’Π°ΡˆΠ° экономия Π½Π° КАБКО

Π’Ρ‹Π±Ρ€Π°Π²Β StarLine i96 CAN для своСго автомобиля, Π²Ρ‹ сэкономитС Π½Π° КАБКО до 20%Β ΠΏΠΎ риску Β«Π£Π³ΠΎΠ½/Π₯ΠΈΡ‰Π΅Π½ΠΈΠ΅Β» Π² страховой ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈΒ Β«Π˜Π½Π³ΠΎΡΡΡ‚Ρ€Π°Ρ…Β».Β 

Π—Π°Ρ‰ΠΈΡ‚Π° β€” ΠœΠΠ‘Π’Π•Π ΡΠΊΠΈ!

ВсС Π½ΡŽΠ°Π½ΡΡ‹ Π½ΡƒΠΆΠ½Ρ‹Ρ… Π²Π°ΠΌ настроСк обсудитС со спСциалистом ΠΏΠΎ установкС. АктивируйтС Ρ€Π΅ΠΆΠΈΠΌ Β«Π‘Π²ΠΎΠ±ΠΎΠ΄Π½Ρ‹Π΅ Ρ€ΡƒΠΊΠΈΒ»; Π²Ρ‹Π±Π΅Ρ€ΠΈΡ‚Π΅ ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ условиС Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ двигатСля; ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ Π·Π²ΡƒΠΊΠΎΠ²ΡƒΡŽ ΠΈΠ½Π΄ΠΈΠΊΠ°Ρ†ΠΈΡŽ Π² отсутствиС ΠΌΠ΅Ρ‚ΠΊΠΈ, Ссли Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ присутствиС ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ€Π° Π½Π΅Π·Π°ΠΌΠ΅Ρ‚Π½Ρ‹ΠΌ.

Π‘Β ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ StarLine ΠœΠ°ΡΡ‚Π΅Ρ€ ΠΈ Π²Π°Ρ€ΠΈΠ°Ρ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒΡŽ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΒ Β Π½Π°ΡΡ‚Ρ€ΠΎΠΉΠΊΠ° ΠΈ ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ€Π° β€” просты ΠΈ ΡƒΠ΄ΠΎΠ±Π½Ρ‹. Π’Π°ΡˆΠΈ поТСлания исполнятся Π² считанныС ΠΌΠΈΠ½ΡƒΡ‚Ρ‹!

Π‘ вСрсиСй ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния 1.6.0 доступно Π΅Ρ‰Π΅ большС ΡƒΠΌΠ½Ρ‹Ρ… возмоТностСй для вашСй бСзопасности.ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΡΡ‚ΠΈ β€”Β Π·Π΄Π΅ΡΡŒ. ΠŸΡ€ΠΎΠΊΠΎΠ½ΡΡƒΠ»ΡŒΡ‚ΠΈΡ€ΡƒΠΉΡ‚Π΅ΡΡŒ Ρƒ своСго мастСра-установщика!

ΠžΡ…Ρ€Π°Π½Π° Π΅Ρ‰Π΅ ΡƒΠΌΠ½Π΅Π΅
ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ ΠΈΠΌΠΌΠΎΠ±ΠΈΠ»Π°ΠΉΠ·Π΅Ρ€ ΠΊ маяку, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΎΡ…Ρ€Π°Π½Π½ΠΎ-ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ΠΎΠ²ΠΎΠΌΡƒ StarLine M17Β β€” ΠΈ Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΏΠΎΠ»Π½ΠΎΡ†Π΅Π½Π½Ρ‹ΠΉ ΠΎΡ…Ρ€Π°Π½Π½Ρ‹ΠΉ комплСкс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ сообщит Π½Π° ваш смартфон ΠΎ ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ΅ ΠΏΠΎΠΊΡƒΡˆΠ΅Π½ΠΈΡ Π½Π° Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΡŒ.

Β 

ΠšΠžΠœΠŸΠžΠΠ•ΠΠ’StarLine
i96 CAN
StarLine
i96 CAN LUX
StarLine
i96 CAN ECO
StarLine
i96 CAN SMART
ΠœΠ΅Ρ‚ΠΊΠ° Bluetooth Smart
2 ΡˆΡ‚.
2 ΡˆΡ‚.1 ΡˆΡ‚.
Авторизация ΠΏΠΎ смартфону
Авторизация ΡˆΡ‚Π°Ρ‚Π½Ρ‹ΠΌΠΈ ΠΊΠ½ΠΎΠΏΠΊΠ°ΠΌΠΈ
Π’Π½Π΅ΡˆΠ½Π΅Π΅ Ρ€Π΅Π»Π΅ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ
ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒ запуска двигатСля по Π½Π°ΠΏΡ€ΡΠΆΠ΅Π½ΠΈΡŽ ΠΏΡ€ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ CAN
КодовоС Ρ€Π΅Π»Π΅ StarLine R4Β 
БСспроводной ΠΏΠΎΠ΄ΠΊΠ°ΠΏΠΎΡ‚Π½Ρ‹ΠΉ Π±Π»ΠΎΠΊ StarLine R6Β 
РСкомСндованная розничная Ρ†Π΅Π½Π°10 750 Π 12 350 Π 7 400 Π 6 250 Π 

*Π‘Ρ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ Π°ΠΊΡ‚ΡƒΠ°Π»ΡŒΠ½Π° Π½Π° Π΄Π°Ρ‚Ρƒ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ

StarLine Π½Π°Π΄Π΅ΠΆΠ½ΠΎ Π·Π°Ρ‰ΠΈΡ‰Π°Π΅Ρ‚ с ΡƒΠΌΠΎΠΌ

StarLine ΠŸΠΎΠ±Π΅Π΄ΠΈΡ‚

Category : Новинки

АлСксандра Π‘Ρ‚Π΅ΠΏΠ°Π½ΠΎΠ²Π° | RB.

RU β€” Π½ΠΎΠ²Ρ‹Π΅ Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ, бизнСс ΠΈ ΠΊΠ°Ρ€ΡŒΠ΅Ρ€Π° Π² Ρ†ΠΈΡ„Ρ€ΠΎΠ²ΠΎΠΉ экономикС

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ β€” RB

НайдСно

124 ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π°Π²Ρ‚ΠΎΡ€Π° Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

И ΠΊΠ°ΠΊ наблюдСниС Π·Π° показатСлями влияСт Π½Π° Π·Π΄ΠΎΡ€ΠΎΠ²ΡŒΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

ВстроСнныС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π² Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π°Ρ… ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°Ρ… становятся всС ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½Π½Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π­Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° спСциалистов ΠΈΠ· Facebook ΠΈ УнивСрситСта ΠœΡΡ€ΠΈΠ»Π΅Π½Π΄Π°

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Как Π½Π°ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Β«Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒΒ» людСй ΠΏΠΎ ΠΈΡ… ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡ΠΊΠ°ΠΌ

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

ΠžΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ элСктронныС письма ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‡Π΅Π½ΡŒ эффСктивными

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ пСрСнСсти Π² Google Π€ΠΎΡ‚ΠΎ Π·Π° нСсколько ΠΊΠ»ΠΈΠΊΠΎΠ²

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π‘ΠΎΠ²Π΅Ρ‚Ρ‹ для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ… инвСсторов

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

ЧСловСчСство Π΅Ρ‰Π΅ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Ρ€Π°Π·Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π»ΠΎ ΠΏΡ€ΠΈΠ²ΠΈΠ²ΠΊΠΈ с Ρ‚Π°ΠΊΠΎΠΉ ΡΠΊΠΎΡ€ΠΎΡΡ‚ΡŒΡŽ

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π”Π΅ΠΉΡ‚ΠΈΠ½Π³-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Nanaya Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π° основС ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

Π‘ΠΈΡ‚ΡƒΠ°Ρ†ΠΈΠΈ Π² Ρ€Π°Π±ΠΎΡ‡ΠΈΡ… Ρ‡Π°Ρ‚Π°Ρ… часто Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‚ ссоры ΡΡ‚Π°Ρ€ΡˆΠ΅ΠΊΠ»Π°ΡΡΠ½ΠΈΠΊΠΎΠ²

Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΄Π°Π»Π΅Π΅

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π΅Ρ‰Π΅

Авторизация
Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½ΠΎΠΉ сСти
Или с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ e-mail ΠΈ пароля

E-mail

ΠŸΠ°Ρ€ΠΎΠ»ΡŒ

РСгистрация Π—Π°Π±Ρ‹Π»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ?

РСгистрация Π½Π° Rusbase

Имя

Ѐамилия

E-mail

ΠŸΠ°Ρ€ΠΎΠ»ΡŒ

НаТимая Π½Π° ΠΊΠ½ΠΎΠΏΠΊΡƒ «Π—Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ» я соглашаюсь с условиями ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ соглашСния

Π’Ρ…ΠΎΠ΄

Если Π²Ρ‹ Π·Π°Π±Ρ‹Π»ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ, ΠΌΡ‹ Π²Ρ‹ΡˆΠ»Π΅ΠΌ Π²Π°ΠΌ Π΅Π³ΠΎ Π½Π° ΡΠ»Π΅ΠΊΡ‚Ρ€ΠΎΠ½Π½ΡƒΡŽ ΠΏΠΎΡ‡Ρ‚Ρƒ

Π’Π°Ρˆ email

Π’Ρ…ΠΎΠ΄

Броня ΠΈ характСристики Π’Πš 30.

01 (Н) | Π’Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Armor Inspector

Ρ€Π΅ΠΊΠ»Π°ΠΌΠ° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для участников, Π½Π΅ Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΡ… ΠΏΠΎΠΆΠ΅Ρ€Ρ‚Π²ΠΎΠ²Π°Π½ΠΈΠΉ,Β ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΏΠΎΡ‡Π΅ΠΌΡƒ

Ρ†Π΅Π»ΡŒ

объявлСния ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для участников, Π½Π΅ Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΡ… поТСртвования,Β ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΏΠΎΡ‡Π΅ΠΌΡƒ

страна

объявлСния ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для участников, Π½Π΅ Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΡ… поТСртвования,Β ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΏΠΎΡ‡Π΅ΠΌΡƒ

информация

Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ инспСктор Π±Ρ€ΠΎΠ½ΠΈ

Π˜Π½ΡΠΏΠ΅ΠΊΡ‚ΠΎΡ€ Π±Ρ€ΠΎΠ½ΠΈ — это ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ для ΠΈΠ³Ρ€Ρ‹ World of Tanks, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ вСрсии для ПК, Blitz ΠΈ Console. Armor Inspector доступСн ΠΎΠ½Π»Π°ΠΉΠ½, Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах iOS/Android ΠΈ Π½Π° ПК.

Armor Inspector ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π°ΠΌ ΠΌΠΎΠ΄Π΅Π»ΠΈ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρ‹ Π±Ρ€ΠΎΠ½ΠΈ (ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠΎΠ»Π»ΠΈΠ·ΠΈΠΉ World of Tanks), ΠΎΡ‚ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ располоТСниС экипаТа ΠΈ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π±ΠΎΠ΅ΡƒΠΊΠ»Π°Π΄ΠΊΠΈ, Ρ‚ΠΎΠΏΠ»ΠΈΠ²Π½Ρ‹Π΅ Π±Π°ΠΊΠΈ, Π΄Π²ΠΈΠ³Π°Ρ‚Π΅Π»ΠΈ. Он ΠΈΠΌΠ΅Π΅Ρ‚ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€ пробития, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π²Π°ΠΌ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΈ ΠΊΠ°ΠΊ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ±ΠΈΡ‚ΡŒ враТСский Ρ‚Π°Π½ΠΊ.

Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Ρ‚Π°ΠΊΠΆΠ΅ большС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΏΠΎΠΌΠΈΠΌΠΎ ΠΊΠ°Π»ΡŒΠΊΡƒΠ»ΡΡ‚ΠΎΡ€Π° ΠΏΠ΅Ρ€Π° ΠΈ располоТСния ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ World of Tanks, ΠΏΠΎΠ»Π½Ρ‹Π΅ характСристики Ρ‚Π°Π½ΠΊΠΎΠ², ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΈ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ ΡƒΡ€ΠΎΠ½ ΠΎΡ‚ фугасных боСприпасов, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ†Π΅Π½ΠΈΠ²Π°Ρ‚ΡŒ ΡƒΡ€ΠΎΠ½ ΠΎΡ‚ Ρ‚Π°Ρ€Π°Π½Π° ΠΈ ΠΌΠ½ΠΎΠ³ΠΎΠ΅ Π΄Ρ€ΡƒΠ³ΠΎΠ΅. Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Armor Inspector Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ Ρ‚Π°Π½ΠΊΠΈ WoT ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΈΡ†Ρƒ Π² Π±Ρ€ΠΎΠ½Π΅ ΠΈ спСцификациях.

ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ инспСктор Π±Ρ€ΠΎΠ½ΠΈ

Π‘Π»Π΅Π²Π° Π΅ΡΡ‚ΡŒ мСню, Π³Π΄Π΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ€Π΅ΠΆΠΈΠΌ прилоТСния.

Π Π΅Π½Ρ‚Π³Π΅Π½ позволяСт ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΠΌΠΎΠ΄Π΅Π»ΠΈ столкновСний WoT, располоТСниС ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ WoT ΠΈ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ WoT. Π—Π΄Π΅ΡΡŒ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±Ρ€ΠΎΠ½Π΅Π²ΠΎΠΉ пластины.

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

Π‘Ρ‚ΠΎΠ»ΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½ΠΎ для измСрСния Ρ‚ΠΎΠ³ΠΎ, сколько ΡƒΡ€ΠΎΠ½Π° Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ нанСсти (ΠΈ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ) ΠΏΡ€ΠΈ Ρ‚Π°Ρ€Π°Π½Π΅.

НС Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π²Π΅Ρ€ΡΠΈΡŽ ΠΈΠ³Ρ€Ρ‹ Π² Настройках, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ ПК, Π‘Π»ΠΈΡ† ΠΈΠ»ΠΈ Консоль. Броня

VK 30.01 (H) ΠΈ информация Π½Π° этой страницС

Π‘ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π²Π΅Π±-прилоТСния Armor Inspector Π²Ρ‹ΡˆΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ схСму Π±Ρ€ΠΎΠ½ΠΈ VK 30.01 (H) , уязвимыС мСста ΠΈ характСристики.

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄ΠΈΡ‚Π΅ Π² мСню Β«Π Π΅Π½Ρ‚Π³Π΅Π½Β», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ VK 30.01 (H) модСль столкновСния , Ρ‚ΠΎΠ»Ρ‰ΠΈΠ½Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π±Ρ€ΠΎΠ½Π΅Π²ΠΎΠΉ пластины ΠΈ характСристики. ΠŸΠΎΠ»Π½Ρ‹Π΅ спСцификации VK 30.01 (H) Ρ‚Π°ΠΊΠΆΠ΅ доступны Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ рядом с Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ , сравнитС 9Кнопка 0040 Π½Π° сравнитС Π±Π°ΠΊ VK 30.01 (H) с Π»ΡŽΠ±Ρ‹ΠΌ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π±Π°ΠΊΠΎΠΌ wot.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ мСню Β«ΠŸΡ€ΠΎΡ‚ΠΈΠ²ΠΎΡΡ‚ΠΎΡΠ½ΠΈΠ΅Β», Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ модСль ΠΆΠΈΠ²ΠΎΠΉ Π±Ρ€ΠΎΠ½ΠΈ VK 30.01 (H) ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ любого Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ Π²Π°ΠΌΠΈ стрСлкового Ρ‚Π°Π½ΠΊΠ°. Π’Πš 30.01 (Н) слабыС мСста ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°ΡŽΡ‚ΡΡ красным ΠΈ Π·Π΅Π»Π΅Π½Ρ‹ΠΌ Ρ†Π²Π΅Ρ‚ΠΎΠΌ. РасстояниС съСмки рСгулируСтся ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈ ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΌΠ°ΡΡˆΡ‚Π°Π±Π°.

это бСсплатно?

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

РСнтгСновский Ρ€Π΅ΠΆΠΈΠΌ доступСн всСм бСсплатно. Π’ Β«ΠšΠΎΠ½Ρ„Ρ€ΠΎΠ½Ρ‚Π°Ρ†ΠΈΠΈΒ» Ρ‚Π°Π½ΠΊΠΈ высокого уровня Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Ρ‹. Π’ Ρ€Π΅ΠΆΠΈΠΌΠ΅ столкновСния Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ страны Π·Π°Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²Π°Π½Ρ‹.

Если Π²Π°ΠΌ нравится ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, рассмотритС Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ посСщСния ΠΌΠ°Π³Π°Π·ΠΈΠ½Π°. Π‘ вашСй ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ для прилоТСния ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π²Π°ΠΌ Π΅Ρ‰Π΅ большС Π·Π°ΠΌΠ΅Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… инструмСнтов ΠΈ услуг.

Π£ мСня Π΅ΡΡ‚ΡŒ вопрос

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Ρ€Π°Π·ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ свой вопрос Π½Π° нашСм дискорд-ΠΊΠ°Π½Π°Π»Π΅.

ОбъявлСния

ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для участников, Π½Π΅ Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΡ… поТСртвования,Β ΡƒΠ·Π½Π°ΠΉΡ‚Π΅, ΠΏΠΎΡ‡Π΅ΠΌΡƒ

Π‘Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ мобильного OAuth 2.0 / Π₯Π°Π±Ρ€

ΠŸΠΎΠΏΡƒΠ»ΡΡ€Π½ΠΎΡΡ‚ΡŒ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚ расти. Как ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» OAuth 2.0 Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… прилоТСниях. НСдостаточно Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ стандарт, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ бСзопасным ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» OAuth 2.0.

НуТно ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ спСцифику ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ бСзопасности.

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я Ρ…ΠΎΡ‡Ρƒ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚ΡŒΡΡ концСпциями ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… Π°Ρ‚Π°ΠΊ OAuth 2.0 ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² бСзопасности, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… для прСдотвращСния Ρ‚Π°ΠΊΠΈΡ… ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. ΠžΠΏΠΈΡΠ°Π½Π½Ρ‹Π΅ ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ Π½Π΅ Π½ΠΎΠ²Ρ‹, Π½ΠΎ структурированной ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ Π΄Π°Π½Π½ΠΎΠΉ Ρ‚Π΅ΠΌΠ΅ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚. Основная Ρ†Π΅Π»ΡŒ ΡΡ‚Π°Ρ‚ΡŒΠΈ – Π²ΠΎΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ этот ΠΏΡ€ΠΎΠ±Π΅Π».

OAuth 2.0 β€” это ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ , ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ описываСт способ для клиСнтской слуТбы ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ бСзопасный доступ ΠΊ рСсурсам ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Ρƒ поставщика услуг. Благодаря OAuth 2.0 ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ свой ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ поставщика услуг: вСсь процСсс сводится ΠΊ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ ΠΊΠ½ΠΎΠΏΠΊΠΈ Β«Π― согласСн ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ доступ к…».

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

ВскорС послС Π²Ρ‹Ρ…ΠΎΠ΄Π° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° OAuth 2.0 ΠΎΠ½ Π±Ρ‹Π» Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π½ для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ , хотя ΠΈ Π½Π΅ Π±Ρ‹Π» для этого ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½. ИспользованиС OAuth 2.0 для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ смСщаСт Π²Π΅ΠΊΡ‚ΠΎΡ€ Π°Ρ‚Π°ΠΊΠΈ с Π΄Π°Π½Π½Ρ‹Ρ…, хранящихся Ρƒ поставщика услуг, Π½Π° ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ клиСнтских слуТб.

Но аутСнтификация Π±Ρ‹Π»Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ‡Π°Π»ΠΎΠΌ. Π’ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ прославлСния конвСрсий доступ ΠΊ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ всСго ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π·Π²ΡƒΡ‡Π°Π» приятно. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ OAuth 2.0 для мобильного использования. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠ°Π»ΠΎ ΠΊΡ‚ΠΎ бСспокоился ΠΎ бСзопасности ΠΈ спСцификС ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΠΌΠΎΠ», ΠΈ Π² ΠΏΡ€ΠΎΠ΄Π°ΠΊΡˆΠ½ пошли! ΠžΠΏΡΡ‚ΡŒ ΠΆΠ΅, OAuth 2.0 ΠΏΠ»ΠΎΡ…ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π·Π° ΠΏΡ€Π΅Π΄Π΅Π»Π°ΠΌΠΈ Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ: ΠΎΠ΄Π½ΠΈ ΠΈ Ρ‚Π΅ ΠΆΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΊΠ°ΠΊ Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ…, Ρ‚Π°ΠΊ ΠΈ Π² Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… прилоТСниях.

Π˜Ρ‚Π°ΠΊ, Π΄Π°Π²Π°ΠΉΡ‚Π΅ разбСрСмся, ΠΊΠ°ΠΊ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ OAuth 2.0 бСзопасным.

Π•ΡΡ‚ΡŒ Π΄Π²Π΅ основныС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ бСзопасности мобильного OAuth 2.0:

  1. НСнадСТный ΠΊΠ»ΠΈΠ΅Π½Ρ‚. НСкоторыС ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния Π½Π΅ ΠΈΠΌΠ΅ΡŽΡ‚ бэкСнда для OAuth 2. 0, поэтому клиСнтская Ρ‡Π°ΡΡ‚ΡŒ ΠΏΠΎΡ‚ΠΎΠΊΠ° ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° ΠΈΠ΄Π΅Ρ‚ Π½Π° мобильноС устройство.
  2. ΠŸΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΡ ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π² мобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²Π΅Π΄ΡƒΡ‚ сСбя ΠΏΠΎ-Ρ€Π°Π·Π½ΠΎΠΌΡƒ Π² зависимости ΠΎΡ‚ настроСк систСмы, порядка установки ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ ΠΏΡ€ΠΎΡ‡Π΅ΠΉ ΠΌΠ°Π³ΠΈΠΈ.
Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрим эти вопросы.

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

Π’ ΠΎΠ±ΠΎΠΈΡ… случаях всС начинаСтся с Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ клиСнтский сСрвис рСгистрируСтся Π½Π° сСрвисС ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚

client_id ΠΈ , Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях , сСкрСт_ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°. client_id являСтся общСдоступным Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈ трСбуСтся для ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ слуТбы ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ значСния client_secret , ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ являСтся частным. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ процСссС рСгистрации ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π² RFC 7591.

На схСмС Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ OAuth 2.0 ΠΏΡ€ΠΈ мСТсСрвСрном взаимодСйствии.


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ изобраТСния: https://tools.ietf.org/html/rfc6749#section-1.2

ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» OAuth 2.0 ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Ρ‚Ρ€ΠΈ основных этапа:

  1. [шаги A-C] ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ (Π΄Π°Π»Π΅Π΅ ΠΊΠΎΠ΄ ).
  2. [шаги D-E] ОбмСн с кодом на access_token .
  3. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ рСсурс Ρ‡Π΅Ρ€Π΅Π· access_token .

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрим процСсс получСния code value:

  1. [Π¨Π°Π³ A] ΠšΠ»ΠΈΠ΅Π½Ρ‚ пСрСнаправляСт ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΊ поставщику услуг.
  2. [Π¨Π°Π³ B] ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊ услуг Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π½Π° прСдоставлСниС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Π΄Π°Π½Π½Ρ‹Ρ… (стрСлка B Π²Π²Π΅Ρ€Ρ…). ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ прСдоставляСт доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ (стрСлка B Π²ΠΏΡ€Π°Π²ΠΎ).
  3. [Π¨Π°Π³ C] ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊ услуг Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π² Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ пСрСнаправляСт ΠΊΠΎΠ΄ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ.
Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ процСссС получСния access_token :

  1. [Π¨Π°Π³ D] ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ сСрвСр отправляСт запрос Π½Π° ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ access_token . Code , client_secret ΠΈ redirect_uri Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ Π² запрос.
  2. [Π¨Π°Π³ E] Π’ случаС Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄ , client_secret
    ΠΈ redirect_uri , access_token прСдоставляСтся.
Запрос access_token выполняСтся ΠΏΠΎ схСмС server-to-server: поэтому, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²Π·Π»ΠΎΠΌΠ°Ρ‚ΡŒ сСрвСр слуТбы ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈΠ»ΠΈ сСрвСр поставщика услуг, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ access_token .

Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΡƒΡŽ схСму OAuth 2.0 Π±Π΅Π· бэкСнда (взаимодСйствиС ΠΊΠ»ΠΈΠ΅Π½Ρ‚-сСрвСр).


ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠΈ: https://tools.ietf.org/html/rfc8252#section-4.1

Основная схСма Ρ€Π°Π·Π±ΠΈΡ‚Π° Π½Π° Ρ‚Π°ΠΊΠΈΠ΅ ΠΆΠ΅ основныС шаги:

  1. [шаги 1-4 Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅] ΠŸΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ ΠΊΠΎΠ΄ .
  2. [шаги 5-6 Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅] ОбмСн ΠΊΠΎΠ΄Π° Π½Π° access_token
  3. ΠŸΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ рСсурсу Ρ‡Π΅Ρ€Π΅Π· access_token
Однако Π² этом случаС мобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Π΅Ρ‰Π΅ ΠΈ сСрвСрныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ; ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, client_secret Π±ΡƒΠ΄Π΅Ρ‚ встроСн Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ client_secret нСльзя ΡΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΎΡ‚ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах. ВстроСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ client_secret ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ двумя способами: ΠΏΡƒΡ‚Π΅ΠΌ Π°Π½Π°Π»ΠΈΠ·Π° Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ сСрвСром ΠΈΠ»ΠΈ ΠΏΡƒΡ‚Π΅ΠΌ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ проСктирования. И Ρ‚ΠΎ, ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ, поэтому client_secret бСсполСзСн Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах.

Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΏΡ€ΠΎΡΠΈΡ‚ΡŒ: Β«ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹ Π½Π°ΠΌ сразу Π½Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ access_token ?Β» Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΏΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ этот Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ шаг Π½Π΅ Π½ΡƒΠΆΠ΅Π½. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, сущСствуСт схСма нСявного прСдоставлСния, которая позволяСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ access_token сразу. НСсмотря Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ, нСявноС прСдоставлСниС Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ для бСзопасного мобильного OAuth 2. 0.

ΠŸΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ устройства
Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, для пСрСнаправлСния ΠΈΠ· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ настраиваСмая схСма URI ΠΈ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ AppLink. Ни ΠΎΠ΄ΠΈΠ½ ΠΈΠ· этих ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠΎΠ² Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚Π°ΠΊΠΈΠΌ бСзопасным, ΠΊΠ°ΠΊ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° само ΠΏΠΎ сСбС.

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ схСма URI (ΠΈΠ»ΠΈ глубокая ссылка) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ: Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ опрСдСляСт схСму прилоТСния ΠΏΠ΅Ρ€Π΅Π΄ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ΠΌ. Π‘Ρ…Π΅ΠΌΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ любой, ΠΈ Π½Π° ΠΎΠ΄Π½ΠΎ устройство ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ нСсколько ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ с ΠΎΠ΄Π½ΠΎΠΉ ΠΈ Ρ‚ΠΎΠΉ ΠΆΠ΅ схСмой.

ВсС упрощаСтся, ΠΊΠΎΠ³Π΄Π° каТдая схСма Π½Π° устройствС соотвСтствуСт ΠΎΠ΄Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ. Но Ρ‡Ρ‚ΠΎ, Ссли Π΄Π²Π° прилоТСния ΠΏΡ€ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ схСму Π½Π° ΠΎΠ΄Π½ΠΎΠΌ устройствС? Как опСрационная систСма Ρ€Π΅ΡˆΠ°Π΅Ρ‚, ΠΊΠ°ΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΈ ΠΎΠ±Ρ€Π°Ρ‰Π΅Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ схСму URI? Android ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ ΠΎΠΊΠ½ΠΎ с Π²Ρ‹Π±ΠΎΡ€ΠΎΠΌ прилоТСния ΠΈ ссылкой для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π°. Π’ iOS Π½Π΅Ρ‚ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ для этого, поэтому ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ любоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. Π’ любом случаС, Ρƒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° Π΅ΡΡ‚ΡŒ шанс ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ ΠΊΠΎΠ΄ ΠΈΠ»ΠΈ access_token.

Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ схСмы URI, AppLink Π³Π°Ρ€Π°Π½Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΈΠ΅ Π½ΡƒΠΆΠ½ΠΎΠ³ΠΎ прилоТСния, Π½ΠΎ Ρƒ этого ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Π΅ΡΡ‚ΡŒ нСсколько нСдостатков:

  1. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ сСрвиса Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρƒ Π²Π΅Ρ€ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ.
  2. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΠΈ Android ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ AppLink для ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ прилоТСния Π² настройках.
  3. ВСрсии Android ΡΡ‚Π°Ρ€ΡˆΠ΅ 6.0 ΠΈ вСрсии iOS ΡΡ‚Π°Ρ€ΡˆΠ΅ 9.0 Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ AppLink.
ВсС эти нСдостатки AppLink ΡƒΠ²Π΅Π»ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‚ ΠΊΡ€ΠΈΠ²ΡƒΡŽ обучСния для ΠΏΠΎΡ‚Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² слуТбы ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ привСсти ΠΊ сбою OAuth 2.0 для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΎΠ±ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΡΡ‚Π²Π°Ρ…. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ Π½Π΅ Π²Ρ‹Π±ΠΈΡ€Π°ΡŽΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ AppLink Π² качСствС Π·Π°ΠΌΠ΅Π½Ρ‹ пСрСадрСсации Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° Π² ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π΅ OAuth 2.0.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΌ OAuth 2.0 ΠΏΡ€ΠΈΠ²Π΅Π»ΠΈ ΠΊ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ спСцифичСским Π°Ρ‚Π°ΠΊΠ°ΠΌ. Π”Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ ΠΈΠ· сСбя ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‚.

Атака с ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΎΠΌ ΠΊΠΎΠ΄Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ
Рассмотрим ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΠ³Π΄Π° Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ устройствС установлСно Π»Π΅Π³ΠΈΡ‚ΠΈΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ (ΠΊΠ»ΠΈΠ΅Π½Ρ‚ OAuth 2. 0) ΠΈ врСдоносноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Π²ΡˆΠ΅Π΅ Ρ‚Ρƒ ΠΆΠ΅ схСму, Ρ‡Ρ‚ΠΎ ΠΈ Π»Π΅Π³ΠΈΡ‚ΠΈΠΌΠ½ΠΎΠ΅. На ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° схСма Π°Ρ‚Π°ΠΊΠΈ.


ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠ΅ изобраТСния https://tools.ietf.org/html/rfc7636#section-1

Π’ΠΎΡ‚ такая ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°: Π½Π° Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΌ шагС Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ Ρ‡Π΅Ρ€Π΅Π· Custom URI Scheme ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‡Π΅Π½ врСдоносным ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ (ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ½ΠΎ прописано ΠΏΠΎ Ρ‚ΠΎΠΉ ΠΆΠ΅ схСмС, Ρ‡Ρ‚ΠΎ ΠΈ Π»Π΅Π³ΠΈΡ‚ΠΈΠΌΠ½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅). Π—Π°Ρ‚Π΅ΠΌ врСдоносноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ мСняСт code Π½Π° access_token ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Какая Π·Π°Ρ‰ΠΈΡ‚Π°? Π’ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… случаях ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ мСТпроцСссноС взаимодСйствиС; ΠΌΡ‹ ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎΠ± этом ΠΏΠΎΠ·ΠΆΠ΅. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° схСма Proof Key for Code Exchange. Π­Ρ‚ΠΎ описано Π½Π° схСмС Π½ΠΈΠΆΠ΅.


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ изобраТСния: https://tools.ietf.org/html/rfc7636#section-1.1

ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΈΠΉ запрос ΠΈΠΌΠ΅Π΅Ρ‚ нСсколько Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ²: code_verifier , code_challenge (Π² схСмС 9010 9 t(code_verifier) ​​ ) ΠΈ code_challenge_method (Π½Π° схСмС t_m ).

Code_verifier β€” это случайноС число с минимальной Π΄Π»ΠΈΠ½ΠΎΠΉ 256 Π±ΠΈΡ‚, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·. Π˜Ρ‚Π°ΠΊ, ΠΊΠ»ΠΈΠ΅Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ ΡΠ³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ code_verifier 9.0110 для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ запроса ΠΊΠΎΠ΄Π° .

Code_challenge_method β€” это имя Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ прСобразования, Ρ‡Π°Ρ‰Π΅ всСго SHA-256.

Code_challenge β€” это code_verifier , ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ Π±Ρ‹Π»ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ code_challenge_method ΠΈ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ Π² URL Safe Base64.

ΠŸΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ code_verifier Π² code_challenge Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ для отраТСния Π²Π΅ΠΊΡ‚ΠΎΡ€ΠΎΠ² Π°Ρ‚Π°ΠΊΠΈ Π½Π° основС ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° code_verifier (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈΠ· систСмных Π»ΠΎΠ³ΠΎΠ² устройства) ΠΏΡ€ΠΈ запросС ΠΊΠΎΠ΄ .

Π’ случаС, Ссли ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ΅ устройство Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ SHA-256, ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ Ρ€Π°Π·Ρ€Π΅ΡˆΠ΅Π½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ простоС ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ code_verifier . Π’ΠΎ всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ SHA-256.

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ эта схСма:

  1. ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ code_verifier ΠΈ Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ Π΅Π³ΠΎ.
  2. ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π²Ρ‹Π±ΠΈΡ€Π°Π΅Ρ‚ code_challenge_method ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ code_challenge ΠΎΡ‚ code_verifier .
  3. [Π¨Π°Π³ А] ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ ΠΊΠΎΠ΄ , ΠΊ запросу Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ code_challenge ΠΈ code_challenge_method .
  4. [Π¨Π°Π³ B] ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊ сохраняСт code_challenge ΠΈ code_challenge_method Π½Π° сСрвСрС ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ code ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ.
  5. [Π¨Π°Π³ C] ΠšΠ»ΠΈΠ΅Π½Ρ‚ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ access_token с Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ ΠΊ Π½Π΅ΠΌΡƒ code_verifier .
  6. ΠŸΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ code_challenge ΠΈΠ· входящСго code_verifier , Π° Π·Π°Ρ‚Π΅ΠΌ сравниваСт Π΅Π³ΠΎ с сохранСнным code_challenge .
  7. [Π¨Π°Π³ D] Если значСния ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ прСдоставляСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ access_token .
Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ code_challenge ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ ΠΊΠΎΠ΄Π°, Π΄Π°Π²Π°ΠΉΡ‚Π΅ посмотрим, ΠΊΠ°ΠΊ выглядит ΠΏΠΎΡ‚ΠΎΠΊ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° с Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ°.

  1. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, Π·Π°ΠΊΠΎΠ½Π½Ρ‹Π΅ запросы ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΊΠΎΠ΄ ( code_challenge ΠΈ code_challenge_method ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ вмСстС с запросом ).
  2. ВрСдоносноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠΎΠ΄ (Π½ΠΎ Π½Π΅ code_challenge , ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΊΠΎΠ΄Π° _challenge Π½Π΅Ρ‚ Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅).
  3. ВрСдоносноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ access_token (с Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΊΠΎΠ΄ΠΎΠΌ , Π½ΠΎ Π±Π΅Π· Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ code_verifier ).
  4. Π‘Π΅Ρ€Π²Π΅Ρ€ Π·Π°ΠΌΠ΅Ρ‡Π°Π΅Ρ‚ нСсоотвСтствиС code_challenge ΠΈ Π²Ρ‹Π΄Π°Π΅Ρ‚ сообщСниС ΠΎΠ± ошибкС.
ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ³Π°Π΄Π°Ρ‚ΡŒ code_verifier (случайноС 256-Π±ΠΈΡ‚Π½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅!) ΠΈΠ»ΠΈ Π½Π°ΠΉΡ‚ΠΈ Π΅Π³ΠΎ Π³Π΄Π΅-Ρ‚ΠΎ Π² Π»ΠΎΠ³Π°Ρ… (ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ запрос фактичСски ΠΏΠ΅Ρ€Π΅Π΄Π°Π» code_challenge ).

Π˜Ρ‚Π°ΠΊ, code_challenge ΠΎΡ‚Π²Π΅Ρ‡Π°Π΅Ρ‚ Π½Π° вопрос поставщика услуг: Β« access_token Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ΡΡ Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠΌ прилоТСния, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π» code , ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ?Β».

OAuth 2.0 CSRF
OAuth 2.0 CSRF ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π±Π΅Π·Π²Ρ€Π΅Π΄Π΅Π½, ΠΊΠΎΠ³Π΄Π° для Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ OAuth 2.0. БовсСм другая история, ΠΊΠΎΠ³Π΄Π° для Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ OAuth 2.0. Π’ этом случаС OAuth 2.0 CSRF часто ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ Π·Π°Ρ…Π²Π°Ρ‚Ρƒ Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚Π°.

ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± Π°Ρ‚Π°ΠΊΠ΅ CSRF Π² соотвСтствии с OAuth 2.0 ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° прилоТСния такси ΠΈ ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€Π° provider.com. Π‘Π½Π°Ρ‡Π°Π»Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ Π½Π° своСм устройствС Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись [email protected] ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΊΠΎΠ΄ для такси. Π—Π°Ρ‚Π΅ΠΌ ΠΎΠ½ ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°Π΅Ρ‚ процСсс OAuth 2.0 ΠΈ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ссылку:

 com.taxi.app://oauth?
ΠΊΠΎΠ΄ = b57b236c9bcd2a61fcd627b69ae2d7a6eb5bc13f2dc25311348ee08df43bc0c4 
Π—Π°Ρ‚Π΅ΠΌ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ отправляСт эту ссылку своСй ΠΆΠ΅Ρ€Ρ‚Π²Π΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π²ΠΈΠ΄Π΅ письма ΠΈΠ»ΠΈ тСкстового сообщСния ΠΎΡ‚ слуТбы такси. Π–Π΅Ρ€Ρ‚Π²Π° ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠΎ ссылкС, открываСтся ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ такси ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ access_token . Π’ ΠΈΡ‚ΠΎΠ³Π΅ ΠΎΠ½ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ Π² Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚
такси Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΠ° . НС подозрСвая ΠΎΠ± этом, ΠΆΠ΅Ρ€Ρ‚Π²Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ этот Π°ΠΊΠΊΠ°ΡƒΠ½Ρ‚: ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ ΠΏΠΎΠ΅Π·Π΄ΠΊΠΈ, Π²Π²ΠΎΠ΄ΠΈΡ‚ Π»ΠΈΡ‡Π½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Ρ‚. Π΄.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊ ΠΌΠΎΠΆΠ΅Ρ‚ Π² любоС врСмя Π²ΠΎΠΉΡ‚ΠΈ Π² ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись такси ΠΆΠ΅Ρ€Ρ‚Π²Ρ‹, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° привязана ΠΊ [email protected] . Атака Π²Ρ…ΠΎΠ΄Π° Π² систСму CSRF ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π·Π»ΠΎΡƒΠΌΡ‹ΡˆΠ»Π΅Π½Π½ΠΈΠΊΡƒ ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½ΡƒΡŽ запись.

Атаки CSRF ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΡ‚Π±ΠΈΠ²Π°ΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ‚ΠΎΠΊΠ΅Π½Π° CSRF (Π΅Π³ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ state ), ΠΈ OAuth 2.0 Π½Π΅ являСтся ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ. Как ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠΊΠ΅Π½ CSRF:

  1. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ сохраняСт Ρ‚ΠΎΠΊΠ΅Π½ CSRF Π½Π° мобильном устройствС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°.
  2. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½ CSRF Π² ΠΊΠΎΠ΄ запрос доступа.
  3. Π‘Π΅Ρ€Π²Π΅Ρ€ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ‚ΠΎΡ‚ ΠΆΠ΅ Ρ‚ΠΎΠΊΠ΅Π½ CSRF с ΠΊΠΎΠ΄ΠΎΠΌ Π² ΠΎΡ‚Π²Π΅Ρ‚Π΅.
  4. ΠšΠ»ΠΈΠ΅Π½Ρ‚ΡΠΊΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ сравниваСт входящиС ΠΈ сохранСнныС Ρ‚ΠΎΠΊΠ΅Π½Ρ‹ CSRF. Если ΠΈΡ… значСния ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚, процСсс продолТаСтся.
ВрСбования ΠΊ Ρ‚ΠΎΠΊΠ΅Π½Ρƒ CSRF: ΠΎΠ΄Π½ΠΎΡ€Π°Π·ΠΎΠ²Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ 256 Π±ΠΈΡ‚ ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ ΠΈΠ· Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π³ΠΎ источника псСвдослучайных ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚Π΅ΠΉ.

Π’ΠΊΡ€Π°Ρ‚Ρ†Π΅, Ρ‚ΠΎΠΊΠ΅Π½ CSRF позволяСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Ρƒ прилоТСния ΠΎΡ‚Π²Π΅Ρ‚ΠΈΡ‚ΡŒ Π½Π° вопрос: Β«Π­Ρ‚ΠΎ я ΠΈΠ½ΠΈΡ†ΠΈΠΈΡ€ΠΎΠ²Π°Π» access_token запрос ΠΈΠ»ΠΈ ΠΊΡ‚ΠΎ-Ρ‚ΠΎ пытаСтся мСня ΠΎΠ±ΠΌΠ°Π½ΡƒΡ‚ΡŒ?Β».

ЖСстко Π·Π°ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ сСкрСт ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°
ΠœΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ прилоТСния Π±Π΅Π· сСрвСрной части ΠΈΠ½ΠΎΠ³Π΄Π° хранят ТСстко Π·Π°ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Π΅ значСния client_id ΠΈ client_secret . ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΈΡ… ΠΌΠΎΠΆΠ½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ прилоТСния ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ³ΠΎ проСктирования.

ВлияниС раскрытия client_id ΠΈ client_secret сильно зависит ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, насколько поставщик услуг довСрия довСряСт ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌΡƒ client_id , client_secret ΠΏΠ°Ρ€Π°. Одни ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΈΡ… Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΡ‚ΡŒ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‚ скрытыС ΠΊΠΎΠ½Π΅Ρ‡Π½Ρ‹Π΅ Ρ‚ΠΎΡ‡ΠΊΠΈ API ΠΈΠ»ΠΈ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‚ Π±ΠΎΠ»Π΅Π΅ мягкиС ограничСния скорости для Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ².

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Β«ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ сСкрСты API OAuth нСбСзопасны Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… прилоТСниях» Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассматриваСтся эта Ρ‚Π΅ΠΌΠ°.

ВрСдоносноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚
НСкоторыС врСдоносныС прилоТСния ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΠΌΠΈΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π»Π΅Π³ΠΈΡ‚ΠΈΠΌΠ½Ρ‹Π΅ прилоТСния ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ экран согласия ΠΎΡ‚ ΠΈΡ… ΠΈΠΌΠ΅Π½ΠΈ (экран согласия β€” это экран, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²ΠΈΠ΄ΠΈΡ‚: Β«Π― согласСн ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ доступ к…»). ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚ΡŒ Β«Ρ€Π°Π·Ρ€Π΅ΡˆΠΈΡ‚ΡŒΒ» ΠΈ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ врСдоносному ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ свои Π΄Π°Π½Π½Ρ‹Π΅.

Android ΠΈ iOS ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΡ‹ пСрСкрСстной ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. ΠŸΠΎΡΡ‚Π°Π²Ρ‰ΠΈΠΊ прилоТСния ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠ±Π΅Π΄ΠΈΡ‚ΡŒΡΡ, Ρ‡Ρ‚ΠΎ клиСнтскоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ являСтся Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΌ, ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚.

К соТалСнию, Ссли ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ OAuth 2.0 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠΎΡ‚ΠΎΠΊ Ρ‡Π΅Ρ€Π΅Π· Π±Ρ€Π°ΡƒΠ·Π΅Ρ€, Π·Π°Ρ‰ΠΈΡ‚ΠΈΡ‚ΡŒΡΡ ΠΎΡ‚ этой Π°Ρ‚Π°ΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.

Π”Ρ€ΡƒΠ³ΠΈΠ΅ Π°Ρ‚Π°ΠΊΠΈ
ΠœΡ‹ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрСли Π°Ρ‚Π°ΠΊΠΈ, ΡΠΊΡΠΊΠ»ΡŽΠ·ΠΈΠ²Π½Ρ‹Π΅ для мобильного OAuth 2.0. Однако Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΠ± ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠΉ ΠΏΠΎΠ΄ΠΌΠ΅Π½Π΅ OAuth 2.0: redirect_uri , ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π΅ Ρ‚Ρ€Π°Ρ„ΠΈΠΊΠ° Ρ‡Π΅Ρ€Π΅Π· Π½Π΅Π·Π°Ρ‰ΠΈΡ‰Π΅Π½Π½ΠΎΠ΅ соСдинСниС ΠΈ Ρ‚. Π΄. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎΠ± этом ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ здСсь.

ΠœΡ‹ ΡƒΠ·Π½Π°Π»ΠΈ, ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» OAuth 2.0 ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Ρƒ Π½Π΅Π³ΠΎ Π΅ΡΡ‚ΡŒ уязвимости Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… устройствах. Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ собСрСм ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ части вмСстС, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡƒΡŽ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΡƒΡŽ схСму OAuth 2.0.

Π₯ΠΎΡ€ΠΎΡˆΠΎ, ΠΏΠ»ΠΎΡ…ΠΎ OAuth 2.0
Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ способа использования экрана согласия. ΠœΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Π΅ устройства ΠΈΠΌΠ΅ΡŽΡ‚ Π΄Π²Π° способа открытия Π²Π΅Π±-страницы Π² мобильном ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ.

ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ способ β€” Ρ‡Π΅Ρ€Π΅Π· ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° (слСва Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅). ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅ : ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π° для Android называСтся Chrome Custom Tab, Π° для iOS β€” SafariViewController. Π’ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ отобраТаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²ΠΊΠ»Π°Π΄ΠΊΠ° Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°: Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρƒ прилоТСниями Π½Π΅Ρ‚.

Π’Ρ‚ΠΎΡ€ΠΎΠΉ способ - Ρ‡Π΅Ρ€Π΅Π· WebView (справа Π½Π° ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ΅) ΠΈ я ΡΡ‡ΠΈΡ‚Π°ΡŽ Π΅Π³ΠΎ ΠΏΠ»ΠΎΡ…ΠΈΠΌ ΠΏΠΎ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡŽ ΠΊ ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½ΠΎΠΌΡƒ OAuth 2.0.

WebView β€” встроСнный Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ для мобильного прилоТСния.

" ВстроСнный Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ " ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ cookie, Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ, ΠΊΠ΅ΡˆΡƒ, истории ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ Safari ΠΈ Chrome Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½ для WebView. Π’Π΅Ρ€Π½ΠΎ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅: Safari ΠΈ Chrome Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ доступ ΠΊ Π΄Π°Π½Π½Ρ‹ΠΌ WebView.

" Π‘Ρ€Π°ΡƒΠ·Π΅Ρ€ мобильного прилоТСния " ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ мобильноС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ запускаСт WebView, ΠΈΠΌΠ΅Π΅Ρ‚ ΠΏΠΎΠ»Π½Ρ‹ΠΉ доступ ΠΊ Ρ„Π°ΠΉΠ»Π°ΠΌ cookie, Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Ρƒ, ΠΊΠ΅ΡˆΡƒ, истории ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠΌ Π΄Π°Π½Π½Ρ‹ΠΌ WebView.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΡŒΡ‚Π΅: ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π½Π°ΠΆΠΈΠΌΠ°Π΅Ρ‚ Β«Π²ΠΎΠΉΡ‚ΠΈ с…», ΠΈ WebView врСдоносного прилоТСния Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅Ρ‚ Π΅Π³ΠΎ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Ρƒ поставщика услуг.

ЭпичСский Ρ„Π΅ΠΉΠ»:

  1. ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ свой Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΎΡ‚ ΡƒΡ‡Π΅Ρ‚Π½ΠΎΠΉ записи поставщика услуг Π² ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π»Π΅Π³ΠΊΠΎ ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ эти Π΄Π°Π½Π½Ρ‹Π΅.
  2. OAuth 2.0 ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π±Ρ‹Π» Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½ для , Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π»ΠΎΠ³ΠΈΠ½ ΠΈ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ поставщика услуг.

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

Если Ρƒ ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ Π² ΠΏΠΎΠ»ΡŒΠ·Ρƒ WebView вмСсто Custom Tab Browser, Π±ΡƒΠ΄Ρƒ ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚Π΅Π»Π΅Π½, Ссли Π²Ρ‹ Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΎΠ± этом Π² коммСнтариях.

БСзопасная мобильная схСма OAuth 2.0
ΠœΡ‹ собираСмся ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ схСму прСдоставлСния ΠΊΠΎΠ΄Π° Π°Π²Ρ‚ΠΎΡ€ΠΈΠ·Π°Ρ†ΠΈΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½Π° позволяСт Π½Π°ΠΌ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ code_challenge , Π° Ρ‚Π°ΠΊΠΆΠ΅ состояниС ΠΈ Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ Π°Ρ‚Π°ΠΊΠΈ с ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΎΠΌ ΠΊΠΎΠ΄Π° ΠΈ OAuth 2.0 CSRF.


Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ изобраТСния: https://tools.ietf.org/html/rfc8252#section-4.1

Код запроса доступа (шаги 1-2) Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

 https://o2.mail.ru/code?
redirect_uri=com.mail.cloud.app%3A%2F%2Foauth&
состояниС = 927489cb2fcdb32e302713f6a720397868b71dd2128c734181983f367d622c24& code_challenge = ZjYxNzQ4ZjI4YjdkNWRmZjg4MWQ1N2FkZjQzNGVkODE1YTRhNjViN jJjMGY5MGJjNzdiOGEzMDU2ZjE3NGFiYw%3D%3D&
code_challenge_method=S256&
ΠΎΠ±Π»Π°ΡΡ‚ΡŒ = элСктронная ΠΏΠΎΡ‡Ρ‚Π°% 2Cid &
response_type=ΠΊΠΎΠ΄&
client_id=984a644ec3b56d32b0404777e1eb73390c 
На шагС 3 Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ ΠΎΡ‚Π²Π΅Ρ‚ с пСрСадрСсациСй:

 com.mail.cloud.app://oΠ°uth?
ΠΊΠΎΠ΄ = b57b236c9bcd2a61fcd627b69ae2d7a6eb5bc13f2dc25311348ee08df43bc0c4&
состояниС = 927489cb2fcdb32e302713f6a720397868b71dd2128c734181983f367d622c24 
На шагС 4 Π±Ρ€Π°ΡƒΠ·Π΅Ρ€ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ схСму URI ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π΅Ρ‚ Ρ‚ΠΎΠΊΠ΅Π½ CSRF клиСнтскому ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ.
access_token запрос (шаг 5):

 https://o2.mail.ru/token?
code_verifier = e61748f28b7d5daf881d571df434ed815a4a65b62c0f90bc77b8a3056f174abc&
ΠΊΠΎΠ΄ = b57b236c9bcd2a61fcd627b69ae2d7a6eb5bc13f2dc25311348ee08df43bc0c4&
client_id=984a644ec3b56d32b0404777e1eb73390c 
ПослСдний шаг приносит ΠΎΡ‚Π²Π΅Ρ‚ с access_token .

Π­Ρ‚Π° схСма Π² Ρ†Π΅Π»ΠΎΠΌ бСзопасна, Π½ΠΎ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… особых случаях OAuth 2.0 ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΡ€ΠΎΡ‰Π΅ ΠΈ бСзопаснСС.

Android IPC
Π’ Android Π΅ΡΡ‚ΡŒ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΌΠ΅ΠΆΠ΄Ρƒ процСссами: IPC (мСТпроцСссноС взаимодСйствиС). IPC Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΉ схСмы URI ΠΏΠΎ Π΄Π²ΡƒΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ:

  1. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅Π΅ ΠΊΠ°Π½Π°Π» IPC, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ прилоТСния с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ своСго сСртификата. Π’Π΅Ρ€Π½ΠΎ ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠ΅: ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€Π΄ΠΈΡ‚ΡŒ ΠΏΠΎΠ΄Π»ΠΈΠ½Π½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Π²ΡˆΠ΅Π³ΠΎ Π΅Π³ΠΎ прилоТСния.
  2. Если ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚Π΅Π»ΡŒ отправляСт запрос ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ IPC, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΎΡ‚Π²Π΅Ρ‚ ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ ΠΆΠ΅ ΠΊΠ°Π½Π°Π»Ρƒ. ВмСстС с пСрСкрСстной ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΎΠΉ (ΠΏΡƒΠ½ΠΊΡ‚ 1) это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π½ΠΈ ΠΎΠ΄ΠΈΠ½ посторонний процСсс Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚ΠΈΡ‚ΡŒ access_token .

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Implicit Grant для упрощСния схСмы мобильного OAuth 2.0. β„– code_challenge ΠΈ state Ρ‚Π°ΠΊΠΆΠ΅ ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‚ ΠΌΠ΅Π½ΡŒΡˆΡƒΡŽ ΠΏΠΎΠ²Π΅Ρ€Ρ…Π½ΠΎΡΡ‚ΡŒ Π°Ρ‚Π°ΠΊΠΈ. ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅ΠΌ ΡΠ½ΠΈΠ·ΠΈΡ‚ΡŒ риск Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ врСдоносныС прилоТСния Π±ΡƒΠ΄ΡƒΡ‚ Π΄Π΅ΠΉΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ Π·Π°ΠΊΠΎΠ½Π½Ρ‹ΠΉ ΠΊΠ»ΠΈΠ΅Π½Ρ‚, ΠΏΡ‹Ρ‚Π°ΡΡΡŒ ΡƒΠΊΡ€Π°ΡΡ‚ΡŒ ΡƒΡ‡Π΅Ρ‚Π½Ρ‹Π΅ записи ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ.

SDK для ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ²
Помимо Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ этой бСзопасной мобильной схСмы OAuth 2.0, ΠΏΡ€ΠΎΠ²Π°ΠΉΠ΄Π΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ SDK для своих ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ². Π­Ρ‚ΠΎ упростит Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ OAuth 2.0 Π½Π° сторонС ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° ΠΈ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ количСство ошибок ΠΈ уязвимостСй.

ΠŸΠΎΠ·Π²ΠΎΠ»ΡŒΡ‚Π΅ ΠΌΠ½Π΅ ΠΏΠΎΠ΄Ρ‹Ρ‚ΠΎΠΆΠΈΡ‚ΡŒ это для вас. Π’ΠΎΡ‚ (основной) 9ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Ρ‹ΠΉ список 0079 для бСзопасного OAuth 2.0 для поставщиков OAuth 2.0:

  1. ΠŸΡ€ΠΎΡ‡Π½Π°Ρ основа ΠΈΠΌΠ΅Π΅Ρ‚ Ρ€Π΅ΡˆΠ°ΡŽΡ‰Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. Π’ случаС мобильного OAuth 2.0 основой являСтся схСма ΠΈΠ»ΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ», Π²Ρ‹Π±Ρ€Π°Π½Π½Ρ‹ΠΉ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Π›Π΅Π³ΠΊΠΎ Π΄ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ ΠΏΡ€ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ собствСнной схСмы OAuth 2.0. Π”Ρ€ΡƒΠ³ΠΈΠ΅ ΡƒΠΆΠ΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠ»ΠΈ ΡƒΠ΄Π°Ρ€Ρ‹ ΠΈ усвоили ΡƒΡ€ΠΎΠΊ; Π½Π΅Ρ‚ Π½ΠΈΡ‡Π΅Π³ΠΎ ΠΏΠ»ΠΎΡ…ΠΎΠ³ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΡ‡ΠΈΡ‚ΡŒΡΡ Π½Π° ΠΈΡ… ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ… ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΡƒΡŽ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΡŽ Π·Π° ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·. Бамая бСзопасная схСма мобильного OAuth 2.0 описана Π² Как ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ это бСзопасно ?
  2. Access_token ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² связкС ΠΊΠ»ΡŽΡ‡Π΅ΠΉ для iOS ΠΈ Π²ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΌ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π΅ для Android. Π­Ρ‚ΠΈ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π±Ρ‹Π»ΠΈ ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π°Π½Ρ‹ ΠΈΠΌΠ΅Π½Π½ΠΎ для этого. Content Provider ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² Android, Π½ΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π½Π°Π΄Π΅ΠΆΠ½ΠΎ настроСн.
  3. Client_secret бСсполСзСн , Ссли Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ½ Π½Π΅ хранится Π² бэкСндС. НС ΠΎΡ‚Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π΅Π³ΠΎ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ.
  4. НС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ WebView для экрана согласия; ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Π²ΠΊΠ»Π°Π΄ΠΊΡƒ Π±Ρ€Π°ΡƒΠ·Π΅Ρ€Π°.
  5. Для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Π° ΠΊΠΎΠ΄Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ code_challenge .
  6. Для Π·Π°Ρ‰ΠΈΡ‚Ρ‹ ΠΎΡ‚ CSRF OAuth 2.0 ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ состояниС .
  7. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ HTTPS Π²Π΅Π·Π΄Π΅ , ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π½Π° HTTP Π·Π°ΠΏΡ€Π΅Ρ‰Π΅Π½. Π’ΠΎΡ‚ 3-минутная дСмонстрация, ΠΎΠ±ΡŠΡΡΠ½ΡΡŽΡ‰Π°Ρ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ (Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ вознаграТдСния Π·Π° ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ошибок).
  8. Π‘Π»Π΅Π΄ΡƒΠΉΡ‚Π΅ стандартам ΠΊΡ€ΠΈΠΏΡ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΠΈ (Π²Ρ‹Π±ΠΎΡ€ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°, Π΄Π»ΠΈΠ½Ρ‹ Ρ‚ΠΎΠΊΠ΅Π½ΠΎΠ² ΠΈ Ρ‚. Π΄.). Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, ΠΏΠΎΡ‡Π΅ΠΌΡƒ это сдСлано ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚Π°ΠΊ, Π½ΠΎ Π½Π΅ запускайтС ΡΠΎΠ±ΡΡ‚Π²Π΅Π½Π½ΡƒΡŽ ΠΊΡ€ΠΈΠΏΡ‚Ρƒ.
  9. Код Π΄ΠΎΠ»ΠΆΠ΅Π½ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, с ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΈΠΌ сроком слуТбы.
  10. Π‘ΠΎ стороны ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π° прилоТСния ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚Π΅ для OAuth 2,0; Π° со стороны поставщика ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅, ΠΊΡ‚ΠΎ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅Ρ‚ вас для OAuth 2.0.
  11. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅ ΠΎ распространСнных уязвимостях OAuth 2.0. ΠœΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ OAuth 2.0 Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ ΠΈ дополняСт исходный, поэтому redirect_uri ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ Π½Π° Ρ‚ΠΎΡ‡Π½ΠΎΠ΅ совпадСниС ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°Ρ†ΠΈΠΈ для исходного OAuth 2,0 ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π² силС.
  12. Π’Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²ΠΈΡ‚ΡŒ своим ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌ SDK. Π£ Π½ΠΈΡ… Π±ΡƒΠ΄Π΅Ρ‚ мСньшС ошибок ΠΈ уязвимостСй, ΠΈ ΠΈΠΌ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΡ‰Π΅ Π²Π½Π΅Π΄Ρ€ΠΈΡ‚ΡŒ ваш OAuth 2. 0.


  1. «Уязвимости мобильного OAuth 2.0Β» https://www.youtube.com/watch?v=vjCF_O6aZIg
  2. ИсслСдованиС условий Π³ΠΎΠ½ΠΊΠΈ OAuth 2.0 https://hackerone.com/reports/55140
  3. ΠŸΠΎΡ‡Ρ‚ΠΈ всС ΠΎΠ± OAuth 2.0 Π² ΠΎΠ΄Π½ΠΎΠΌ мСстС https://oauth.net/2/
  4. ΠŸΠΎΡ‡Π΅ΠΌΡƒ ΠΊΠ»ΡŽΡ‡ΠΈ ΠΈ сСкрСты API OAuth нСбСзопасны Π² ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… прилоТСниях https://developer.okta.com/blog/2019/01/22/oauth-api-keys-arent-safe-in-mobile-apps
  5. [RFC] OAuth 2.0 для собствСнных ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ https://tools.ietf.org/html/rfc8252
  6. [RFC] ΠšΠ»ΡŽΡ‡ подтвСрТдСния для ΠΎΠ±ΠΌΠ΅Π½Π° ΠΊΠΎΠ΄Π°ΠΌΠΈ ΠΏΡƒΠ±Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ ΠΊΠ»ΠΈΠ΅Π½Ρ‚Π°ΠΌΠΈ OAuth https://tools.ietf.org/html/rfc7636
  7. [RFC] МодСль ΡƒΠ³Ρ€ΠΎΠ· OAuth 2.0 ΠΈ вопросы бСзопасности https://tools.ietf.org/html/rfc6819
  8. [RFC] ΠŸΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ» динамичСской рСгистрации ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΎΠ² OAuth 2.0 https://tools.ietf.org/html/rfc7591
  9. Google OAuth 2.0 для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΈ Π½Π°ΡΡ‚ΠΎΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ https://developers.

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

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

Π—Π°ΠΊΡ€Ρ‹Ρ‚ΡŒ
Menu