Method of Lagrange multipliers gives that only eigen vectors of $X^TX$ can be solution to your problem.
Forget about $||b-b_0|| for now
$\text{max} ||Xb||^2, s.t. ||b||^2=1$
Lagrange multipliers gives
$\text{grad}||Xb||^2 = \lambda \text{grad}||b||^2$
$2X^TXb=\lambda 2b$, so b has to be eigen vector of $X^TX$
So you get suspected points $b_1,b_2,..b_k$, which are eigen vectors of $X^TX$ and $||b_i-b_0||.
But there can be maxima on boundary i.e. on $\{b: ||b||=1, ||b-b_0||=a\}$. So you have to do Lagrange multipliers once more. So you have to solve $\text{grad}||Xb||^2 = \lambda_1 \text{grad}||b||^2 + \lambda_2 \text{grad}( ||b-b_0||^2-a^2)$. You get suspected points $c_1,...,c_l$. Now you have to find at which point from $b_1,..,b_k,c_1,..,c_l$ attains $f(b)=||Xb||$ its maximum. If it is point $b_i$ tha you are ok and solution exists. If it is $c_i$ than you are screwed.
(Is there really $||b-b_0||? If you had $||b-b_0||\leq a$, it would have always solution.)