Palermo struck three times in the final 22 minutes as they fought back from a goal down to defeat Bologna and record their first away league win of the season.
Palermo went into the match as the only Serie A team without a win on their travels this campaign and that miserable run looked set to continue as hosts Bologna took a 50th-minute lead through Frederik Sorensen.
However, Palermo battled back and drew level through Massimo Donati in the 68th minute before an Abel Hernandez strike put them ahead eight minutes later.
The visitors suffered a setback in the 81st minute when they lost defender Andrea Mantovani to a second yellow card, but Bologna could not capitalise and Palermo sealed the victory when Archimede Morleo put through his own goal with four minutes remaining.
The victory lifts Palermo into the top 10 of the standings, three points above Bologna.
There was nothing to separate the two sides at half-time, with neither goalkeeper being seriously tested during a low-key opening period.
It took just five minutes of the second half for the stalemate to be broken, though, as Bologna went ahead when Sorensen got on the end of a Nico Pulzetti pass to fire past Emiliano Viviano.
For a while that goal looked like it could be the match winner as Palermo continued to offer little threat going forward.
However, they finally gave the Bologna defence something to worry about in the 67th minute when Hernandez sent a head just wide, and then 60 seconds later the visitors were back on level terms.
Donati was the goalscorer with a superb curling free-kick from outside the box that flew into the bottom right corner of the net.
Bologna tried to respond with efforts from Morleo and Daniele Portanova, but neither was on target and they found themselves trailing in the 76th minute when Donati set up Hernandez to fire home left-footed.
Palermo's bid for that maiden away win was hit with nine minutes remaining when Matovani was dismissed, but they produced the ideal response by grabbing a third goal when Hernandez's low cross was inadvertently turned into his own net by Morleo.
There was no way back for Bologna after that, although they came within inches of making it 3-2 deep into stoppage time when substitute Henry Gimenez fired against the post.