• [^] # Re: perquisitions

    Posté par . En réponse au journal Guide de sécurité informatique à l'usage des journalistes. Évalué à 2.

    Attention, ce n'est pas parce que la RAM doit rafraîchir toutes les 64 ms qu'au bout d'1 seconde sans courant, la totalité du contenu a disparu ! Certaines cellules peuvent mieux résister que d'autres aux fuites de courant (présence variable d'impuretés dans les semiconducteurs par exemple), et donc garder leur contenu beaucoup plus longtemps qu'on ne le pense. Pas forcément tous les bits, mais déjà quelques uns peuvent donner de l'information.

    Pour recaler un peu les choses, les informations tiennent des heures quand les barrettes sont refroidies, selon wikipedia http://en.wikipedia.org/wiki/Cold_boot_attack
    L'article http://citp.princeton.edu/pub/coldboot.pdf explique même que des informations sont récupérables pendant plusieurs *minutes* après extinction, même à température ambiante (résumé http://citp.princeton.edu/memory/ ).

    De plus comme les blocs dans la RAM se dégradent toujours dans le même sens (au sein d'un même bloc, tous les bits disparaissent progressivement vers 1, ou tous les bits vers 0), on récupère de l'information plus facilement : un bit à 0 dans un bloc qui tend vers 1 est certainement un bit à 0 initialement.

    Enfin, en plus, il ne faut pas oublier que là il s'agit d'attaques sur le contenu "numérique", c'est-à-dire que pour schématiser la tension au borne du condensateur est supérieure au seuil déterminant le 1 du 0 par la barrette. La barrette de RAM doit lire un signal analogique (une tension) pour déterminer le contenu (bit 1 ou 0 suivant si la tension est au-dessus du seuil ou non) de la cellule. Si on descend plus bas niveau et qu'on récupère l'information sur la tension directement plutôt que l'échantillonné "numérique", on récupèrera beaucoup plus d'information (probabiliste cette fois-ci) : selon le modèle de fuite de courant utilisé (un classique circuit RC par exemple de base), on saura la probabilité qu'avait le bit d'être 1 plutôt que 0 selon la valeur réelle lue.