L'ASLR (Address Space Layout Randomization) est une technique de sécurité utilisée dans les systèmes d'exploitation. tous les principaux systèmes d'exploitation (iOS, Android, Windows, macOS et Linux) bénéficient de la protection ASLR. Mais la semaine dernière, une nouvelle méthode de contournement ASLR a été trouvé. Donc, si vous êtes inquiet?
Pour ceux qui n'ont pas de contexte de programmation de bas niveau, ASLR peut être déroutant. Pour le comprendre, vous devez d'abord comprendre la mémoire virtuelle.
La mémoire virtuelle est une technique de gestion de la mémoire offrant de nombreux avantages, mais elle a été principalement créée pour faciliter la programmation. Imaginez que vous avez Google Chrome, Microsoft Word et plusieurs autres programmes ouverts sur un ordinateur avec 4 Go de RAM. Dans l'ensemble, les programmes sur cet ordinateur utilisent beaucoup plus de 4 Go de RAM. Cependant, tous les programmes ne seront pas actifs à tout moment, ou auront besoin d'un accès simultané à cette RAM
Le système d'exploitation alloue des blocs de mémoire aux programmes appelés pages . S'il n'y a pas assez de RAM pour stocker toutes les pages à la fois, les pages les moins susceptibles d'être nécessaires sont stockées sur le disque dur le plus lent (mais plus spacieux). Lorsque les pages stockées sont nécessaires, ils vont changer d'espace avec moins de pages nécessaires actuellement en RAM. Ce processus s'appelle la pagination et donne son nom au fichier pagefile.sys sous Windows.
La mémoire virtuelle facilite la gestion de la mémoire des programmes et les sécurise davantage. Les programmes n'ont pas besoin de s'inquiéter de l'endroit où d'autres programmes stockent des données, ou de la quantité de RAM restante. Ils peuvent simplement demander au système d'exploitation de la mémoire supplémentaire (ou retourner la mémoire inutilisée) si nécessaire. Tout le programme voit un seul morceau continu d'adresses de mémoire pour son usage exclusif, appelées adresses virtuelles. Le programme n'est pas autorisé à regarder la mémoire d'un autre programme
Lorsqu'un programme a besoin d'accéder à la mémoire, il donne au système d'exploitation une adresse virtuelle. Le système d'exploitation contacte l'unité de gestion de mémoire (MMU) de la CPU. La MMU traduit entre les adresses virtuelles et physiques, renvoyant ces informations au système d'exploitation. À aucun moment, le programme n'interagit directement avec la mémoire RAM
La randomisation de la disposition de l'espace d'adresse (ASLR) est principalement utilisée pour protéger contre les attaques par débordement de mémoire tampon. Dans un débordement de tampon, les attaquants alimentent une fonction contenant autant de données indésirables qu'elle peut gérer, suivies par une charge utile malveillante. La charge utile remplacera les données auxquelles le programme a l'intention d'accéder. Les instructions pour passer à un autre point du code sont une charge utile courante. La fameuse méthode JailbreakMe de jailbreak d'iOS 4, par exemple, a utilisé une attaque par buffer overflow, incitant Apple à ajouter ASLR à iOS 4.3.
Les débordements de buffer requièrent un attaquant pour savoir où se trouve chaque partie du programme en mémoire. Comprendre cela est généralement un processus difficile d'essais et d'erreurs. Après avoir déterminé cela, ils doivent fabriquer une charge utile et trouver un endroit approprié pour l'injecter. Si l'attaquant ne sait pas où se trouve leur code cible, il peut être difficile ou impossible de l'exploiter.
ASLR vous protège toujours?
Cela dit, vous ne devriez pas nécessairement désespérer. Le document offre quelques moyens que les développeurs de matériel et de système d'exploitation peuvent atténuer cette menace. De nouvelles techniques ASLR à grain fin nécessiteraient plus d'efforts de la part de l'attaquant, et l'augmentation de la quantité d'entropie (aléatoire) peut rendre l'attaque par basculement irréalisable. Très probablement, les nouveaux systèmes d'exploitation et processeurs seront immunisés contre cette attaque.
Que reste-t-il à
faire ? La dérivation Jump Over est nouvelle et n'a pas encore été repérée dans la nature. Lorsque les attaquants l'exploitent, la faille augmente les dommages potentiels qu'un attaquant peut causer sur votre appareil. Ce niveau d'accès n'est pas sans précédent; Microsoft et Apple ont seulement implémenté ASLR dans leurs systèmes d'exploitation publiés en 2007 et plus tard. Même si ce type d'attaque devient monnaie courante, vous ne serez pas plus mal lotis que vous ne l'étiez à l'époque de Windows XP. Gardez à l'esprit que les attaquants doivent toujours obtenir leur code sur votre appareil pour faire du mal. Cette faille ne leur fournit pas d'autres moyens de vous infecter. Comme toujours, vous devez suivre les meilleures pratiques en matière de sécurité. Utilisez un antivirus, restez à l'écart des sites Web et programmes fragmentaires et maintenez votre logiciel à jour. En suivant ces étapes et en maintenant les acteurs malveillants hors de votre ordinateur, vous serez aussi en sécurité que vous l'avez jamais été.
Crédit d'image: Steve / Flickr
Guide du débutant sur Nano, l'éditeur de texte en ligne de commande Linux
Nouveau sur la ligne de commande Linux? Confus par tous les autres éditeurs de texte avancés? How-to Geek a eu votre retour avec ce tutoriel à Nano, un éditeur de texte simple qui est très novice. Quand on s'habitue à la ligne de commande, les novices Linux sont souvent rebutés par d'autres éditeurs de texte plus avancés tels que comme vim et emacs.
Devriez-vous passer à l'édition professionnelle de Windows 10?
Quoi que vous obteniez de Windows 10 - soit avec l'offre de mise à jour gratuite, soit sur un nouveau PC - vous obtenez probablement Windows 10 Accueil. Vous pouvez payer pour mettre à jour ce système Windows 10 Home vers Windows 10 Professionnel - mais devriez-vous? Si vous avez déjà eu une édition professionnelle de Windows 7 ou Windows 8.