There is a second proof which Tony Scholl hints at in the comments. This is probably secretly equivalent to the argument Greg writes up, but I find it easier to think about.
$SL_2(\mathbb{Z})$ is the subgroup of $SL_2(\mathbb{Q})$ preserving the lattice $L_1:=\mathbb{Z}^2$ inside $\mathbb{Q}^2$. Similarly, $M SL_2(\mathbb{Z}) M^{-1}$ is the gorup of matrices preserving $L_2 := M \cdot L_1$. So the group we are interested in is the group of matrices sending $L_1$ and $L_2$ to themselves.
Choose an integer $N$ such that $L_1 \cap L_2 \supseteq N L_1$ and $L_1 + L_2 \subseteq N^{-1} L_1$. Let $\Gamma$ be the subgroup of $SL_2(\mathbb{Z})$ which acts trivially on $L_1/ N^2 L_1$. The subgroup $\Gamma$ has finite index as it is the kernel of $SL_2(\mathbb{Z}) \to SL_2(\mathbb{Z}/N^2)$.
Now, $\Gamma$ stabilizes $N L_1$ and $N^{-1} L_1$, and acts trivially on $(N^{-1} L_1)/(N L_1)$. In particular, any lattice $K$ with $N^{-1} L_1 \supseteq K \supseteq N L_1$ will be taken to itself by $\Gamma$. We chose $N$ so that $L_2$ lies between $N^{-1} L_1$ and $N L_1$. So $\Gamma$ takes $L_2$ to itself, and we deduce that $\Gamma$ is contained in the group we are interested in. So the group we are interested in has index $\leq [SL_2(\mathbb{Z}) : \Gamma]$ in $SL_2(\mathbb{Z})$.