Атака Π½Π° систСмы фронтэнд-бэкСнд, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π²ΠΊΠ»ΠΈΠ½ΠΈΡ‚ΡŒΡΡ Π² сторонниС запросы

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

Π‘ΡƒΡ‚ΡŒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ фронтэнды ΠΈ бэкСнды Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹ΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP, Π½ΠΎ ΠΏΡ€ΠΈ этом ΠΈΠ½ΠΊΠ°ΠΏΡΡƒΠ»ΠΈΡ€ΡƒΡŽΡ‚ запросы Ρ€Π°Π·Π½Ρ‹Ρ… ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π² ΠΎΠ±Ρ‰ΠΈΠΉ ΠΊΠ°Π½Π°Π». Для связи ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅Π³ΠΎ запросы фронтэнда ΠΈ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ запросы бэкСнда устанавливаСтся Π΄ΠΎΠ»Π³ΠΎΠΆΠΈΠ²ΡƒΡŽΡ‰Π΅Π΅ TCP-соСдинСниС, Ρ‡Π΅Ρ€Π΅Π· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Ρ‚Ρ€Π°Π½ΡΠ»ΠΈΡ€ΡƒΡŽΡ‚ΡΡ запросы ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ ΠΏΠΎ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅ ΠΎΠ΄ΠΈΠ½ слСдом Π·Π° Π΄Ρ€ΡƒΠ³ΠΈΠΌ с Ρ€Π°Π·Π΄Π΅Π»Π΅Π½ΠΈΠ΅ΠΌ срСдствами ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π° HTTP. Для раздСлСния запросов ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ «Content-Length» (опрСдСляСт ΠΎΠ±Ρ‰ΠΈΠΉ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π΄Π°Π½Π½Ρ‹Ρ… Π² запросС) ΠΈ «Transfer-Encoding: chunked» (позволяСт ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ ΠΏΠΎ частям, указывая Π±Π»ΠΎΠΊΠΈ Ρ€Π°Π·Π½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ «{Ρ€Π°Π·ΠΌΠ΅Ρ€}\r\n{Π±Π»ΠΎΠΊ}\r\n{Ρ€Π°Π·ΠΌΠ΅Ρ€}\r\n{Π±Π»ΠΎΠΊ}\r\n0»).

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚, Ссли фронтэнд ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ «Content-Length», Π½ΠΎ ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ «Transfer-Encoding: chunked» (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‚Π°ΠΊ поступал CDN Akamai) ΠΈΠ»ΠΈ Π½Π°ΠΎΠ±ΠΎΡ€ΠΎΡ‚. Π’ случаС ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΈ Transfer-Encoding: chunked» Π½Π° ΠΎΠ±Π΅ΠΈΡ… сторонах для Π°Ρ‚Π°ΠΊΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ особСнности Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ парсСров HTTP-Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠΎΠ³Π΄Π° фронтэнд ΠΈΠ³Π½ΠΎΡ€ΠΈΡ€ΡƒΠ΅Ρ‚ строки Π²ΠΈΠ΄Π° «Transfer-Encoding: xchunked», » Transfer-Encoding: chunked», «Transfer-Encoding:[tab]chunked», «X: X[\n]Transfer-Encoding: chunked», «Transfer-Encoding[\n]: chunked» ΠΈΠ»ΠΈ «Transfer-Encoding : chunked», Π° бэкСнд ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚ ΠΈΡ…).

Π’ этом случаС Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ запрос, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ «Content-Length» ΠΈ «Transfer-Encoding: chunked», Π½ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€ Π² «Content-Length» Π½Π΅ соотвСтствуСт Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ chunked-Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠΈ, которая мСньшС фактичСского значСния. Если фронтэнд ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΈ ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚ запрос Π² соотвСтствии с «Content-Length», Π° бэкСнд Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ Π±Π»ΠΎΠΊΠ° Π½Π° основС «Transfer-Encoding: chunked», Ρ‚ΠΎ ΠΊΠΎΠ½Π΅Ρ† Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° основании «Transfer-Encoding: chunked» Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½ Ρ€Π°Π½ΡŒΡˆΠ΅ ΠΈ ΠΎΡΡ‚Π°Π²ΡˆΠΈΠΉΡΡ хвост запроса Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ окаТСтся Π²Π½Π°Ρ‡Π°Π»Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ запроса, Ρ‚.Π΅. Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ прикрСплСния ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ… ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ Ρ‡ΡƒΠΆΠΎΠ³ΠΎ запроса, ΠΏΠ΅Ρ€Π΅Π΄Π°Π½Π½ΠΎΠ³ΠΎ слСдом.

Атака Π½Π° систСмы фронтэнд-бэкСнд, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ Π²ΠΊΠ»ΠΈΠ½ΠΈΡ‚ΡŒΡΡ Π² сторонниС запросы

Для опрСдСлСния ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ Π² ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠΉ связкС фронтэнд-бэкСнд Ρ‡Π΅Ρ€Π΅Π· фронтэнд ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ запрос Π²ΠΈΠ΄Π°:

POST /about HTTP/1.1
Host: example.com
Transfer-Encoding: chunked
Content-Length: 4

1
Z
Q

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΠ° присутствуСт, Ссли бэкСнд сразу Π½Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ запрос ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΆΠΈΠ΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΈΡ…ΠΎΠ΄Π° Ρ„ΠΈΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π½ΡƒΠ»Π΅Π²ΠΎΠ³ΠΎ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΠ²Π°ΡŽΡ‰Π΅Π³ΠΎ Π±Π»ΠΎΠΊΠ° chunked-Π΄Π°Π½Π½Ρ‹Ρ…. Для Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²Π»Π΅Π½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Π°, которая Ρ‚Π°ΠΊΠΆΠ΅ тСстируСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Ρ‹ скрытия Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° «Transfer-Encoding: chunked» ΠΎΡ‚ фронтэнда.

ΠŸΡ€ΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ Π°Ρ‚Π°ΠΊΠΈ зависит ΠΎΡ‚ возмоТностСй Π°Ρ‚Π°ΠΊΡƒΠ΅ΠΌΠΎΠ³ΠΎ сайта, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π°Ρ‚Π°ΠΊΠ΅ Π½Π° web-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Trello ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π½Π°Ρ‡Π°Π»ΠΎ запроса (ΠΏΠΎΠ΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π²ΠΈΠ΄Π° «PUT /1/members/1234… x=x&csrf=1234&username=testzzz&bio=cake») ΠΈ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ сообщСниС, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰Π΅Π΅ ΠΎΡ€ΠΈΠ³ΠΈΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ запрос стороннСго ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹Π΅ Π² Π½Ρ‘ΠΌ Cookie Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ. Для Π°Ρ‚Π°ΠΊΠΈ Π½Π° saas-app.com оказалось Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ΠΌ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²ΠΈΡ‚ΡŒ подстановку JavaScript-ΠΊΠΎΠ΄Π° Π² ΠΎΡ‚Π²Π΅Ρ‚, Ρ‡Π΅Ρ€Π΅Π· Π΅Π³ΠΎ подстановку Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² запроса. Для Π°Ρ‚Π°ΠΊΠΈ Π½Π° redhat.com Π±Ρ‹Π» использован Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ для пСрСнаправлСния Π½Π° сайт Π°Ρ‚Π°ΠΊΡƒΡŽΡ‰Π΅Π³ΠΎ (Π±Ρ‹Π» подставлСн запрос Π²ΠΈΠ΄Π° «POST /search?dest=../assets/idx?redir=//[email protected]/ HTTP/1.1»).

ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° для сСтСй доставки ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° позволяло просто ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΉ сайт Ρ‡Π΅Ρ€Π΅Π· подстановку Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ° «Host:». Атака Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΈΠΌΠ΅Π½ΠΈΠΌΠ° для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ отравлСния содСрТимого систСм ΠΊΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ ΠΊΠΎΠ½Ρ‚Π΅Π½Ρ‚Π° ΠΈ извлСчСния ΠΏΡ€ΠΎΠΊΠ΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΊΠΎΠ½Ρ„ΠΈΠ΄Π΅Π½Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… Π΄Π°Π½Π½Ρ‹Ρ…. Π’Π΅Ρ€ΡˆΠΈΠ½ΠΎΠΉ примСнСния ΠΌΠ΅Ρ‚ΠΎΠ΄Π° стала организация Π°Ρ‚Π°ΠΊΠΈ Π½Π° PayPal, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅ΠΉ ΠΏΠ΅Ρ€Π΅Ρ…Π²Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€ΠΎΠ»ΠΈ, отправляСмыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ ΠΏΡ€ΠΈ Π°ΡƒΡ‚Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ (Π±Ρ‹Π»ΠΎ осущСствлСно ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ запроса iframe для выполнСния JavaScript Π² контСкстС страницы paypal.com/us/gifts, для ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π½Π΅ примСнялся CSP (Content Security Policy)).

Π˜Π½Ρ‚Π΅Ρ€Π΅ΡΠ½ΠΎ, Ρ‡Ρ‚ΠΎ Π² 2005 Π³ΠΎΠ΄Ρƒ Π±Ρ‹Π»Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½Π° похоТая ΠΏΠΎ сути Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ° ΠΏΠΎΠ΄ΠΌΠ΅Π½Ρ‹ запросов, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΏΠΎΠ΄ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΊΡΡˆΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… прокси (Tomcat, squid, mod_proxy) ΠΈΠ»ΠΈ ΠΎΠ±ΠΎΠΉΡ‚ΠΈ Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠΈ мСТсСтСвых экранов Ρ‡Π΅Ρ€Π΅Π· ΡƒΠΊΠ°Π·Π°Π½ΠΈΠ΅ Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… запросов «GET» ΠΈΠ»ΠΈ «POST» Π² Ρ€Π°ΠΌΠΊΠ°Ρ… ΠΎΠ΄Π½ΠΎΠ³ΠΎ HTTP-сСанса.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

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