40% of the total internet traffic comes from bots, and out of those, half comes from malicious bots.
Bad bot activities are responsible for a great majority of cyber-attacks and can provide various negative impacts to your website and organization: data theft, account takeover (ATO), spam issues, and even large-scale DDoS attacks, among others.
This is why a bot prevention strategy to effectively detect and manage activities from malicious bots is now a necessity for any business with a website and online presence.
Image Source: Pixabay
Challenges in Bot Prevention
The idea behind bot prevention is fairly simple: detect the presence of traffic not coming from real human users, and prevent them from performing their operations.
However, in reality, it can be easier said than done, due to two main issues:
- There are good bots. While bots are notorious for performing malicious attacks, there are good bots like Googlebot that might be beneficial and even essential for your site. We wouldn’t want to block these good bots from entering our site.
- Bots are mimicking human users. Today’s bot operators are very advanced and have adopted the latest technologies including AI so that the bots are now very sophisticated at masking their identities. We wouldn’t want to accidentally block legitimate users, which can ruin your business’s reputation in the long run.
This is why we can no longer rely on basic bot prevention and mitigation solutions, but we also need to combat these malicious bots with adequately advanced tools and infrastructure.
How Bot Prevention Works
- Fingerprinting-based approach
In this type of technique, the bot management solution analyzes the bot traffic and looks for various fingerprints or signatures that might signify the presence of malicious bots.
Here are some example of fingerprinting-based techniques:
- Checking the user agent for common fingerprints of headless (modified) browsers.
- Checking for attributes that should or should not be present in the browser assumed by the user agent.
- Analyzing OS and browser type and their consistency
The weakness of this approach is that we have to have a known benchmark (the fingerprint) for this approach to be effective, so it’s typically not effective in detecting brand new bots.
- Behavioral-based approach
The most advanced approach at the moment, here the bot management solution analyzes and compares the client’s behaviors to real human behaviors. Bot prevention solutions that use this technique utilize AI and machine-learning technologies to effectively distinguish behaviors from bots to legitimate human users.
In behavioral-based detection the bot management solution will analyze these factors:
- Mouse clicks, whether there’s any noticeable pattern
- Mouse movements (linear or patterned movements)
- Scroll consistency and speed
- Average dwell time per page
- The number of requests per session
- Total number of pages viewed per session
- Whether the client is blocking certain resources
At the moment, behavioral-based bot detection techniques are the most effective not only for differentiating between human users and bots but also between good and malicious bots.
Bot Prevention: To Block or Not To Block
Say we’ve properly identified a client to be a bot, and we are 100% sure it is a malicious bot after we’ve thoroughly analyzed its behavior. Isn’t simply blocking this bot from accessing the site the most effective approach we can have? After all, when a bot is being blocked, we don’t need to process its traffic, we don’t need to apply any protection measures, and we don’t have to record anything.
In short, isn’t blocking the most cost-efficient approach?
The answer is, not always, and in fact, there are cases when blocking this bot is a bad idea altogether.
Blocking a bot simply won’t stop a persistent attacker from targeting your site. Instead, when the bot it’s blocked, it’s simply telling them that it’s time to modify the bot to bypass your security measures. In fact, if you are not careful, the error message you give when blocking the traffic can be a piece of valuable information for them on how to modify these bots.
So, even if you decide to block the traffic, make sure not to provide any information on why the traffic is blocked, and you can simply say something along the line of “Oops! We have an issue, please contact our customer support here.
Thus, bot prevention is not always about blocking, but there are other ways we can manage bot traffic effectively, namely:
- Honeypot and feeding fake data
An effective technique is to reply to the bot with fake data or content to throw it off.
This way, we’ll keep the bot active and let it waste resources, while the fake data will poison its findings, rendering the data extracted by this bot useless. Another option is to redirect the bot to another page or app that looks similar to the real thing but only features fake or reduced content.
- Challenging the bot with a CAPTCHA
CAPTCHA and other challenge-based bot prevention techniques are no longer very effective at the moment especially due to the presence of CAPTCHA farm services. Also, too many CAPTCHAs can affect your visitor’s user experience negatively.
However, if we are 100% sure that it is a malicious bot, then we can challenge the bot with CAPTCHA, which can still be effective from time to time.
- Rate limiting
Rate limiting or throttling can be effective to discourage the bot so it will move to another target. Bots operate on resources, which can be quite expensive in the long run. By slowing down its operation, in most cases, the bot operator will simply give up.
The most effective approach to bot prevention strategy is to invest in DataDome, a bot detection and management software that can effectively detect the presence of bot traffic and distinguish between good bots and bad bots in real-time.
With how malicious bots are now becoming so sophisticated at masking their identities and impersonating human-like behaviors, a proper bot prevention strategy is now a necessity for any business with a website and online activities.