GitBook: [master] one page modified
This commit is contained in:
parent
6d5dc7f0f1
commit
a5a62c7e22
|
@ -1028,9 +1028,9 @@ Find some [**tools for XSS here**](xss-tools.md)**.**
|
|||
|
||||
## **Other JavaScript related tricks**
|
||||
|
||||
* Trick to download .map js files: [https://medium.com/@bitthebyte/javascript-for-bug-bounty-hunters-part-2-f82164917e7](https://medium.com/@bitthebyte/javascript-for-bug-bounty-hunters-part-2-f82164917e7)
|
||||
### **.map js files**
|
||||
|
||||
## Other JS tricks
|
||||
* Trick to download .map js files: [https://medium.com/@bitthebyte/javascript-for-bug-bounty-hunters-part-2-f82164917e7](https://medium.com/@bitthebyte/javascript-for-bug-bounty-hunters-part-2-f82164917e7)
|
||||
|
||||
### "--" Assignment
|
||||
|
||||
|
@ -1142,5 +1142,45 @@ Some **random** ways to **extract the code** of a function \(even comments\) fro
|
|||
(u=>_=>(String(u)))(_=>{ /* Hidden commment */ })()
|
||||
```
|
||||
|
||||
### Automatic Browser Access to test payloads
|
||||
|
||||
```javascript
|
||||
//Taken from https://github.com/svennergr/writeups/blob/master/inti/0621/README.md
|
||||
const puppeteer = require("puppeteer");
|
||||
|
||||
const realPasswordLength = 3000;
|
||||
async function sleep(ms) {
|
||||
return new Promise((resolve) => setTimeout(resolve, ms));
|
||||
}
|
||||
|
||||
(async () => {
|
||||
const browser = await puppeteer.launch();
|
||||
const page = await browser.newPage();
|
||||
//Loop to iterate through different values
|
||||
for (let i = 0; i < 10000; i += 100) {
|
||||
console.log(`Run number ${i}`);
|
||||
const input = `${"0".repeat(i)}${realPasswordLength}`;
|
||||
console.log(` https://challenge-0621.intigriti.io/passgen.php?passwordLength=${input}&allowNumbers=true&allowSymbols=true×tamp=1624556811000`);
|
||||
//Go to the page
|
||||
await page.goto(
|
||||
`https://challenge-0621.intigriti.io/passgen.php?passwordLength=${input}&allowNumbers=true&allowSymbols=true×tamp=1624556811000`
|
||||
);
|
||||
//Call function "generate()" inside the page
|
||||
await page.evaluate("generate()");
|
||||
//Get node inner text from an HTML element
|
||||
const passwordContent = await page.$$eval(
|
||||
".alert .page-content",
|
||||
(node) => node[0].innerText
|
||||
);
|
||||
//Transform the content and print it in console
|
||||
const plainPassword = passwordContent.replace("Your password is: ", "");
|
||||
if (plainPassword.length != realPasswordLength) {
|
||||
console.log(i, plainPassword.length, plainPassword);
|
||||
}
|
||||
|
||||
await sleep(1000);
|
||||
}
|
||||
await browser.close();
|
||||
})();
|
||||
```
|
||||
|
||||
|
|
Loading…
Reference in New Issue