Daily Shaarli

All links of one day in a single page.

February 13, 2015

Position Independent Code (PIC) in shared libraries - Eli Bendersky's website

Ce qu'il y a de bien pratique avec la distribution GNU/Linux Gentoo, c'est qu'elle nous fait découvrir des mécanismes cachés du système d'exploitation ; et récemment, ce fut encore le cas quand je voyais dans certains paquets le "USE flag" intitulé "pic", qui est donc l'acronyme[1] de “Position Independent Code”.

Dans cet article, il est ainsi question du “Position Independent Code” dans les bibliothèques partagées.
Du peu que j'ai pu comprendre (car n'ayant pas fini de lire cet article qui me semble compliqué), il s'agit d'un mécanisme de protection du code d'exécution des binaires ELF[2] en rendant les positions des liens des processus dans la mémoire de façon aléatoire, ce qui a pour but d'empêcher un programme malveillant d'accès à des zones de données, pour y copier ou manipuler des données.

Bref, ce n'est pas à la portée de tous, mais ça permet de mieux comprendre le fonctionnement d'un système GNU/Linux.

[1] un acronyme est un sigle qui se lit comme un mot https://fr.wikipedia.org/wiki/Acronymie
[2] ELF pour “Executable and Linkable Format”, le format des binaires sous GNU/Linux pour les architectures x86 https://en.wikipedia.org/wiki/Executable_and_Linkable_Format

EDIT 2015-03-01: D'autres infos :