The reason why this is possible on your server(s) is not a bug. It's permission related.
Your server allows to send messages or pokes or create channels via ServerQuery Guest group. This is the one you get when you connect to a server via telnet without sending any login command.
You need to change the permissions once (when your server was started for the first time before version 3.0.11.2.)
Just updating the server will not solve the problem. Set permissions don't get changed during an update.
Here are the steps to restrict the Guest Query to abuse your server for spam (chat, pokes and via channel name).
1. Update your server to the latest version.
http://www.teamspeak.com/downloads
2. Login into the ServerQuery interface via telnet / putty to change the permissions in the next step.
How to use the ServerQuery
Ask your Admin or Hoster in case you don't have access to the ServeQuery and/or the serveradmin login.
3. Perform these 3 commands in telnet/putty (replace yourpasswordhere with your own password and ANY_ACTIVE_PORT with the voice port of your server (9987 is default))
Code:
login serveradmin yourpasswordhere
Code:
use port=ANY_ACTIVE_PORT
Code:
servergroupaddperm sgid=1 permsid=b_channel_join_permanent permvalue=0 permskip=1 permnegated=1|permsid=b_channel_join_semi_permanent permvalue=0 permskip=1 permnegated=1|permsid=b_channel_join_temporary permvalue=0 permskip=1 permnegated=1|permsid=b_channel_create_permanent permvalue=0 permskip=1 permnegated=1|permsid=b_channel_create_semi_permanent permvalue=0 permskip=1 permnegated=1|permsid=b_channel_create_temporary permvalue=0 permskip=1 permnegated=1|permsid=b_client_server_textmessage_send permvalue=0 permskip=1 permnegated=1|permsid=b_client_channel_textmessage_send permvalue=0 permskip=1 permnegated=1|permsid=b_client_offline_textmessage_send permvalue=0 permskip=1 permnegated=1|permsid=i_client_private_textmessage_power permvalue=-1 permskip=1 permnegated=1|permsid=i_client_poke_power permvalue=-1 permskip=1 permnegated=1
4. You did well when you read error id=0 msg=ok after each command. There is nothing more you need to do here.
(Optional Hint:
It could be that this Query still can send pokes and chats to users who own a i_client_needed_private_textmessage_power & i_client_needed_poke_power with a value lower than 0. You have to raise these values to 0 at least to avoid spam for them.)