They are of course vulnerable to some amount of manipulation, but with a good algorithm that could be rendered sufficiently costly to become impractical.
They are probably as good as we have today but even they could be manipulated if large amounts of money was on the line. I can't see any way of introducing algorithms to make it more difficult to manipulate though.