The hosts took a 2-0 lead with goals from Fabrizio Miccoli and Franco Brienza either side of half-time, but Riccardo Montolivo and the 20-year-old starlet forced a draw.
Fabrizio Miccoli’s penalty just before halftime and Franco Brienza’s low shot gave the hosts a 2-0 head start, but Riccardo Montolivo and the in-form El Shaarawy turned the tables in the final 22 minutes to make sure the points were shared.
Massimiliano Allegri's future as Rossoneri head coach was handed yet another lifeline by the comeback, though they only sparked into life with half an hour left in the match.
Palermo started as the brighter side, and midfielder Brienza wanted an early penalty but he was ignored - and correctly so - after going down under Kevin Constant’s fair shoulder barge 10 yards from goal. Not long after, Josip Ilicic, whose touch was marvellous all match, put Miccoli one-on-one with Milan’s last defender but the striker sliced just wide once inside the box.
Just as it looked like the teams would head into the dressing rooms at halftime goalless, Abate held his right arm out, Miccoli spotted his silly defensive decision and kicked the ball at it to win a penalty for the home team. The 33-year-old striker, a former Milan youth player, then buried the ball in the bottom left corner to open the scoring.
Barely 90 seconds after the restart, Brienza sent waves of delight around Stadio Renzo Barbera when he was given too much time and space 25 yards from goal and lashed in from the left edge of the 18-yard box, leaving goalkeeper Marco Amelia flat-footed and immobile.
Palermo head coach Gian Piero Gasperini then made the fatal decision to withdraw his most recent goalscorer afterwards, leaving a creative hole in his side and ensuring the hosts were on the back foot for the rest of the match.
Bojan Krkic’s introduction off the Rossoneri bench was a major catalyst in their fightback and he forced a top save from Samir Ujkani on 58 minutes. The Albanian shot-stopper made a string of crucial blocks to keep Palermo ahead but he could not hold back the tide of attacks energy forever.
Montolivo’s first Serie A goal as a Milan player ignited some hope to go with a desperate surge forward on 69 minutes, converting from 15 yards after Bojan’s excellent dribbling and final pass on the right edge of the box.
Then El Shaarawy - so far often the player who has been saving Allegri’s blushes this Serie A campaign - completed the entertaining away comeback with an instinctive turn and strike, his shot sneaking in at the near post with just 10 minutes remaining.