freenode bot monitoring

A project created to keep track of and ban unauthorized (spy) bots on freenode

Premise

This project was initially created because we've seen a particular pattern of bots. Since then, we've seen many other bots with varying patterns. The ones we initially created the project for are long gone now. We're not as active now but we still occasionally find and ban new bots.

Connect

Join ##botmonitoring on the freenode IRC network (webchat).

Banning the bots in your channel

If you want to ban the bots, execute this command in your channel(s):

/mode +b $j:##botmonitoring-bots$##not-a-honeypot

This will automatically keep your channel's ban list up to date with the ban list of ##botmonitoring-bots.

Any users matching the bans will be forwarded to ##not-a-honeypot. You can choose not to forward them by removing the $##not-a-honeypot part. However, if you keep the forward, it's probably a good idea to join that channel so that you can notice if an innocent user happens to get caught by one of the bans. (It's rare, but it can happen.)

Avoiding the bots

We believe these bots find channels because they appear on /list, which lists every non-secret channel on freenode. You can remove your channel from the list by applying the channel mode +s.

Alternatively, you could use +r to block unregistered users, but that may also prevent some regulars that don't have a NickServ account or aren't identified to it from joining.

Help on channel modes: https://freenode.net/using_the_network.shtml#modes

Rules

  1. Use common sense.
  2. Do not bring unauthorized bots to the channel. This includes client scripts with automated triggers replying in-channel.
  3. Avoid sending too many messages and CTCP requests to detected possible bots if they aren't obvious, because if they happen to be real people, you will just annoy them.