@cen1ou

Как настроить CORS для XMLHttpRequest?

Сразу хочу обратить внимание, я конкретный чайник, только начинаю изучать информационную безопасность и все, что с ней связано.
Цель - разрешать читать и выводить содержимое страницы user_info.html домена localhost только с домена trustedhost.com
Есть файл user_info.html с произвольным содержимым на домене localhost, к которому делается запрос.
Так же есть файл request.html на домене attacker.com, с которого отправляется XHR запрос:

<body>
    <script>
      function loadData() {
        var xhr = new XMLHttpRequest();
        xhr.open("GET", "http://localhost/user_info.html", false);
        xhr.send();
        
        if (xhr.status != 200) {
          alert(xhr.status + ': ' + xhr.statusText);
        } else {
          alert(xhr.responseText);
        }
      }
    </script>
    <button onclick="loadData()">getdata</button>
  </body>


Файл конфигурации nginx:

location / {
             add_header 'Access-Control-Allow-Origin' 'http://trustedhost.com';
             try_files $uri $uri/ =404;
}


Проблема заключается в заголовке ответа CORS на XHR запрос, выглядит так:
Access-Control-Allow-Origin: *

Такое значение заголовка только в запросе XHR.
То есть выглядит все так, будто конфиг nginx не применяется именно для cors запроса. В запросе за страницей сервер выдает заголовки как нужно.
  • Вопрос задан
  • 258 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы