Well, I think I have a proof for the finite case:
Assuming $S$ is a finite semigroup, then fix some element $x\in S$ and consider the set $\{x^{2^n}\mid n\in\mathbb{N}\}$. Since $S$ is finite, there exist $m,n\in\mathbb{N}$ such that $m<n$ and $x^{2^m}=x^{2^n}$. So $x^{2^m}=(x^{2^n})^{2^{n-m}}=x^{2^n}$ and so, since $(x^{2^n})^{2^{n-m}}=x^{2^n}$, if $2^{n-m}=2$ we're done. If not, the multiply both sides by $(x^{2^n})^{2^{n-m-2}}$ to attain $((x^{2^n})^{2^{n-m}-1})^2=(x^{2^n})^{2^{n-m}-1}$