Le problème vient de la configuration de la librairie PAM qui sert d'interface entre les applications et le système pour la gestion des authentifications / autorisations.

Mais celui ne correspond pas à ce que j'ai dans ma debian squeeze. Voici le contenu du fichier /etc/pam.d/cron :

#
# The PAM configuration file for the cron daemon
#

@include common-auth
session       required   pam_env.so
@include common-account
@include common-session-noninteractive
# Sets up user limits, please define limits for cron tasks
# through /etc/security/limits.conf
session    required   pam_limits.so

En analysant chaque ligne d'@include qui correspond à l‘inclusion d'un fichier dans /etc/pam.d on constate que le fichier /etc/pam.d/common-session-noninteractive n'existe pas! Seul le fichier common-session est présent. J'ai donc remplacé comme suit et tout fonctionne :

@include common-session

Je ne sais pas si c'est la bonne solution, mais ça a le mérite de refaire fonctionner cron!

Le rapport de bug est ici :
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=575342