Peterson broke off a 60-yard touchdown run in the triumph as the Vikings sent the Steelers to their first 0-4 start since 1968.
Pittsburgh had a chance to tie the score in the closing seconds as Ben Roethlisberger drove Pittsburgh to the Minnesota 6-yard line, but he was sacked by Everson Griffen and fumbled.
Kevin Williams recovered the loose ball to seal the win for the Vikings (1-3).
Roethlisberger completed 36-of-51 pass attempts for 383 yards with a touchdown and interception for the Steelers.
Pittsburgh rookie Le'Veon Bell recorded two TD runs in his NFL debut.
Astronomers offer more expansive view of universe
McPhee, Cokas 'working on their marriage' after affair