ATLANTA -- Manager Kirk Gibson had no interest in dwelling too long on the Diamondbacks' eighth-inning calamity.
"We didn't deserve to win the game," he said. "We walked five in an inning without a hit and only gave up two runs. Then we gave them seven walks, three hit batsmen, made an error. Just melted down. Didn't play good at all."
After Miguel Montero's solo homer gave the Diamondbacks a one-run lead in the top of the eighth, everything unraveled.
Simmons scored the go-ahead run from first on the same play as Kubel's throw to Eric Chavez bounced wide left of the third baseman.
"I'm always ready for a mistake," Simmons said. "As soon as I saw the ball leaving his glove, I was gone."
The Braves rallied for their 23rd comeback victory, tops in the National League. Atlanta has won two straight and four of five to lead Washington by 6 1/2 games in the NL East.
The Diamondbacks, who have 22 comeback wins, have lost four of five.
Braves starter Tim Hudson extended his winless streak to 10 straight starts, allowing five hits, four runs and four walks with two strikeouts in 5 2-3 innings.
Hernandez (4-5) allowed hits and four runs with no walks or strikeouts in one-third of an inning. He has allowed 10 runs over his last eight games.
"It's a game we should have won," Hernandez said. "We've got to be ready tomorrow. It's just another disappointing outing. It's frustrating."
The Diamondbacks took a 5-4 lead in the top of the eighth on Miguel Montero's fifth homer, a solo shot, off Jordan Walden. Walden (3-1) earned the win despite allowing three hits and one run with no walks and one strikeout in one inning.
Arizona scored its first four runs on an RBI double by Montero, Kubel's RBI single in the fourth and A.J. Pollock's two-run homer in the sixth.
Hudson was chased when Pollock's sixth homer scored Kubel in the sixth to tie it at 4-all.
Arizona's rotation extended its winless streak to 21 games after Ian Kennedy gave up five hits, four runs, four walks and struck out four in 4 1-3 innings.
Hudson, who began the game with a 16.88 ERA with runners in scoring position, laboured in the 27-pitch fourth as Arizona tied it at 2-all.
But the Braves took advantage of Kennedy's control problems in the fifth, scoring two runs without getting a hit and by putting just one ball, B.J. Upton's sacrifice fly RBI, in play.
Kennedy walked three of the first four batters he faced, getting chased on his free pass to Brian McCann.
Will Harris, the next Arizona pitcher, walked the first batter he faced, Uggla, to score Heyward. Upton's sacrifice fly scored Freeman to make it 4-2.
Kennedy was making his first appearance since serving a 10-game suspension imposed following a brawl between the Diamondbacks and the Los Angeles Dodgers on June 11.
"I definitely could tell I wasn't in sync after taking that down time," Kennedy said. "Command-wise, I didn't feel that good. It shows when I was out there. Taking 10 days off is a long time. Hopefully next time is better."
Making his seventh straight start on the road, Kennedy dropped to 1-4 with a 6.28 ERA in 10 starts away from Phoenix.
"Any way you look at it, we haven't played as good defensively as we were earlier in the year," Gibson said. "Our bullpen is not nearly as good, our starting pitching hasn't been as good, we haven't hit with any consistency, so there you have it. We'll have to figure things out, we'll have to switch things around."
Notes: Chavez went 1 for 5 with five runners left on base in his first game since May 30. Chavez was returning from a strained right oblique. He popped out with runners on first and second against Luis Avilan to end the seventh. ... Putz was activated from disabled list before the game. The Arizona closer had been sidelined since May 7 with a strained right elbow. ... The teams combined to use 13 pitchers.