DeceptionRouter - trap scanners, spambots, and crawlers in an infinite number of pointless requests

Hey Elixir friends!

I stumbled across an interesting library in the Python community called spidertrap. It traps scanners, spambots, and crawlers in an infinite loop. This type of tool comes out of the field of cyber deception. Cyber deception is a proactive way to protect against bad actors. A trap like this will likely waste a bad actors time and resources.

I thought this was a cool tool and figured it would be fun to build it specifically for Elixir. So, here is DeceptionRouter.

How it works

DeceptionRouter is a plug router that can be integrated within an existing Phoenix project or any other plug based system. It will generate a list of random strings to make into links for the automated scanner to follow, however, each link leads back to another page of randomly generated links, and so on.

Since many of the scanning tools are automated, the bad actor will probably run it and wait, and wait they will! Even better if they run it on a type of cron job and they aren’t monitoring progress as closely - we can waste their time and resources even more!

Go forth and deceive

It’s always a good time to troll bad actors! I had fun exploring the topic of cyber deception and I hope this library can be the first of many Elixir specific security tooling (yes, please read this as forshadowing :smile:). Please feel free to open pull requests and give feedback.

Thank you!

Hex

Many thanks to spidertrap as the core inspiration!

8 Likes

Like the idea, like the effort you make on adding security libs to Phoenix.

DR, meet Crawly. I wonder if Crawly can be improved by letting them date and see how Crawly behaves :slight_smile:

2 Likes