
iOS 26.1에서 cve-2025-43529 및 사용자 영역 PAC 우회를 이용한 읽기/쓰기 데모
개발 중이며, 현재 사용자에게 유용하지 않습니다.
pois0nSword는 궁극적으로 사용자 인터페이스 커스터마이징을 가능하게 하는 것을 목표로 하는 iOS 프로젝트입니다.
현재는 iOS 26.1에서 cve-2025-43529를 이용한 임의 웹 콘텐츠 읽기/쓰기 데모입니다. 또한 CVE-2026-20700을 활용한 PAC 우회도 포함합니다.
크레딧:
GenericCoding - 메인 개발자 varik - 메인 개발자
zeroxjf - 웹 콘텐츠 r/w 수정 및 디버깅
대부분의 코드는 jir4vv1t의 cve-2025-43529 POC와 darksword 웹 구현에서 비롯되었습니다. ()
PAC 우회에 대한 write-up은 다음을 참조하세요: https://varik.dev/blog/jsc/pois0nsword-native-calls
임의 웹 콘텐츠 r/w에 대해서는 다음을 참조하세요: https://varik.dev/blog/jsc/jsc-exploitation-primitives-part-1
이 저장소는 Darksword scribble 방식을 활용하여 iOS 26.1에서 addrof 및 fakeobj 프리미티브를 부트스트래핑한 후 read/write64 프리미티브를 획득하고, 힙 및 VM 주소를 얻은 뒤 write8로 가비지 컬렉션을 비활성화합니다 (WIP 브랜치 참조).
관련 ANGLE-OOB 버그에 관해: @zeroxjf의 분석 저장소에서 언급된 OOB 방식은 관련이 있으며 DarkSword에서도 사용됩니다. 그러나 이는 read/write 및 오프셋을 사용하여 열린 IPC 포트 이후에 사용되며 PAC 우회가 필요합니다. 이것이 @zeroxjf가 OOB와 IPC 포트 간 메시지 전송 수단 없이 OOB를 완전히 검증할 수 없었던 이유입니다. 해당 OOB는 우리에게 전혀 쓸모가 없습니다.