Records requestBody from POST requests

This commit is contained in:
FoxRefire
2024-04-26 10:53:24 +09:00
parent 8feefe789f
commit f7db81a03b
2 changed files with 21 additions and 1 deletions

View File

@@ -1,15 +1,19 @@
let psshs=[];
let requests=[];
let bodys=[];
let pageURL="";
function convertHeaders(obj){
return JSON.stringify(Object.fromEntries(obj.map(header => [header.name, header.value])))
}
//Get URL and headers from POST requests
chrome.webRequest.onBeforeSendHeaders.addListener(
function(details) {
if (details.method === "POST") {
requests.push({
url:details.url,
headers:convertHeaders(details.requestHeaders)
headers:convertHeaders(details.requestHeaders),
body:bodys.find((b) => b.id == details.requestId).body
});
}
},
@@ -17,6 +21,20 @@ chrome.webRequest.onBeforeSendHeaders.addListener(
["requestHeaders"]
);
//Get requestBody from POST requests
chrome.webRequest.onBeforeRequest.addListener(
function(details) {
if (details.method === "POST") {
bodys.push({
body:btoa(String.fromCharCode(...new Uint8Array(details.requestBody.raw[0]['bytes']))),
id:details.requestId
});
}
},
{urls: ["<all_urls>"]},
["requestBody"]
);
//Receive PSSH from content.js
chrome.runtime.onMessage.addListener(
function (request, sender, sendResponse) {
@@ -24,6 +42,7 @@ chrome.runtime.onMessage.addListener(
case "RESET":
psshs=[];
requests=[];
bodys=[];
break;
case "PSSH":
psshs.push(request.text)

View File

@@ -11,6 +11,7 @@ async function guess(){
let vars=`pssh="${document.getElementById('pssh').value}"\n`
vars+=`licUrl="${requests[userInputs['license']]['url']}"\n`
vars+=`licHeaders='${requests[userInputs['license']]['headers'].replace(/\\/g, "\\\\")}'\n`
vars+=`licBody="${requests[userInputs['license']]['body']}"\n`
let pre=await fetch('python/pre.py').then(res=>res.text())
let after=await fetch('python/after.py').then(res=>res.text())
let scheme=await fetch(`python/schemes/${document.getElementById("scheme").value}.py`).then(res=>res.text())