The hosts were gifted the lead when Shrewsbury left-back Shane Cansdell-Sherriff back-flicked Lee Bell's 21st-minute free-kick over the head of stranded goalkeeper Luke Daniels and inches under the bar.
Silkmen goalkeeper Jon Brain made amends for his howler in midweek with a breathtaking save in the 27th minute to thwart a 10-yard bullet from Ben Davies.
Macc extended their lead in the 52nd minute when veteran striker Simon Yeo was crudely brought down by Ben Herd in the box allowing Gareth Evans to slot home his ninth goal of the season with a powerful penalty.
Shrewsbury went close when on-loan Moses Ashikodi blasted a volley wide from a narrow angle moments later, but the win was sealed deep into injury time when Jordan Hadfield released sub Nat Brown who rounded the keeper to slot home.
Any reproduction, publication or redistribution of this material without the written agreement of 365 Media Group is strictly forbidden.