Fister (10-5) gave up seven hits, but did not walk a batter and captured his fourth straight start. He has not lost since June 2. Joaquin Benoit issued a two-out walk in the ninth on the way to his 11th save.
The Tigers extended their winning streak to six games, getting an RBI single from Jose Iglesias in the fourth inning and Austin Jackson's seventh home run of the season in the fifth.
The eight-game losing streak equals the longest of the year for the White Sox.
Detroit's runs were given up by Hector Santiago (3-7), who allowed six hits and struck out seven in seven innings.
The game took just 2 hours, 7 minutes to finish.