Security/모바일
2022. 11. 18.
[iOS] Native Code Exploit Prevention
Native Code Exploit Prevention iOS는 코드 실행 공격을 방지하기 위해 두 가지 표준 매커니즘을 구현함 - ASLR(address space layout randomization) - XN 비트(eXecute Never) - 기타 등 1) ASLR 모든 실행 중인 프로그램의 주소, 프로그램 데이터, 힙, 스택의 메모리 주소를 임의로 설정함. 공용 라이브러리(shared library)의 경우, 다수의 프로세스에 의해 공유될 수 있는 주소에 있어야 하기 때문에.. → 공유 라이브러리의 주소는 매번 프로그램 호출될 때가 아닌, OS 부팅 떄마다 무작위로 설정됨. 이러한 설정은 특정 함수와 라이브러리의 메모리 주소를 예측하기 힘들게 만든다. → 기존 libc 함수의 메모리 주소를 알고..