Joe Anyinsah's early goal was not enough to give Carlisle breathing space at the bottom of League One as Scunthorpe battled back for a point thanks to Hayes' strike.
The Cumbrians went ahead in the 19th minute when Anyinsah grabbed his fourth goal of the season.
Lewis Neal's expert in-swinging corner dropped just over the head of the first defender, allowing the ex-Preston striker to bundle in at the near post.
As early as the third minute, Carlisle could have gone ahead when Neal's free-kick almost dropped under the bar before Iron keeper Joe Murphy tipped over.
Carlisle's Danny Graham, back from injury after missing two games, then went close to adding a second when he flashed a shot across the face of goal from a tight angle.
Scunthorpe striker Gary Hooper then passed up a golden chance to equalise seven minutes before the break.
Jinking past Richard Keogh, Hooper was left with just Ben Williams to beat from 12 yards, but the Carlisle keeper blocked brilliantly low down to his left.
Peter Murphy should have made the game safe for the Cumbrians when Scunthorpe failed to clear a corner, but the Irishman's volley flew inches wide with Graham stretching in vain to touch in.
With 20 minutes to go, Hayes made Carlisle pay for their missed chances with a brilliantly struck leveller.
Sub Martyn Woolford's free-kick found the striker in space in the corner of the penalty box and he let fly with the outside of his boot to curl a perfect shot across Williams and off the underside of the crossbar.
The visitors piled on the pressure, sensing only their second win in nine games, but Hayes could not steer in Sam Togwell's cross from close range despite Williams spilling his shot on to the post.
With seconds to play, the points should have gone to the visitors but substitute Liam Trotter somehow poked over from six yards with his first touch of the game to leave the Cumbrians thankful for a point.