Marcus Sherels added a second-half punt return for a score as the Vikings (3-1) used the two special-teams scores to snap an 11-game losing streak against NFC North opponents.
Adrian Peterson racked up 102 yards on 21 carries and added four receptions from Christian Ponder, who went 16-for-26 passing for Minnesota.
The Vikings equaled their entire 2011 victory total with Sunday's triumph.
Matthew Stafford ran in the only touchdown for the Lions (1-3). He passed for 319 yards on 30-of-51 attempts in the team's third straight defeat.