The track was always wet and, after a few drivers initially tried Pirelli's full wets, the intermediates became standard wear. Romain Grosjean set the ball rolling early for Lotus and was not supplanted until Ricciardo posted 1m 53.958s with half an hour remaining.
Felipe Massa later vaulted to second with 1m 54.492s for Williams, as Grosjean's 1m 54.514s held up for third.
Nico Hulkenberg led the next batch with 1m 55.032s for Force India, ahead of Kimi Raikkonen who banged in 1m 55.062s right at the end.
That pushed Pastor Maldonado down to sixth. The Venezuelan had lapped in 1m 55.228s early on to hold second behind his team mate, but was later told to stop out on the track when his Lotus E22 developed a problem.
Daniil Kvyat took seventh for Toro Rosso on 1m 55.235s, ahead of Valtteri Bottas on 1m 55.381s. The Williams driver had spun earlier exiting Turn 10.
Jenson Button was eighth for McLaren with 1m 55.673s, as Sergio Perez moved to ninth on 1m 56.019s ahead of a troubled Sebastian Vettel. The world champion complained of clutch slip and lack of boost on his way to 1m 56.233s.
Jean-Eric Vergne was 12th in the second Toro Rosso, on 1m 56.380s, as Adrian Sutil hauled his Sauber to 1m 56.760s ahead of Max Chilton in his Marussia on 1m 56.841s. Esteban Gutierrez was 15th as he struggled with his gearshift in the other Sauber on 1m 57.468s, while Kamui Kobayashi managed 1m 57.812s for Caterham to pip Jules Bianchi in the second Marussia on 1m 57.976s.
Marcus Ericsson was the last driver to record a time, a long brake pedal on his Caterham leaving him on 1m 59.507s. As well as Hamilton, Rosberg and Alonso, Kevin Magnussen also elected not to set a time.
Besides Bottas, others to have adventures on the slippery surface included Kobayashi at Turn 6, and Chilton and Perez at Turn 14.
The heavily overcast conditions are likely to remain for qualifying.