inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

해커를 위한 iOS 앱 모의 해킹 전문 과정

Jailbreak Detection(3)

Jailbreak Detection (3) 메모리 주소를 왜 더하는지 모르겠어요 ..

341

최정안

작성한 질문수 6

0

DVIA-V2 가 로드된 메모리의 주소에 탈옥 체크 분기점이 시작되는 주소를 더하는 이유가 ASLR 로 이루어져 있어서 메모리 주소가 바뀌기 때문에 DVIA 주소를 불러오고 그 다음 탈옥 분기점 주소를 더해 후킹할 타겟 주소를 변수에 담는것인가요 ?? 이러면 궁금한게 왜 탈옥 분기점의 메모리주소는 매번 바뀌지가 않는걸까요 ??

ios 모의해킹

답변 1

0

김태영

안녕하세요. 보안프로젝트 김태영입니다.

ASLR은 운영체제 메모리에 로드되는 실행 파일 위치를 무작위로 생성하여 여러 공격으로부터 보호하는 기술입니다. 점검에 사용되는 DVIA-v2 앱도 ASLR 기술이 적용되여 실행할 때마다 메모리가 랜덤하게 변경되어 변경된 위치로부터 실행됩니다.

DVIA-v2 앱 "내부 로직"에서 사용되는 탈옥 분기점 주소는 랜덤하게 할당되지 않고 Ghidra에서 분석한 앱 흐름대로 이루어지게 됩니다. ASLR이 적용되기 전인 상태(실행되는 메모리 주소가 위치가 0인 상태)로 부터 계산된 주소를 Ghidra에서 볼 수 있습니다. 따라서 탈옥 분기점 주소는 상대 주소(Relative address) 관점에서 보았을 때 항상 동일한 주소를 가리킵니다.

따라서 최종 절대 주소(Absolute address)는 ASLR이 적용되어 올라오는 주소에 DVIA-v2에서 점검할 상대 주소(Relative address)를 더하면 계산할 수 있습니다.

(분석하고 싶은 위치 = ASLR 주소 + DVIA-v2 분석 위치 상대 주소)

감사합니다.

3uTools Files 로딩 후 에러 (에러코드 : 13)

0

779

3

ios 14.4.2 Appsync 설치 오류

0

93

1

강의 추가 계획은 없나요?

0

109

1

frida-ios-dump 시 오류 발생

0

881

1

checkra1n, unc0ver 오류

0

714

1

아이폰6 ios 12.5.7 버전 문의

0

514

2

Fairplay DRM 복호화

0

377

2

Appsync 설치 오류

0

1485

2

bootra1n 설치 오류

0

340

2

루팅 시 기기 선택과 탈옥도구에 관해 문의드립니다

0

322

1

Darwin CC Tools 관련 질문 있습니다.

0

455

2

rootless로 탈옥

0

435

1

SSH연결 후 5초 뒤에 끊김

0

487

1

Application Patching(2) 질문있습니다.

0

327

1

keychain_dumper 오류 있습니다.

0

417

1

트윅 설치 관련하여 질문드립니다.

0

1013

1

탈옥 탐지하여 강제 종료되는 앱 진단

0

1548

1

안녕하세요. 금융권 앱을 진단해보려구 하는데요.

0

426

2

아이폰 필요한가요?

0

456

1

에러 메세지 한글 검색

0

728

1

Sensitive Information in Memory

1

334

1

frida 관련 질문입니다.

0

2370

2

Keychain_dumper.sh 실행 시 에러가 발생합니다.

0

749

3

Runtime Manipulation(2) 강의 중 질문이 있습니다 .!!

0

356

1