Isn't the best way to figure out a botnet is to write your own virus?
Antivirus software never breaks down. He is just waiting for an attack from people who have enough time to steal / download / install X software, check its protection and deploy new updates for their drones / zombies to exploit the weakness of X software. Thus, an instant defeat X software (especially if your computer shuts down as candidate # 1 to test a new exploit).
So, to play a crime, why not write your own antivirus.
Ethics / morality aside, if you wrote a self-propagating virus whose only task was to bring out Zeus, Confker, Groom, Bobax, etc., you could sit back, relax and watch your email filter gradually end up doing.
You can be Batman on the Internet. Breaking the rules for the greater good! Of course, I'm not seriously advocating vigilance, but theoretically you can wage war against any botnet using the same tactics that the virus / worm / trojan uses.
To make it more ethical, uninstall your program yourself by cleaning the computer and copying it to another.
The people involved in the botnet were not asked to participate in it, so do they need to be asked not to participate in it?
What do you think?
EDIT
As @ Woot4Moo pointed out, I clearly don't have a lot of background in this area.
And of course, I know that you cannot really separate morality / ethics from this issue, because at the end of the day I don’t want anyone to mess with my things (regardless of their “good” intentions).
I suppose my question was more like (again an attempt to remove morality) "What would be more effective in dealing with the problem?" Waiting for an attack or attack. This idea gave rise to my idea of a "Good Botnet" (the idea is clearly beaten).
So, my counter question: how will we proceed next? Attack management and management servers? (Again, it is illegal to burn a building, even if it belongs to a crowd). Or will we not worry and play defense forever? (And if I am not aware of the offensive initiative, then please enlighten me).