Canberra Raiders pulled off a stunning comeback to beat NRL leaders Melbourne Storm 22-18, while Newcastle Knights hammered North Queensland Cowboys 42-6 to emphatically end a six-match losing streak.

The Storm could have wrapped up the minor premiership with a win and a Sydney Roosters defeat on Monday, but Raiders battled back from 18-0 down to significantly boost their top-four hopes.

Melbourne were in complete control after 30 minutes, helped the by the early sin-binning of Jack Wighton for a tackle from an offside position, before Joe Tapine was also yellow-carded for a scrap with Nelson Asofa-Solomona.

Justin Olam, Josh Addo-Carr and Suliasi Vunivalu all crossed but the Raiders rebounded with 22 unanswered points.

Joe Croker led the way with a brace and he also added the extras to tries from Jordan Rapana and Josh Papalii. The Raiders are third, six points behind leaders Storm.

The Knights will have been similarly elated with their showing, as they demolished the Cowboys.

A woeful slump had seen the Knights beaten by New Zealand Warriors, Canterbury Bulldogs, Sydney Roosters, Wests Tigers, Manly Warringah Sea Eagles and Parramatta Eels since last winning against Brisbane Broncos on June 29.

But they found their groove once again to keep finals hopes alive, with Kalyn Ponga and Mitchell Pearce getting two tries apiece.

The result leaves them two points behind eighth-placed Penrith Panthers.

In the day's late kick-off, South Sydney Rabbitohs suffered a surprise 14-6 defeat at home to the struggling Bulldogs.

Wayne Bennett's men had been hoping to remain level with the Raiders and the Roosters, but they stay in fifth place as a result.