Exeter midfielder Liam Sercombe scored twice as Scunthorpe's six-match unbeaten league run came to an end.
The visitors went ahead against the run of play when Sercombe drilled home right-footed from the edge of the box.
Arron Davies scored a dipping long-range effort shortly after half time, then crossed for Sercombe to tuck a shot inside the far post as Exeter scored two goals as many minutes.
Substitute Sam Parkin wrapped up the win late on with an individual effort.
Exeter are now third in League Two, behind leaders Chesterfield on goal difference, while Scunthorpe are 13th.
VIEW FROM THE DRESSING ROOM
Scunthorpe manager Brian Laws told BBC Radio Humberside:
"I thought we were second best in the first half, especially early in the game, and I thought we allowed them a lot of freedom.
"They came with a 3-5-2, which I didn't expect, and we had to adjust to it in our first 15 minutes. I thought that set the tone for the rest of the game.
"The first goal made it more difficult because they changed again to sit deeper, and we had to penetrate them and work even harder."
Scunthorpe United 01 Slocombe 26 Byrne 03 Dawson 04 McAllister Booked (Adelakun - 73' ) 05 Mirfin 06 Canavan 07 Sparrow (Hawkridge - 53' Booked ) 24 Syers 28 Spencer 08 Burton 10 Esajas (Winnall - 53' ) Substitutes 02 Ribeiro 13 Severn 14 Hawkridge 15 Waterfall 16 Adelakun 23 Wootton 29 Winnall Exeter City 01 Krysiak 05 Baldwin 03 Woodman Booked 14 Doherty Booked (Gill - 69' ) 04 Bennett 06 Coles 22 Keohane (Grimes - 69' ) 07 Sercombe 19 O'Flynn Booked 10 Gow (Parkin - 73' ) 11 Davies Substitutes 15 Moore-Taylor 25 Parkin 26 Tillson 29 Grimes 30 Pym 32 Wheeler 35 Gill
Ref: Charles Breakspear