Germany needs one more win to advance to the semifinal to face Australia or Russia in April.
In the second-set tiebreaker, the 36th-ranked, hard-hitting Petkovic wasted five straight set points before saving a match point at 6-7 on the indoor hard-court.
''It was a turning point,'' Cibulkova said.
In the final set, Petkovic jumped ahead 3-0 and broke the 13th-ranked Cibulkova again to take control at 5-1. Cibulkova briefly came back with a break but Petkovic secured another break in the final game, converting her first match point with a passing forehand winner.
Kerber broke Hantuchova in the fourth and sixth games of the second set before serving out their match.
Hantuchova lost her serve three times in the opening set but managed to come back each time to force a tiebreaker. The Slovak wasted two set points and saved Kerber's two before sending a forehand too long on the German's third set point.