
Une démonstration de lecture/écriture utilisant cve-2025-43529 et le contournement de PAC en espace utilisateur sur iOS 26.1
En développement, pas encore utile pour les utilisateurs.
pois0nSword est un projet iOS dont l'objectif est de permettre à terme la personnalisation de l'interface utilisateur.
Actuellement, une démonstration de lecture/écriture arbitraire de contenu web utilisant cve-2025-43529 sur iOS 26.1. Ainsi qu'un contournement de PAC utilisant CVE-2026-20700. Crédits :
GenericCoding - développeur principal varik - développeur principal
zeroxjf - correction de la lecture/écriture du contenu web et débogage
La plupart du code provient du POC de cve-2025-43529 par jir4vv1t et de l'implémentation web de darksword. (https://github.com/ghh-jb/DarkSword/)
Pour le write-up sur le contournement de PAC, voir : https://varik.dev/blog/jsc/pois0nsword-native-calls
Pour la lecture/écriture arbitraire de contenu web, voir : https://varik.dev/blog/jsc/jsc-exploitation-primitives-part-1
Ce dépôt utilise la méthode scribble de Darksword pour obtenir des primitives de lecture/écriture64 sur iOS 26.1 après l'amorçage des primitives addrof et fakeobj, puis désactive le ramasse-miettes (voir la branche WIP) avec write8 après avoir obtenu les adresses du tas et de la VM.
Concernant le bug ANGLE-OOB associé : la façon dont l'OOB référencé dans le dépôt d'analyse de @zeroxjf est liée et est utilisée dans DarkSword, cependant elle est utilisée après le port IPC qui est ouvert en utilisant la lecture/écriture et les offsets, et nécessite le contournement de PAC. C'est pourquoi @zeroxjf n'a pas pu vérifier complètement l'OOB, sans moyen de transmettre des messages entre l'OOB et un port IPC ; l'OOB ne nous est d'aucune utilité.