EVANSTON, Ill. (AP) Even though he had missed two field goals and an extra point, Northwestern kicker Jack Mitchell still had the confidence of coach Pat Fitzgerald.

Mitchell justified that faith when it mattered the most.

Mitchell's 35-yard field goal with nine seconds left gave the Wildcats a 23-21 win Saturday over the Penn State Nittany Lions. Backup quarterback Zack Oliver passed for one touchdown and ran for another, and Justin Jackson rushed for a career-high 186 yards for Northwestern.

More from FoxSports

''I've got great confidence in Jack,'' Fitzgerald said. ''I had full confidence he was going to make that kick. He's pretty good.''

Mitchell, who kicked a game-winner to beat Notre Dame last year, recovered from his earlier woes to give the Wildcats a dramatic victory after they had squandered a 20-7 halftime lead.

''I knew it was going to come down to me,'' Mitchell said.

Solomon Vault added a 96-yard kickoff return for a touchdown with 2:04 left in the first half for Northwestern, which is No. 21 in the College Football Playoff rankings and won its second straight after consecutive losses. For Vault, it was his second kickoff return for a score this season and the third of his career, both school records.

Oliver replaced Clayton Thorson after Thorson was hit with 3:09 left in the first quarter by Penn State's Carl Nassib. Thorson completed a 13-yard pass to Christian Jones but suffered a lower-body injury on the play and didn't return.

Fitzgerald didn't give an update on how Thorson was doing, quipping that his quarterback was feeling ''ecstatic'' about the win.

Nassib's sack of Oliver with 14:50 left in the game gave him 15 1/2 this season to set a single-season Nittany Lions record. But that moment might have been costly for Penn State because Nassib wasn't on the field for the Wildcats' final drive.

''Obviously the guy's leading the country in sacks,'' Penn State coach James Franklin said. ''All-time sack leader in school history. Not having him out there is significant.''

Northwestern (7-2, 3-2) had to win with Oliver, who had only appeared in three games before Saturday. He passed for 111 yards and threw an interception but led Northwestern's key final drive.

Saquon Barkley ran for 120 yards and had two scores, and the second with 12:22 left gave the Nittany Lions a 21-20 lead. They had a chance to take more time off the clock but Barkley was stopped short on a third and one at his own 15 with 2:25 to go, giving Northwestern the ball back.

Christian Hackenberg and the Nittany Lions offense struggled, which led to the end of their two-game winning streak. Hackenberg was under pressure for much of the day and went 21 of 40 for 205 yards with an interception.

''We were able to fight back, but at the end of the day they were better than us today,'' Hackenberg said. ''You've got to give them a lot of credit.''

Penn State (7-3, 4-2) pulled to within 20-14 with 5:04 left in the third when receiver Geno Lewis hit DaeSean Hamilton for a 32-yard score. The drive was aided by a pair of 15-yard penalties, including a roughing the kicker call on a punt against Warren Long that returned the ball to Penn State.

Saturday began a tough stretch for Penn State. After playing Northwestern, the Nittany Lions have a bye and then wrap their season with a game at home against Michigan and then visit Michigan State.

They didn't start that stretch successfully.

''We weren't able to play winning football at the end of the game,'' Franklin said.