Rashford, captaining the side for the first time, stroked home from 12 yards after Jack Grealish had been fouled, before Jordan Henderson missed a second spot-kick, having made his return from injury as a half-time substitute.
Ahead of kick-off, the players were once again booed by sections of the Middlesbrough crowd as they took the knee. After a minority booed the stance ahead of Wednesday’s win over Austria, Gareth Southgate had urged fans to back the decision of his squad to show their solidarity against racism and inequality.
Dominic Calvert-Lewin and Jadon Sancho struck the crossbar in a first half of minimal quality from the hosts, while Jordan Henderson’s return from injury was marred slightly when he saw a penalty saved late on as he was unable to follow in Rashford’s footsteps from the spot.
A smattering of derogatory chants from a small number in the crowd and a first-half pitch invader only added to the ill-feel from the stands as 6,952 supporters watched on – with numbers slowly growing as coronavirus restrictions lift.
There are due to be 22,500 in attendance for the Euro 2020 opener against Croatia at Wembley next week, where the reaction to taking the knee will be seen across the continent.
Southgate made nine changes from the Austria victory as three of those players cut from his 26-man squad started.
Ben White, Ben Godfrey and James Ward-Prowse will be hoping to be the one called up to replace the injured Trent Alexander-Arnold and it was the latter who caught the eye.
Captain Harry Kane was named on the bench, with Rashford wearing the armband for the first time as the only player in the starting XI to have won more than 20 senior caps.
But it remains to be seen how many of this side will start against Croatia – especially with the seven Champions League finalists returning to contention following an extended break.
Additional reporting by PA.