If you are going by the rules of English that you have learned, then the song lyric is wrong.
It is like saying that "There's many problems with that." It's said by people all the time even though, grammatically, it should be "There are many problems with that."
It's good that you want to identify what's technically correct—and also how people go against that. (Although if enough people do the wrong thing, it will eventually no longer be wrong.) However, at present, no grammar text in the world will tell you that this lyric is right.
Either this lyric was used mistakenly, or it was used deliberately, with full knowledge of grammar versus culture.
A quick way of remembering it is to remember that whom pairs with him (and who pairs with he).
Whom haven't you lied to?
You haven't lied to him."
Who haven't you lied to?
You haven't lied to he."
Who said they were going to the party tonight?
Whom said they were going to the party tonight?
Of course, this only gives you the form. If it's a woman, then the answer is her or she. But, only whom and him share the m in common.
So, consider the form of the question and answer. Either it will be whom and him or it will be who and he. And only one of those pairings will make sense.