😈

코드 인젝션 방법 2가지

 

iOS에서 코드 삽입에는 크게 2가지 방법이 있다.

 

1. DYLD_INSERT_LIBRARIES 환경변수 이용.

DYLD_INSERT_LIBRRIES 환경변수에 로드시키고자 하는 dylib 라이브러리의 이름을 포함시키면 된다.
⇒ 앱 실행 시 자동으로 메모리로 올려 실행시킴.

[보안 검사]

당연히 DYLD_INERT_LIBRRIES 환경변수 값을 검사하면 된다.
🤛🏽
DYLD_INSERT_LIBRARIES 환경변수 검사
🤛🏽
RESTRICT 섹션 검사 (iOS 10이후 못씀)
 

2. APP디렉토리에 직접 포함시키고 re-sign 시키기.

매뉴얼 리패키징 하는 과정은 아래 2개의 포스트로 정리한다.
🤛🏽
objection 툴로 Repackaging
🤛🏽
매뉴얼 리패키징 (non-JB 장치로 분석하는 방법) - 보충필요
추가 : yololib으로도 MachO 파일을 수정하고 library path도 추가할 수 있다.