The Egyptian's close-range strike in front of the Kop settled the Premier League contest following an end-to-end second half, during which all five goals were scored.
Diogo Jota had opened the scoring shortly after half-time but former Red Neco Williams equalised with a deflected effort.
Jota grabbed his second to restore the hosts' advantage before it was 2-2 when Morgan Gibbs-White volleyed home, setting the stage for Salah to win it.
Team news
For the third consecutive game, Jürgen Klopp opted to field an unchanged line-up.
Alisson, Alexander-Arnold, Konate, Van Dijk, Robertson, Fabinho (Thiago, 60), Henderson, Jones (Milner, 81), Jota (Diaz, 81), Salah, Gakpo (Nunez, 60).
Unused substitutes: Kelleher, Gomez, Elliott, Tsimikas, Matip.
First half
Liverpool dominated possession but saw their opportunities in front of goal come via set-pieces.
Ibrahima Konate glanced a header just wide from Andy Robertson's free-kick, while a corner came quickly to Virgil van Dijk, who was unable to adjust his feet and find the target.
At the other end, Gibbs-White was gifted possession in a central area and hit a shot from distance that went straight at Alisson Becker.
The Reds continued to threaten from dead-ball situations and Van Dijk forced a fine save from Keylor Navas off a Trent Alexander-Arnold delivery.
A corner from the No.66 then made its way to Cody Gakpo inside the box, with the forward's nudge cleared off the line by Williams.
Jota had a golden chance in the 39th minute but headed wide from close range, after he was found at the back post by an Alexander-Arnold free-kick from the opposite flank.
Second half
The Portugal attacker made amends for that miss when he broke the deadlock just two minutes into the second period.
Forest were unable to clear Alexander-Arnold's corner and a Fabinho header back across goal was diverted into the back of the net by Jota to make it 1-0.
Alisson then pushed away a Gibbs-White shot from the edge of the area but was left wrong-footed by Williams' effort in minute 51 that restored parity.
The visitors worked the ball from left to right, ending with Williams' shot deflecting off Robertson and going in.
It wasn't level for long, however, as Liverpool caught their opponents off guard from a free-kick, with Jota finding space inside the box and expertly controlling and volleying Robertson's cross.
Jota was then denied a hat-trick when his header from Konate's ball was tipped over by Navas.
The goal drew a response from Forest again, though. Gibbs-White's first-time hit found the bottom left corner after the Reds were unable to clear a long throw from Moussa Niakhate into the box.
The to-and-fro nature of the encounter continued, and it was 2-2 for just three minutes.
Once again, Alexander-Arnold's quality from set-pieces provided an opening, as Salah brushed off a tussle to poke home an out-swinging delivery from the 24-year-old.
Forest came close to drawing level and leaving with a point, but Taiwo Awoniyi's bicycle kick went just over before substitute Brennan Johnson watched his clip over Alisson strike the crossbar.
Attendance: 53,325