Как получить ответ SAML на запрос, в котором присутствует скрытый SAML POST? - PullRequest
0 голосов
/ 05 марта 2019

Я хотел бы получить ответ SAML из запроса URL, который использует скрытую аутентификацию SAML.Я могу увидеть ответ в Fiddler, но как сохранить его для дальнейшего анализа.Отправьте запрос на перенаправление по URL-адресу, ответ SAML с "200 OK" поступит в Fiddler, и я хочу перехватить его.Есть ли какая-нибудь утилита Powershell, которую можно использовать для того же, или я должен автоматизировать сам Fiddler, используя какой-то модуль.Пожалуйста, предложите, если есть какой-либо другой вариант.

Я пробовал некоторые фрагменты с «Invoke-WebRequest» в Powershell, но не смог воспроизвести многое в отношении ответа SAML.

Ответы [ 2 ]

0 голосов
/ 08 марта 2019

Я много чего перепробовал и, наконец, почти сделал это с помощью фантомов.

var page = require('webpage').create();
page.customHeaders={'Authorization': 'Basic '+btoa('USER:PASSWORD')};

// hook into initial request
page.onResourceRequested = function(request) {
    //console.log("Request: "+ JSON.stringify(request, undefined, 4));
    var req_json = JSON.stringify(request, undefined, 4);
    if (request.method == "POST" && request.postData != null){
            //console.log("Request: "+ JSON.stringify(request, undefined, 4));
            console.log("SAML Req/Resp: \n" + request.postData);
    }
};

// hook to response
page.onResourceReceived = function(response) {
 //console.log("Response: "+ JSON.stringify(response, undefined, 4));
 var resp_json = JSON.stringify(response, undefined, 4);
};

page.open("https://yourURLwithhiddenSAML");

На данный момент я могу получить постданные с помощью SAMLRequest и SAMLResponse и перенаправить вывод в какой-то файл.Однако есть еще одна вещь, которую я заметил.Если я добавлю

phantom.exit();

внутри функции, я не смогу получить полный жизненный цикл запроса / ответа, который содержит SAML.

0 голосов
/ 06 марта 2019

У меня есть собственный рог, но мой хромовый плагин поможет вам в этом.Это добавляет та к консоли инструментов разработчика.Затем на вкладках отображается весь трафик и выделяются те, которые соответствуют сообщениям saml.Когда вы нажмете одну, она покажет вам saml xml в виде простого текста.

...