Bumgarner entered Friday on a five-game win streak but Corbin (2-1), making his third major-league start, held San Francisco to one run on one three hits over seven innings. He struck out four and did not issue a walk.
Miguel Montero hit a go-ahead RBI double in the fifth inning for Arizona and Paul Goldschmidt followed with a two-run homer. A.J. Pollock hit his first career home run in the sixth for the Diamondbacks, who halted a five-game skid. They have won a franchise-best nine straight games over the Giants.
Bumgarner (5-2) was charged with five runs -- four earned -- on seven hits over six innings. He walked two and struck out five.
Melky Cabrera had a first-inning home run for San Francisco, which has lost 10 of its last 16 games overall.
"I wanted to attack the hitters a lot more," said Corbin. "I fell behind to Melky and left a pitch middle that he took out but I think after that I kind of settled down."
Gerardo Parra reached on a fielding error by Giants shortstop Brandon Crawford to start the third inning. Pollock placed runners at the corners with a double and Willie Bloomquist drove home Parra with a one-out single to tie the game.
Montero grounded out with the bases loaded to end the inning, but redeemed himself in the fifth with the go-ahead hit. Bloomquist led off with a two- bagger and Montero's two-out double over left fielder Brett Pill made it 2-1.
Goldschmidt's subsequent homer to left padded the lead and Pollock, who was called up last month, sent a 1-1 curveball into the seats an inning later to cap the scoring.
"This offense has to get going," said Giants manager Bruce Bochy. "The at-bats have to get better. It's tough when you're not getting guys out there and putting more pressure on the opposing club."
Arizona has won eight straight home games over San Francisco since June 16 of last season...Bumgarner's five-game win streak tied a career-high...Cabrera has hit safely in nine straight games.
For more on the Giants, head over to McCovey Chronicles.