Sommaire
Face à la transformation digitale de notre société et l’augmentation des cybermenaces, la cybersécurité doit être aujourd’hui une priorité pour bon nombre d’organisations. Après plus de 20 années de publications et de retours d’expérience, MISC apporte un vivier d’informations techniques incontournable pour mieux appréhender ce domaine. Précurseur sur ce terrain, MISC a été fondé dès 2002 et s’est peu à peu imposé dans la presse française comme la publication de référence technique en matière de sécurité informatique. Tous les deux mois, ses articles rédigés par des experts du milieu vous permettront de mieux cerner la complexité des systèmes d’information et les problèmes de sécurité qui l’accompagne.
C'est un lieu commun, les téléphones portables sont devenus bien plus que de simples téléphones. Le moindre appareil est maintenant plus puissant que les ordinateurs d'il y a quelques années. Ils sont équipés de plusieurs processeurs, disposent de mémoires hautement performantes, et accessoirement, permettent de passer et recevoir des coups de fil.
Depuis quelques années, l'exploitation des failles applicatives, en particulier des débordements de tampons, est rendue de plus en plus difficile par les protections mises en place dans les divers systèmes d'exploitation. En particulier, il est de plus en plus rare de pouvoir exécuter des données sur la pile. Dans la première partie de l'article, nous rappelons les techniques de retour dans la libc, permettant de contourner ces protections, en particulier lorsque les arguments des fonctions, ainsi que leur adresse (ASCII Armor), contiennent des octets nuls. Nous voyons dans un second temps comment automatiser la création de shellcodes dans une pile non exécutable, à l'aide d'une preuve de concept en Python qui interface des outils déjà existants, tels que objdump ou ldd. Enfin, nous présentons les évolutions de ces techniques et les progrès actuels dans le domaine du « Return Oriented Programming », dont l'objectif est d'aller plus loin qu'un simple chaînage de fonctions, en proposant par exemple des boucles ou des branchements.
L'iPhone remporte un grand succès, en partie grâce à l'AppStore et les nombreuses applications qui y sont proposées aux utilisateurs. Cependant, cette plate-forme est relativement fermée car chaque application doit être approuvée par Apple. Le jailbreak consiste à « déverrouiller » le système d'exploitation du téléphone (iOS) pour y exécuter n'importe quelle application. Alors qu'Apple déploie des mises à jour régulières afin de combler les vulnérabilités utilisées pour le jailbreak, de nouvelles failles sont continuellement découvertes par les différents acteurs de la « scène jailbreak » [WIKI]. Nous présentons ici les mécanismes de sécurité mis en place sur l'iPhone, ainsi que le détail des 3 vulnérabilités exploitées par l'outil de jailbreak Spirit, publié par Comex en mai 2010.