Cyberattacks 101: Cross-Site Scripting
March 23, 2021 by Loren Lachapelle
Cyberattacks are on the rise. Cybercriminals continue to expand and improve new attack methods every day. In fact, many of these new or updated attacks are working because they can often get through traditional defenses undetected. With proper knowledge, awareness, and cautious browsing, you can help your organization defend against attacks.
We’ll cover the basics of cross-site scripting (XXS) attacks below.
What are XXS attacks?
XXS attacks are a form of injection attacks. An injection attack is when malicious code is added (or injected) into a website or a web application. XXS attacks require vulnerabilities in the site or app that allow the hacker to add their new malicious code to the page.
Cross-site scripting is commonly seen on highly interactive sites like forums, message boards, or sites with major comment sections, but in theory, any site with forms could be at risk for this type of attack. One unique aspect of XXS attacks is the hacker initially interacts with the website, not directly with their intended victims.
XXS attacks are designed to be stealthy. Bad actors will try to be as subtle as possible to prevent site owners from discovering the breach and taking further preventative measures. Therefore, hackers won’t disrupt usual site operations or give signs of a compromise until they’ve gotten everything they want from people browsing the site.
To make them more dangerous, XXS attacks can also be combined with other attack techniques. For example, the cybercriminal could be hoping for a specific user they are targeting to visit the website they just compromised. So, they might use social engineering techniques to lure the target to the compromised website.
What can happen with a Cross-Site Scripting (XXS) attack?
After a hacker has injected malicious code, it’s easy for them to impersonate their victims because they get access to their credentials. Anything that the user types – including their username and password – is visible. And if the user has reused that same password on multiple other accounts, impacts could be substantial.
With the stolen credentials, the hacker may commit fraud, share their personal information, or simply start commenting and messaging people pretending to be the user. The cybercriminal will also have access to their victim’s data that resides on the site. This could potentially include health information, confidential files, or any other data that could be valuable. Once the hacker has control, they will have access to do anything that the victim can.
What are the impacts?
The impact of XXS attacks can vary greatly. For example, if people are posting to an anonymous or public forum where they can chat about their favorite TV shows, there will be minimal, if any, impact.
On the other hand, XXS attacks can have an enormous impact if, for example, a banking or medical site becomes compromised. This could open the door to fraud and major regulatory issues. Plus, the risks are significantly more for those that have elevated permissions or is an administrator for the site. Because administrators have more rights, if an attacker steals their credentials, they can carry out a more impactful and consequential attack.
It’s especially important to remember that no matter how small this attack starts, it can quickly escalate into something with serious consequences.
How can site owners defend against XXS attacks?
There are two ways to defend against XXS attacks. First, let’s look at defenses from the perspective of the site owner.
If you are a website owner, the first thing you can do to increase your defenses is limit what outsiders type into a form. This usually includes things like input validation and data sanitization to ensure that even if a site user types in malicious code into a comment field, the code won’t run.
Browsers display website content by running its HTML, CSS, or JavaScript code. If a hacker gains access to input their malicious code and then the browser runs the code, the site can be compromised. As a website owner, you should lock the site down and tell it to never use certain types of code, or outright reject certain symbols from being submitted. A widespread practice is to just ban users from posting < or > symbols in comment fields, or any other interactive part of your website. When in doubt, it’s best to lock it all down.
Other security precautions that website owners can take include using secure coding practices, having a code review policy, and making sure the site is being tested for any vulnerabilities. It’s not enough to have secure coding practices and then review it yourself. Instead, you should have someone else take the time to test the site. You can even have someone go in the site or app, post code in any field they can find, and test to see if it was run by the browser or not. If it was run, you will now know that the site needs to be better secured.
How can users defend against XXS attacks?
What happens if you, as a user, accidentally go to a site that has been compromised? It can happen to anyone, even if the site owners took precautions. Following are some things you can do to minimize the chances of being impacted by an XXS attack.
First, ensure your antivirus tools and other technical controls – such as your router and firewalls – are up to date. If your controls are up to date with the most current patches installed, it will at add a layer of protection if you unknowingly enter a malicious website.
Next, it’s essential to use strong and unique passwords for every account. If your account for a certain website is compromised, the hacker should only have stolen your credentials for that compromised site or app. On the other hand, if you are reusing passwords, now the hacker will have your password for that site, plus every other site you’ve used that password on — which could be devastating and have major consequences.
Finally, if you think you’ve visited a compromised site, be sure to inform your IT or security team immediately. It’s also worth reaching out to the website owner to let them know you’ve been compromised because of visiting their site so they can mitigate the problem before other people are compromised.
By knowing how a cross-site scripting attack works and the implications it could have on you or your organization, you’ll increase cyber resiliency and be better enabled to defend against it if the situation ever arises.