With Forest leading courtesy of Jack Robinson's 11th-minute header, Leeds looked set to be heading for a second defeat in three games until Roofe took matters into his own hands.
Having latched onto Mateusz Klich's cross-cum-shot, Roofe clearly used his arm to nudge the ball over the line in the 82nd minute but, despite Forest's protests, the officials allowed the goal to stand.
Roofe's leveller came towards the end of a blunt Leeds's display, with Marcelo Bielsa's side lacking its usual fluidity.
Indeed, it was Roofe who had previously wasted its only real chance, the striker hooking wide on the half-volley from close range.
Forest's misery was almost compounded in stoppage time when Pablo Hernandez connected with Ezgjan Alioski's cross, but the Spaniard failed to turn his effort on target as Leeds settled for a draw which moves it up to second, two points behind leader Sheffield United.