Personally, I'm open to all possibilities. Currently my guess is she's the Rani, from old-school Dr.Who. Why? Because the Rani is morally ambiguous as seen in the few episodes she was in. She's also a Time Lord, with full knowledge of how to operate the Tardis and knows ancient Gallifreyan. And with so much mystery surrounding River Song, she's bound to be someone we know.
But I was recently challenged to put my speculation of her being the Rani on the back burner and come up with a theory more ridiculous. It seems the theory of her being the Rani was too far-fetched for some people. Really? So I decided to devise a new crackpot theory of who River Song could be. Ready for this?
River Song is actually a future version of Captain Jack!
Morally ambiguous like River Song? Check!
Daleks were afraid of River Song in the Big Bang, are they of Captain Jack? Who wouldn't be afraid of someone who can never die.
River knows a lot about the Doctor and Gallifrey. Jack also knows the Doctor really well. How about Gallifrey? Living forever is a long time. Lots of free time to do research.
She knows how to pilot the Tardis? As a former Time Agent and companion of the Doctor, so does Jack.
Willing to kill? Yes. See any episode of Torchwood for confirmation and this seasons Doctor Who for River Song.
Neither seem to be a regular companion of the Doctor in the Tardis. But each has still travelled with the Doctor from time to time. Jack, even after leaving the regular Tardis crew.
How about River Song being a woman? Well, it's possible Jack had a sex change at some point, but more likely simply wearing a perception filter.
River Song claims to have a great love for the Doctor, but so does Jack.
Jack turning into the Face of Boe? Or River Song dying? Jack as Face of Boe was hinted at, but never confirmed. As for never dying, who is to say he won't ever find a cure for his curse?
So ultimately what am I saying? Is the possibility of River Song being the Rani that outlandish? Not when you look at other outlandish theories. Is River Song Captain Jack? Obviously I was joking, I'm certain she's the Rani.