The forward netted twice before Aleksandar Mitrovic got what turned out to be a consolation goal for the home side.
The visitors started brightly, and they went ahead after just four minutes. Jack Robinson took the ball on the left flank and sent his delivery into the box for Grabban to connect first time past Marcus Bettinelli.
Grabban shot wide after seventeen minutes as Forest looked for a second but Fulham started to get a foothold into the contest.
Despite their pressure, the hosts were unable to properly trouble the Forest goal. At the other end, Bettinelli denied Grabban a second goal just before the interval with a block.
Knockaert was matched again by the Forest keeper after 53 minutes when his header was tipped away at full strength.
Although Forest were on the backfoot, they managed to double their advantage just after the hour mark.
Grabban picked up a loose ball outside the area and was able to take advantage of some slack defending to fire home.
Samba was called into action again after 69 minutes with a great reaction save, after a shot by Steven Sessegnon was deflected off a defender.
The home side put themselves back in contention with a goal on 84 minutes, after Mitrovic put his effort to the left of Samba.
The goal rejuvenated both the home crowd and the team who showed a burst of energy in the sweltering conditions at Craven Cottage.
Mitrovic missed out on a second just before the end when he was unable to glance his header on target.
Referee Peter Bankes played eight minutes of additional time and the home side continued to lay siege to the Forest goal.
Despite penning the visitors back in their own half they were unable to overcome a resolute Forest who left west London with the win.