The solution to the problem is simply allowing only the people you know to reach you. Sadly, its a feature that only Yahoo Messenger (for now anyway) has because the Yahoo network (well AIM and other networks also have this feature, but Yahoo's the only one that seems to suffering the fury of the spammers right now) allows anyone to communicate with everyone on the network. So once a spammer has your Yahoo address, this is pretty much your only option.
How to ignore people you don't know in Yahoo Messenger
Got a question, tip or comment? Send them to email@example.com and we'll try to answer it in a blog post!