The Team Sky leader weathered a storm of attacks on the steep first-category climb, crossing the line 10th as part of an elite group of general classification contenders.
That result ensured he elevated himself into the top 10 overall, now sitting one minute and 10 seconds back on new race leader Simon Yates (Mitchelton-Scott). The Brit launched a stinging attack in the closing metres, bridging across to team-mate Esteban Chaves, with the pair crossing the line in tandem 26 seconds ahead of the chasers.
Yates now holds a 16-second lead over Tom Dumoulin (Team Sunweb), with overnight leader Rohan Dennis (BMC Racing) dislodged from the group with 5km to go.
The 169km test got off to a fast start and a strong move of 28 riders eventually forged clear. Covering the attacks were David de la Cruz and Sergio Henao, with the group’s advantage going out to over three and a half minutes.
Henao put in a number of accelerations on Etna in a bid to split up the break, but along with his counterparts he had no answer for the winning move of Chaves. Back in the pack Salvatore Puccio, Kenny Elissonde and Wout Poels, who was hampered by an early crash on the stage, helped shepherd Froome onto the climb, with Elissonde riding well as last man before attacks blew the group apart.
After playing a strong role on the final climb, Elissonde told Eurosport: “The day was really hard and the Sicily block has been tough. For the team it’s great that (Froome) is riding well. When I was in his wheel, at 6 or 7 km to go, he was still looking good. It bodes well. It's the first really positive day of the Giro for us."