Linebacker NaVorro Bowman had a team high-tying seven tackles Sunday. Michael Zagaris Getty Images

The San Francisco 49ers needed more than just a quarterback change to spring an upset on the visiting Atlanta Falcons on Sunday.

A much-maligned defense that entered the matchup ranked 29th in the league with a generous 403.8 yards surrendered per game held up its end despite a patchwork secondary that was missing its top three cornerbacks.

More from FoxSports

The 49ers, like every other team in the league, had trouble containing Falcons star wide receiver Julio Jones, but they did a spectacular job in bottling up running back Devonta Freeman. The league's leading rusher coming into the weekend, Freeman managed 12 yards on 12 carries.

"Much credit goes out to that defense, man," Freeman said. "They have some great players (and) nice schemes."

Linebacker NaVorro Bowman led an inspired defensive effort that limited Atlanta to 17 yards rushing for the game. Bowman tied for the team high with seven tackles and registered one of San Francisco's two sacks.

"I think us playing with each other and going through adverse times helps us realize that whatever happens we have to control what happens on defense," he said. "Going through all that, you're either going backward or forward. The guys we have in are young but as long as they're trying to get better and go forward, we're going to get better to be able to play the run like we have in the past years."