What is XSS (Cross Site Scripting)?


XSS is a very commonly exploited vulnerability type that is very widely spread and easily detectable, and also it is one of the important vulnerabilities in OWASP TOP 10.

What is XSS(Cross-Site Scripting )? An attacker can inject untrusted snippets of JavaScript into your application without validation.

CSN

This JavaScript is then executed by the victim who is visiting the target site. It is classified into three types.

  • Reflected XSS
  • Stored XSS
  • DOM-Based XSS

In Reflected XSS, an attacker sends the victim a link to the target application through email, social media, etc.

This link has a script that executes when visiting the target site.

In Stored XSS, the attacker can plant a persistent script in the target website which will execute when anyone visits it.

With DOM Based XSS, no HTTP request is required; the script is injected as a result of modifying the DOM of the target site in the client-side code in the victim’s browser and is then executed.

Understanding XSS – Cross-Site Scripting

                               http://test.gbhackers.com/search?q=gbhackers

                                   Searched for gbhackers

                                          

Imagine that we have an URL like this, and we are searching for gbhackers, and it will reflect the following query in the browser.

We trust the domain, and we trust the resource being entered in the search page, so now the untrusted part gbhackers was the query string entered by the browser; the attacker can manipulate the value anything they like, for example, they change like this .

This is just a simple query to pop up an alert on the webpage if someone requested the page of the attacker’s website and passed the document.

Cookies as a parameter in the website, then the attacker can gather all cookies.If they get Auth cookies, they can simply hijack user sessions.

xss
XSS Attack

Potential Risks of Cross-Site Scripting

The attacker can compromise or take over the victim’s user account in the application.

They could retrieve data from the target web application, modify content on the target page, redirect the victim to another malicious or spoof site, or use it to install other malware on the victim’s system.

The consequences of any of the above can seriously impact your ability to conduct business, your customers, and your organization’s reputation.

XSS
XSS Attack Flow

Defenses against Cross-Site Scripting

  • What input do we trust?
  • Does it adhere to expected patterns?
  • Never reflect untrusted data.
  • Applies to data within our database too.
  • Encoding of context(Java/attribute/HTML/CSS).



Source link