lib:rlbox
Ceci est une ancienne révision du document !
Librairie SandBox développé par Firefox.
Doc Archive du 31/03/202 le 08/08/2020
Code source Archive du 17/07/2020 le 08/08/2020
Théorie Archive du 10/03/2020 le 08/08/2020
De ce que j'ai compris, cela force la réalisation d'une copie dans le tas de la donnée à transmettre à la librairie.
Cela est sécuritaire car :
- même si la donnée est déclarée en
const
dans la librairie, elle vient peut-être d'une donnée où la mémoire est accessible en écriture. - Le fait de passer la donnée directement peut permettre de déterminer l'aléa de l'
ASLR
(Address space layout randomization) ou de déduire le pointeur vers la table virtuelle. - en cas de buffer overflow, on ne risque pas d'écrire sur la pile.
- Lorsque la fonction renvoie sa valeur, il y a :
- une vérification automatique de type UBSan pour vérifier que la variable qui va héberger la valeur est assez grande pour la valeur renvoyer.
- Une vérification manuelle peut être ajouter. La fonction doit alors être écrite par le développeur.
lib/rlbox.1596911506.txt.gz · Dernière modification : 2020/08/08 20:31 de root