I don't think it's a matter of exaggeration as much as just not knowing what the real requirements are. I got a small peek behind the curtain recently when a manager two levels above me asked for help posting a job ad. Their one and only question was whether they should be using the .NET or J2EE template for a new hire on a particular project. This gives you two pieces of information (at least about the company I'm contracted to).

They use standard templates to advertise open positions.

The people posting the ads don't even know what the open position is about.

Based on many of the job ads I've seen, I imagine that a lot of hiring managers use the same flawed approach.