David DeJesus launched a solo homer to back Chris Rusin (2-3), who yielded two runs (one earned) on three hits and struck out four in five innings.
Chicago broke a seven-game losing streak with the triumph.
Bryan Shaw (1-6) was saddled with the loss in relief of Diamondbacks starter Josh Collmenter, who allowed just one run on six hits through five frames.
Jason Kubel notched the only RBI for Arizona.
Puzzle-maker slips 'Murdoch Is Evil' into Rupert Murdoch's Sunday Telegraph
N.J. man wakes up from 10-hour sleep with knife in back