Параметры HTTPS GET читаются в маршрутизаторах, проходящих через сообщение? [Дубликат]

Что-то вроде этого?

SELECT yourtable.id, rev, content
FROM yourtable
INNER JOIN (
    SELECT id, max(rev) as maxrev FROM yourtable
    WHERE yourtable
    GROUP BY id
) AS child ON (yourtable.id = child.id) AND (yourtable.rev = maxrev)
107
задан Jader Dias 10 November 2010 в 10:58
поделиться

10 ответов

Весь запрос зашифрован, включая URL-адрес и даже команду (GET). Единственное, что может быть промежуточная сторона, такая как прокси-сервер, - это адрес назначения и порт.

Обратите внимание, однако, что пакет Hello Hello из рукопожатия TLS может рекламировать полное доменное имя в виде открытого текста через расширение SNI (thanks @hafichuk), которое используется всеми современными браузерами, хотя некоторые из них относятся только к более новым операционным системам.

EDIT: (Так как это только что привело меня к «хорошему» Ответ ", я думаю, я должен ответить на весь вопрос ...)

Весь ответ также зашифрован; прокси-серверы не могут перехватывать какую-либо его часть.

Google выполняет поиск и другой контент по https, потому что не все это общедоступно, и вы также можете скрыть часть общедоступного контента из MITM . В любом случае, лучше всего, чтобы Google ответил сам за себя .

119
ответ дан dan-gph 25 August 2018 в 23:29
поделиться

Соединение зашифровывается перед передачей запроса. Так что да, запрос также зашифрован, включая строку запроса.

4
ответ дан cHao 25 August 2018 в 23:29
поделиться

Да, это безопасно. SSL шифрует все.

Выдержка из запроса POST:

POST /foo HTTP/1.1
... some other headers

Выдержка из запроса GET:

GET /foo?a=b HTTP/1.1
... some other headers

В обоих случаях все, что отправлено на сокет зашифрован. Тот факт, что клиент видит параметры в своем браузере во время запроса GET, не означает, что человек в середине будет видеть то же самое.

3
ответ дан Darin Dimitrov 25 August 2018 в 23:29
поделиться

SSL выполняется перед анализом заголовка, это означает:

Client creates Request
Request gets encrypted
Encrypted request gets transmitted to the Server
Server decrypts the Request
Request gets parsed

Запрос выглядит примерно так (не помню точный синтаксис, но это должно быть достаточно близко):

GET /search?q=qwerty HTTP/1.1
Host: www.google.de

Именно поэтому наличие разных SSL-сертификатов для нескольких хостов на одном и том же IP-адресе является проблематичным, запрошенное имя хоста неизвестно до дешифрования.

3
ответ дан dbemerlin 25 August 2018 в 23:29
поделиться

HTTPS Устанавливает базовую SSL-связь до передачи любых HTTP-данных. Это гарантирует, что все данные URL (за исключением имени хоста, который используется для установления соединения) переносятся исключительно внутри этого зашифрованного соединения и защищены от атак типа «человек в середине» таким же образом, как и любые HTTPS-данные.

Вышеприведенное является частью ОЧЕНЬ всестороннего ответа от Google Answers, расположенного здесь:

http://answers.google.com/answers/threadview /id/758002.html#answer

20
ответ дан DVK 25 August 2018 в 23:29
поделиться

Все зашифровано, но вам нужно помнить, что ваш запрос останется в журналах сервера и будет доступен для различных анализаторов журналов и т. д. (что обычно не относится к запросу POST).

5
ответ дан Eugene Mayevski 'Allied Bits 25 August 2018 в 23:29
поделиться

Я просто подключился через HTTPS к веб-сайту и передал кучу параметров GET. Затем я использовал wirehark, чтобы обнюхать сеть. Используя HTTP, URL-адрес отправляется незашифрованным, что означает, что я могу легко увидеть все параметры GET в URL-адресе. Используя HTTPS, все зашифровано, и я даже не вижу, какой пакет является командой GET, не говоря уже о ее содержимом!

3
ответ дан Jeff Lamb 25 August 2018 в 23:29
поделиться

Запрос GET зашифрован при использовании HTTPS - на самом деле именно поэтому защищенные веб-сайты должны иметь уникальный IP-адрес - нет способа получить требуемое имя хоста (или виртуальный каталог) из запроса до тех пор, пока оно не будет расшифровано.

0
ответ дан Michael Burr 25 August 2018 в 23:29
поделиться

Часть URL-адреса после имени хоста отправляется надежно.

Например, https://somewhere.com/index.php?NAME=FIELD

Часть /index.php?NAME=FIELD зашифрована. somewhere.com нет.

12
ответ дан orokusaki 25 August 2018 в 23:29
поделиться

Сам URL-адрес зашифрован, поэтому параметры строки запроса не перемещаются в обычном режиме.

Однако имейте в виду, что URL-адреса, включая данные GET, часто регистрируются веб-сервером, тогда как данные POST редко бывают. Поэтому, если вы планируете делать что-то вроде /login/?username=john&password=doe, тогда не делайте этого; вместо этого используйте POST.

53
ответ дан Thomas 25 August 2018 в 23:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: