Spam-O-Matic's plugin is good, which you can get from the vBulletin customer area, and changing your DNS over to Cloudflare will help tremendously!
I don't think its possible, i tried it several times but failed....but i did succeeded is stopping the spam posts by using cloud flare.
Just a quick note if you do use CloudFlare for your Vbulletin forums... Make sure you do a quick Vbulletin modification so original visitor IP is reported back to your server logs.