It is looking like a proper hack rather than a user (a really clever hack as well). It will be SQL injection, where someone has managed to get a bit of javascript into the database through a badly programmed php script on the site. No user details, emails or passwords have been compromised. The hacker has not got into any administrator account and he has not logged into the server itself. I've patched some files and I've got a guy in locking down the server php permissions as we speak. Hopefully the latest Google scan comes back clean.
I may not be able to fix the most recent hacked database and we may have to stick with this one.
Basically we've switched to a backup to fix the problem. The dodgy script is going to be pretty well burried into the site so I think we'll just have to live with 3 days of lost posts
On the bright side the patches and general re-works of the site scripts should stop this from happening again (although in hacking nothing is impossible).