Question: I want to show that for any two vectors $a, b \in \mathbb{R}^n$, and given $M = ab^T$, $\det(M) = 0$. I've come up with the following proof, but I'm not sure if it's sufficient; could someone double-check it?

Given $M = ab^T$, the system of equations $Mx = 0$ is equivalent to $ab^Tx = a(b \cdot x) = 0$. Then there exists a nonzero vector $x$ that is orthogonal to $b$, and so $a(b \cdot x) = a \times 0 = 0$. The existence of a nonzero $x$ such that $Mx = 0$ implies that $M$ is singular, and therefore $\det(M) = 0$.

Is this proof correct? More interestingly, is there a much simpler proof that I'm missing?

Answer: 
I don't know whether it is a simpler proof - it's based on the property that projection matrices have zero determinant - and it can be presented in the following way:

$\text{det}(M)=\text{det}(M^T)$ 

Then

$\text{det}(M)\text{det}(M)=\text{det}(MM^T)=\text{det}(ab^Tba^T)=b^Tb(\text{det}(aa^T))$, 

but $P=aa^T$ is known as a projection matrix (scaled if $\Vert a \Vert \neq 1$, if $\Vert a \Vert = 1$ we have $P=P^2$) onto $a$ line so $\text{det}(aa^T)=0 $, 

hence $\text{det}(M)=0$.
Yes, your proof is right. A more elementary one in my opinion would be the observation that the rows of matrix $M$ are same up to a constant. Observe that first row is $b$ scaled by $a\_1$ (first entry of $a$), and second row is $b$ scaled by $a\_2$ and so on. Then you can do row-elimination to create zero-rows, which then results in a zero-determinant. Yet another one is the observation that $0$ is a eigenvalue of $M$. Now, you can use the more heavy result that determinant is a product of eigenvalues.