The Total Direct Energie rider, 26, took the race’s longest stage – 227km from Gannat to La Cote-Saint-Andrea – ahead of Ivan Garcia Cortina and Peter Sagan.
Germany’s Max Schachmann retained the overall lead with three days to go.
The race is being held ‘behind closed doors’ to comply with the French ban on gatherings of more than 1,000 people in response to the coronavirus outbreak.
Seven teams pulled out of the race because of concerns about the disease, while Team Ineos’ withdrawal was also in part because of the death of sporting director Nicolas Portal.
Friday’s sixth stage is a 161.5km hilly run from Sorgues to Apt in the Luberon region – the first of three mountainous stages – with the race set to conclude on Sunday.
Meanwhile, Spain’s Volta a Catalunya stage race – due to start on 23 March – has been postponed “until a new date”.
It is the third-oldest stage race in the world after the Tour de France and Giro d’Italia and has been held continuously since 1939.
Stage five result
1. Niccolo Bonifazio (Ita/Total Direct Energie) 5hrs 18mins 02secs
2. Ivan Garcia Cortina (Spa/Bahrain-McLaren) same time
3. Peter Sagan (Svk/Bora-Hansgrohe) same time
4. Nacer Bouhanni (Fra/Arkea-Samsic) same time
5. Hugo Hofstetter (Fra/Israel Start-Up Nation) same time
1. Max Schachmann (Ger/Bora-Hansgrohe) 13hrs 30mins 58secs
2. Soren Kragh Andersen (Den/Sunweb) +58secs
3. Felix Grossschartner (Aut/Bora-Hansgrohe) +1min 1sec
4. Nils Politt (Ger/Israel Start-Up Nation) +1min 5secs
5. Sergio Higuita (Col/EF Pro Cycling) +1min 6secs