Fillon, 63, has faced protests in recent weeks since he was charged over accusations he gave his wife a fake parliamentary job for which she was paid hundreds of thousands of euros.
The former prime minister was making his way to the stage in a hall in the eastern city of Strasbourg when a shaven-headed man in a T-shirt bearing the slogan “Students for Fillon” emptied a packet of flour on his face and down his suit.
Security guards wrestled the man to the floor and one of the guards tore off the T-shirt.
From the podium, Fillon told the rally he was “the target of merciless persecution”.
“They're doing everything they can to discourage me,” he said. “But, my friends, what doesn't kill you makes you stronger.”
Fillon has claimed his leftwing opponents are behind the accusations against him, which first emerged in the Canard Enchaine newspaper in January.
Previously the frontrunner in the presidential race, Fillon is now languishing at 19 percent in the polls, behind joint frontrunners Marine Le Pen, the far-right leader, and centrist Emmanuel Macron, both with 23.5 percent, according to the latest Elabe poll.