If you are a veteran yourself and can talk to the person, it usually takes about 4 minutes to figure it out. Dates are all wrong, locations don't match up, can't tell you what their MOS was, and most importantly often fake being traumatized by whatever war they were in. Most incredible one happened to me about two weeks ago. Guy told me he was a Vietnam veteran and had some very elaborate stories. Later in the conversation he told me he was 41. Not only a liar, but apparently a mental defective.
That's the ticket. Not bragging but it takes but a few minutes, usually. And that is without trying. Thing just don't ring true. Once I realize they are lying, I just back off. If they are lying about military service they should not be cornered.
It's too bad that the services switched over to using Social Security numbers at some point in time. Prior to that, anyone could just ask for their service number. Even the slightest hesitation is the dead giveaway of a phony.
I've been out since 1975 and can still rattle mine off instantly. As much as it gets drummed into your head while you're in, I'm convinced that it's stuck there for life.