Salop needed a late goal from defender Chey Dunkley to secure their 3-2 victory after they were made to work hard by Paul Simpson's stubborn outfit.
Carlisle took the lead early into the first half through Ryan Edmondson
But Shrewsbury equalised on the stroke of half time through a brilliant free kick from Luke Leahy.
Steve Cotterill's team thought they had the winner 15 minutes from time after Daniel Udoh's shot from close range.
But Carlisle refused to be beaten, and they equalised immediately after, via second-half substitute Kristian Dennis who converted from close range.
With three minutes remaining Shrewsbury did grab the winner as Dunkley tapped home from close range.
It was an important win for Shrewsbury after a tough result at the weekend.
The Salop boss named a strong side for Carlisle's Carabao Cup visit to Montgomery Waters Meadow - making just three changes.
Tom Flanagan had the red card awarded by Andy Haines at the weekend overturned after a successful appeal by the club - and he returned to Shrewsbury's defence alongside Matthew Pennington and Dunkley.
Rekeil Pyke played at right wing-back, and Jordan Shipley left wing-back. Captain Leahy played in a midfield three alongside Taylor Moore and Tom Bayliss with Udoh and Tom Bloxham played up front.
And after a quiet opening 10 minutes, League Two Carlisle took the lead.
Sonny Hilton beat the offside trap down the Shrewsbury left-hand side, and he played a nice pull back to Edmondson who seemed to have all the time in the world to roll the ball beyond Marko Marosi.
It was a sloppy goal for Shrewsbury to concede - but they responded well. Bayliss played in Bloxham down the right, he took the ball to the byline, and his pull back found Leahy just inside the penalty area whose shot was beaten away by Tomas Holy.
Moments later, Pennington saw a good low shot tipped behind for a corner after he made a good interception while Carlisle were trying to play out from the back.
A sloppy touch from Taylor Moore in midfield led to a chance for Carlisle to double their lead. Omari Patrick, who had a lively first half, got the better of Pennington and ran into the Salop box, but it was always going to be a difficult angle to score from, but he did force a smart save out of Marosi.
It was a frustrating half for Town, and at times they were poor in possession.
But on the stroke of the interval, Udoh used his body well to win a free-kick on the edge of the penalty area - and Leahy expertly curled the ball over the wall and in off the underside of the crossbar.
Cotterill made two changes at the break with summer signing Julien Dacosta and George Nurse coming on for Moore and Bloxham.
And Town began to assert themselves.
Pyke broke away down the right after nice a through pass from Udoh but his shot was blocked behind for a corner.
Pennington had two headers from consecutive set plays, the second which he made good contact with but was straight at Holy.
Carlisle did still threaten on occasion, and they had a great chance to regain the lead through their skipper Corey Whealan. It was a header from a corner, and the defender made good contact, but to Town's relief, it went narrowly wide.
And then in the 75th minute Town took the lead for the first time. Pennington played the ball down the right for Dacosta to chase, he did well to get a ball across to Udoh, who controlled with his back to goal, and he swivelled and smashed the ball home with his left foot.
But the goals did not stop there and the the visitors hit back immediately. A long ball over the top by second-half substitute Owen Moxon beat Dunkley, and was taken down by Dennis who fired home under Marosi.
The winner came just three minutes from time via a set piece. It was hit deep to the back post, and Pennington headed back across goal to Dunkley who bundled the ball over the line.
Shrewsbury (3-5-2): Marosi, Pennington, Dunkley, Flanagan, Shipley, Pyke (Caton 85mins), Leahy, Moore (Dacosta 45), Bloxham (Nurse 45), Udoh (Bowman 85mins).
Subs; Burgoyne, Bowman, Caton, Nurse, Craig, Dacosta, Barlow, Bevan.
Carlisle (3-5-2): Holy, Armer, Guy, Edmondson (Dennis 36), Patrick (Stretton 60mins), Hilton (Devitt 76mins, Whelan, Mellish, Back (Gibson 76mins), Barclay, Harris (Moxon 60mins).