Are there any fundamental security vulnerabilities in Bitcoin? Although Bitcoin does its best to prevent double-spending, could it still happen in practice?  Is it just very unlikely that fraud could happen, or is there a mathematical proof that it could never happen?
As David Schwartz said in 367; Dan Kaminsky has spent some time auditing the Bitcoin core . He is a respected security professional, and his opinion on these matters is highly regarded.

He came to the conclusion that there weren't any concerning security vulnerabilities, but scalability is something that will have to be tackled as the project grows. Essentially; nothing the developers didn't already know about.