CAMERON Brannagan’s late penalty earned Oxford United a priceless three points as they dug deep to beat Shrewsbury Town.

The midfielder fired home seven minutes from time after Ryan Williams went down in the box, giving the U’s a hard-fought win on a day they were depleted by illness and injury.

Matty Taylor’s 21st goal of the season put the U’s ahead early on, but a makeshift defence was eventually breached after an hour as Ryan Bowman levelled the scores.

United weathered a spell of Shrewsbury pressure after the equaliser and scored yet another late goal, Brannagan bagging his 13th of the season from the spot.

It sealed the U’s fifth successive win over the Shropshire side, while they held on to fourth place in Sky Bet League One.

United already knew Sam Baldock would be absent with a knee injury, but a bout of illness in the camp left them without three more members of last Saturday’s XI.

Jack Stevens, Ciaron Brown and Sam Long were all ruled out, bringing the number of unavailable players to nine.

It saw Karl Robinson name an unfamiliar back three, as club captain John Mousinho made his first League One start since December 2020 in front of the returning Simon Eastwood.

Steve Seddon was drafted in at left centre back, while Nathan Holland came in for Baldock and Gavin Whyte joined Taylor up front.

The long list of absentees meant Karl Robinson only named a six-man bench, with January signing Oisin Smyth and 17-year-old defender James Golding among the substitutes.

Shrewsbury looked to test United’s makeshift defence from the start and Luke Leahy headed straight at Eastwood inside three minutes, before the game’s first contentious decision.

Elliott Bennett burst down the right and crossed from the byline, with the ball clearly striking Seddon’s hand at close range. Referee Andy Davies was unmoved, despite the home fans’ cries for a penalty.

United did not make it easy for themselves early on as they played into trouble several times, but from one such move came the opening goal.

The U’s just about survived after Mousinho and Eastwood supplied consecutive hospital passes, allowing Kane to advance down the right and find Whyte running in behind.

Marko Marosi was out quickly to block the shot with his feet, but the ball popped up kindly for Taylor to volley home in front of the away fans.

It ended Shrewsbury’s run of three successive clean sheets and the hosts looked for a response, Leahy again heading at Eastwood as they utilised their aerial threat.

The U’s goalkeeper made a brilliant save midway through the half, diving to his left to push away Ethan Ebanks-Landell’s powerful header after the centre back met Bennett’s corner at the far post.

Meanwhile, Davies’ decisions were not proving popular with the home fans, although he turned down a United penalty shout when Taylor was felled in the box.

At the other end, Luke McNally and Dan Udoh were locked in an intriguing battle and the centre back made a great last-ditch challenge to stop his opponent running through on goal.

The Irishman raced down the right moments later, casually beating a defender to reach the byline.

The U’s worked it to Brannagan 20 yards out, whose shot took a deflection before sneaking inside Marosi’s right-hand post. Unfortunately for United, Taylor made a move towards the ball and was adjudged to have impeded play from an offside position.

United’s makeshift defence restricted Shrewsbury to set-pieces and long shots as half-time drew nearer, with the first chance of the second period falling their way.

Mark Sykes raced down the right and clipped a cross to the far post, where fellow wing back Williams arrived. The Australian caught it on the rise and could not keep the shot down.

Bennett flashed a corner across the six-yard box just before the hour mark and assisted the equaliser from a similar position.

The right wing back took Vela’s pass and crossed from the byline, with Bowman on hand to convert his first goal in 15 games – and Shrewsbury’s first in three matches.

The hosts had their tails up and forced quickfire corners on both sides, Eastwood diving to his right to catch Matthew Pennington’s header from the second set-piece.

Billy Bodin replaced Holland midway through the half to make his first appearance since February 12, before another big chance fell to the home side.

United went to sleep, allowing Leahy to dink a pass in behind for Bennett to chase. The wing back reached it at the byline and set up Bowman, who blazed over from six yards out.

Marcus McGuane replaced Whyte to bring up 50 U’s appearances, the midfielder playing alongside Brannagan in front of Kane as Bodin pushed up to partner Taylor.

It was all to play for as the game entered the final ten minutes and United, once again, were the side to win it late on.

Williams raced down the left and went down under Bennett’s challenge at the byline, with Davies pointing straight to the spot.

Marosi made Brannagan wait before taking the penalty, but the No 8 was unfazed and fired to the goalkeeper’s right as the stopper went the other way.

It only increased Shrewsbury’s frustration at Davies, with home boss Steve Cotterill booked in stoppage-time for his repeated protestations.

Shrewsbury Town (3-4-2-1): Marosi, Pennington, Ebanks-Landell, Flanagan, Bennett (Bloxham 85), Fornah, Leahy, Nurse, Vela (Whalley 85), Udoh (Janneh 87), Bowman.

Unused subs: Burgoyne, Pierre, Daniels, Bondswell.

Booked: Pennington.

Oxford United (3-4-1-2): Eastwood, McNally, Mousinho, Seddon, Sykes, Kane, Brannagan, Williams, Holland (Bodin 68), Taylor (Winnall 87), Whyte (McGuane 77).

Unused subs: Golding, Forde, Smyth.

Booked: Sykes.

Referee: Andy Davies (Hampshire).

Attendance: 7,302 (1,231 visitors).