Federico Nieto scored his first SPL goal for Rangers as the Ibrox side moved into joint-third position.
Nieto scored after coming off the substitutes' bench
Thomas Buffel put Rangers ahead after 15 minutes with a deflected effort at the back post, before Dado Prso rifled in the second after 38 minutes.
Noel Hunt's glancing header just after the break pulled a goal back.
But Nieto restored the two-goal cushion with his first touch after 71 minutes, before Peter Lovenkrands (75) and Ross McCormack (85) sealed the win.
Rangers headed into the game at Ibrox aiming to get their league campaign back on track.
The home side quickly set about dominating possession, but struggled to create much in the way of clear-cut chances early on.
There were 10 minutes on the clock before Dunfermline looked really troubled, when Olivier Bernard flighted a cross into the box and Chris Burke's volley fizzed inches wide.
Rangers' hard work paid off after 15 minutes when they took the lead.
Bernard whipped a dangerous ball across goal, which Peter Lovenkrands missed completely, but Buffel was waiting to pounce to knock the ball home in off the back post, although Zambernardi also appeared to get a touch.
The second goal came in the 38th minute when Burke played a short pass to Prso.
The Croatian striker squeezed between two defenders before firing into the roof of the net from 10 yards.
The Pars had barely threatened at all, but Hunt managed to claw a goal back just after coming on as a second-half replacement.
A Greg Ross throw found Derek Young and he returned the ball, allowing the young defender to pick out Hunt completely unmarked at the near post.
All that was required was the Irishman to nod home.
If Hunt's impact had been dramatic, then the introduction of Federico Nieto was nothing short of astonishing.
Less than a minute after taking the place of Buffel, the Argentinian hitman was on the scoresheet.
Prso flicked a Ferguson through ball into the path of Nieto and his volley from 10 yards left the Dunfermline goalkeeper with no chance after 71 minutes.
The game was well and truly beyond Dunfermline four minutes later.
A cross from substitute Ross McCormack cross left Prso swiping at thin air but the ball fell to the feet of Lovenkrands, who drilled home a right-footed shot.
There was more misery in store for Dunfermline when McCormack completed the rout with four minutes remaining.
A Bernard cross took a slight touch from Lovenkrands but the ball broke to the feet of McCormack and he bundled home from close range.
Rangers: Waterreus, Ricksen, Bernard, Kyrgiakos, Rodriguez, Ferguson (Lowing 77), Burke (McCormack 56), Murray, Lovenkrands, Buffel (Nieto 70), Prso. Subs Not Used: Klos, Andrews, Jeffers, Namouchi.
Goals: Buffel 15, Prso 38, Nieto 71, Lovenkrands 75, McCormack 86.
Dunfermline: Halliwell, Labonte, Zambernardi, Scott Wilson, Thomson, Derek Young, McCunnie, Makel, Ross, Horsted (Burchill 70), Tarachulski (Hunt 51). Subs Not Used: Campbell, Craig Wilson, Tod, Muir, Shaw.
Booked: Labonte, Derek Young.
Goals: Hunt 54.
Ref: J Underhill