The Brazilian takes his second pole position of the season setting a 1:49.751 on his final run, jumping up from third on the grid.
A number of laps in the final moments were ruined when Sean Gelael spun at the penultimate corner before stalling his engine at the entrance to the pit lane.
Ilott was just ahead of him on the road and managed to get his time-stamped down. Behind the Briton, who took pole at Monza, was Louis Deletraz.
His teammate Nobuharu Matsushita was fourth fastest, four-tenths down on the pace set by Sette Camara.
Maheever Ragunathan takes a penalty for the start of Saturday's race, and will be required to start from the pit lane.
At the end of the session, Ragunathan was found guilty of "carrying out a practice start even though two cars were ahead of him on the grid, and as a result, the stewards were forced to hand him a penalty.
Bahrain International Circuit - Winter testing