|Informative Information for the Uninformed
Presently, the Battle.net servers contain a fairly limited pool of possible challenge/response pairs for the version check and authentication system. Observations suggest that most products have a pool of around one thousand values that can be sent to clients. This has been used against Battle.net in the past, which was countered by an increase to 20000 possible values for several Battle.net products. Even with 20000 possible values, though, it is still possible to capture a large number of logon attempts over time and build a lookup table of possible values. This is an attractive option for an attacker, as he or she need only perform passive analysis over a period of time in order to construct a database capable of logging on to Battle.net with a fairly high success rate. Given the relative infrequency of updates to the pool of version check values (typically once per patch), this is considered to be a fairly viable method for an attacker to bypass the version check and authentication system.
This limitation could easily be addressed by Blizzard, however, such as through the implementation of one or more of the below suggestions: