AntiBot
I'm sorry guys, right now my life is too occupied to be updating AntiBot right now and/or fixing things. The only thing slowing me down is a working 1.5.2 bot and other things, I don't have the time to create a bot for 1.5.2. This plugin operates fine on 1.5.2 because it only utilizes the Bukkit API.
The ultimate anti chat-spam protection plugin for Minecraft. It trolls users who use login spam tools like PWN4G3 and Paradigm.
AntiBot 4.0.4 has been released! Fixing some old bugs and a new option to disable AntiBot's bot protection a-lot easier!
AntiBot v4.0.4 - Download
Bukkit Thread: http://forums.bukkit.org/threads/admn-sec-antibot-v2-3-the-ultimate-anti-spam-protection-for-minecraft-1-1-r6.63370/
About
This plugin uses variety of special techniques to block spam bots from joining your Minecraft Server. It blocks spammers by checking how many players join per second (EX: 12 players join in 5 seconds). If that statement is true, it will take action against those users (kick/send captcha).
It has Chat Spam protection. After a certain amount of chat messages are sent in less than x seconds, they're kicked from the server. This includes commands, and chat messages as well.
It also has other options, such as CAPTCHA, Chat Flow, Login Delay, Country Bans, and delayed start!
Chat Flow solves one of the most possible scenarios out there, when the bots bypass anti-chat spam protection! The name of this feature is practical to keeping your server chat from chat spam. Read the following scenario to get a better understanding of how it works.
Scenario - Before Chat Flow
This guy's Bob. He runs a popular PvP server. He loves the incoming traffic towards his server. But then, some angry guy finds your server and is angry for no apparent reason. So he opens his tools and begins sending 20 players or "bots" to your server, the bots then bypass your spam protection by sending 1 message every 2 seconds. The chat spam protection isn't doing anything and your server chat ends up getting spammed like crazy.
Scenario - With Chat Flow
Bob installed AntiBot and adjusted AntiBot's Chat Flow. The angry guy came around and once again, loaded his "bots" into the game and began running the same technique. But fortunately, AntiBot's chat flow kicked in and muted the entire server chat for 5 seconds (auto increments by 5 seconds each time chat flow detects spam). If Bob assigned antibot.voice to his staff, they would be able to talk regardless if the chat is muted or not. Bob then manually bans the bots and the day has been saved!
I had no better way of explaining chat flow besides this scenario.
CAPTCHA enforces users to solve a puzzle if they spam. It can also trigger a puzzle for everybody if Chat Flow detects spam, trigger puzzles for players that trigger the connection throttler, trigger puzzles for players detected by multiple account system, and trigger puzzles on every join.
Country Bans allows you to ban (or whitelist) countries into your server. This is perfect if you wish to make your country based minecraft server to only allow your country.
Delayed Start solves another problem, what if you restart the server with a bunch of players on, and basically when they all rejoin, AntiBot then detects bot spam and starts kicks everybody for no reason. This prevents that happening by disabling AntiBot for 60 seconds and re-enabling afterwards.
Login Delay allows you to resolve connection/disconnection flooding from the same player. Whenever a player rejoins the server in less than 10 seconds (configurable), they will be "temporarily banned" from rejoining until 10 seconds (configurable & a separate value in the config, they're not hand in hand) is up.
The best part? This plugin is configurable to your own hands. If my default settings don't work for your server, change them!
WARNING: Expect false positives if you install the plugin if your server gets over 20 connections a minute or is really populated.
Download
Because BukkitDev requires approval. I've made a wget friendly URL you can use: http://dev.bukkit.org/media/files/657/192/AntiBot.jar
NEW NEW: You can now download development builds from H31IX's CI (Thank you so much). http://ci.h31ix.net/job/AntiBot/
GitHub
Want to become a wizard and mess with sourcery?. Then go ahead and click me to go to the GitHub.
You can also find the plugin download in the GitHub as well.
Commands/Permissions/Configuration
You can find the Commands & Permissions here.
You can find the Configuration explanation here as well.
NOTICE: You don't have to edit your configuration. You should if you want optimal performance, though.
History
This plugin was not created after AntiPwnage or NoPwnage, this project started a year ago and was a private plugin for my Minecraft Server (freebuild.me).
What I do/Requests
The first thing that came to mind when I was writing this plugin for release, I noticed that people will find that the commands portion of the plugin may not suffice their needs of a basic Anti Pwnage plugin. If this is the case, feel free to request it in a ticket or post a comment about it on here (However, I may miss it. So tickets is your best option.). I will reply to your request ASAP and see if it's a possibility or not. It will most likely be possible to add your idea to the plugin, so request it if you can!
Help?
I'm no longer going to give support for those who decide to use an outdated AntiBot build.
If you wish to receive proper help from me, I'd like for you to answer these questions in your response.
- What version and build (Original or modded) of CraftBukkit? What version of AntiBot are you using? Is it the latest? If not, then you are ineligible for support.
- What exactly happened ("Bots joined still after i installed.." is not what happened. Please give the exact time & the exact event that took place).
- What permissions plugin + version are you using? Did you assign any AntiBot permission nodes? To whom? What was the exact node? Where was it placed in your config (group wise). Did you test the permission with a permissions tester? (AntiBot will have one of these in the upcoming future).
- What was the status of AntiBot? (If you did your permissions correctly, you can type /antibot and it should tell you (By "System Status:") whether AntiBot is enabled or not).
OPTIONAL:
- OPT Server logs of AntiBot in action.
- OPT (Completely Optional, but will speed the process of your help by thousands) Screenshots/Videos of the event that took place.
If you don't provide the information that isn't optional, you won't be replied to and may have your comment deleted.
@SuperSpyTX
I was wondering if you can mute the entire server on a command, rather than it doing automatically (beside ranks with antibot.voice) If not, can you add a command to do so? if so, whats the command o:
Uploaded AntiBot v2.7.1. Fixed a few missing configuration values. Also updated to latest RB.
@codydbgt
If you have problems with people randomly joining as random names and not sure if it's from one IP or not. You can enable the multi account detector by going to your configuration and changing enable-multiacc-detection = false to true.
This gives me an idea though, if people are spamming from one IP address, mute, kick, or ban the IP address accordingly!
I may also add an username verifier, if the server is offline, check if the username joining has allowed characters in their username as well.
would you mind adding an option where you got a offline mode server and you got random name players joining and insted of using there name use there ip......
@SuperSpyTX
I love your plugin! Works perfectly :D
AntiBot 2.7 has been uploaded to BukkitDev!
You can grab a copy here as well: https://github.com/downloads/SuperSpyTX/AntiBot/AntiBot.jar
NEW: You can now download development builds from my fresh Jenkins Install (which may not last too long): http://ci.freebuild.me:8080/job/AntiBot/Development/
@levisn1
If you can read, you can see how it's done. http://dev.bukkit.org/server-mods/antibot/pages/configuration/
@BoboTheTwit
in my server bot bypass the default config.. :( i dont have really understand how to change joins and joins-sec...someone can help me? i usally have 100 players on my server..and i have ban on false to prevente false positive bans..
@Hans6666
nice idea :D
Plugin updated! Come check it out! BukkitDev approval should come around the corner.
I was thinking about disbanding this plugin because some people have told me numerous bugs.
Now I feel like I can continue, infact. I have another plugin coming soon.
I also have my own spambot, so I can continue the development of this plugin and do massive bug fixing and hopefully release an update this weekend.
Of course the GitHub is always/usually updated. So if you desperately need xxx or yyy, compile the source code yourself. It shouldn't be that hard.
@Hans6666
That might be possible really. Actually I could just see and implement GeoIP myself and then have the ability to block country IPs by config.
you could add essentialsgeoip support so that its possible to block several countrys from login? for example on my server there are just playing players from germany austria etc. and i want to block United States because there are a lot of US-proxys
thanks
Saved my server, thanks!
Hey, I'm just going to let you know that this plugin saved my server, I didn't want to whitelist and I looked everywhere for something to help me protect from the logspamming, then I found this. All I can say is thank you, as I have no words to describe how thankful I am to you creating it. It has saved me from having to shut down my server or move to another IP where I'd eventually meet the same issue. You sir are awesome, give yourself a cookie, 'cause if I shipped one, it might not be so good.
Edit: Though for one suggestion, an ability to whitelist certain players from the fake bans would be nice
Put it in for 10 mins on default 14 People get banned.
Nice /end sarcasm
Also, My Staff and Donors keep getting kicked for spamming, When they arent. And they have the perms so they shouldnt be able to get kicked at all
@SuperSpyTX
Since adding this plugin. I keep seeing this
http://pastie.org/3664082
Please tell me why, Different people are getting it.
@Coolclone01 Sorry for delay in response.
First Q: Yes it is in milliseconds.
Second Q: The banning system does throw false positives right now. So I made a config value that disables the banning part of the plugin. I do have an update incoming but it is not available at this time. I would compile the code in GitHub.
Third Q: This could be done easily by setting some values to 0. But I will add an option to disable it.
Hello! I have a few questions about this plugins and the configurations. First of all, when it's talking about 'seconds' as in 'joins-sec - Set the accounts per X seconds.' does it mean actual seconds or milliseconds? Second, How do you look at the ban list of the plugin, as if it bans someone that is innocent, how can we access it to unban them? Thirdly, how do you only use the anti bot portion of the plugin and not the spamguard portion, as we already have spamguard installed.