Kenneth Paal gave the hosts the lead, but Colback was then shown a red card and the Black Cats equalized after seven minutes of first-half injury time when Jack Clarke’s effort was deflected by the Rs defender Steve Cook.
Rangers fought hard, but second-half goals from Dan Ballard and Abdullah Ba ensured the points for Tony Mowbray’s side.
QPR have won just once at Loftus Road since last October and have lost all three of their home games so far this season.
Paal opened the scoring for them with a neat strike from just outside the penalty area after 12 minutes.
After Sunderland failed to properly clear Paul Smyth’s throw-in from the right, Ilias Chair teed up Paal, who sent a low left-footed shot past goalkeeper Anthony Patterson and into the bottom corner of the net.
The goal came somewhat against the run of play, the visitors having made a good start.
Rangers survived an early scare when Ballard blazed at the far post from Clarke’s left corner, before Sunderland appealed in vain for a penalty when Clarke fell in the box as he tried to get between Smyth and Sam Field.
Paal’s opener – the left-back’s second goal of the season – galvanized Rangers, but they suffered a major blow when Colback was sent off nine minutes later.
Colback is a hugely unpopular figure among Sunderland fans, having left the club to join arch-rivals Newcastle in 2014, and they reveled in his straight red card for a challenge on Jobe Bellingham.
The Black Cats had a goal disallowed for offside shortly after when Bellingham headed in after being found by Alex Pritchard’s ball from the left.
And an almost identical build-up then resulted in Bellingham losing a keeper as he failed to make contact when found unmarked again inside the area by Pritchard.
However, just as Rangers looked like they were going to come in front, they conceded the equalizer. Trying to push out Clarke’s shot near the left edge of the penalty area, Cook only managed to divert the ball past goalkeeper Asmir Begovic.
A second-half barrage from Sunderland inevitably followed and they took the lead in the 57th minute thanks to defender Ballard’s first goal for the club.
Pritchard exchanged passes with Patrick Roberts and was denied by Begovic, but the loose ball rolled to Ballard, who had a simple tap-in.
Ba almost added a third when he fired against the outside of the post from an awkward angle after being set up by Bellingham.
But he made no mistake in forcefully taking a cross from the left from Adil Aouchiche in the 81st minute.
QPR: Begovic, Kakay, S Cook (Clarke-Salter 74), Fox, Smyth (Dykes 60), Field, Colback, Paal (Larkeche 68), Dozzell, Chair (Willock 68), Armstrong (Kolli 68). Unused subs: Dixon-Bonner, Duke-McKenna, Walsh, Adomah.