작성
·
282
답변 1
0
안녕하세요. 보안프로젝트 김태영입니다.
ASLR은 운영체제 메모리에 로드되는 실행 파일 위치를 무작위로 생성하여 여러 공격으로부터 보호하는 기술입니다. 점검에 사용되는 DVIA-v2 앱도 ASLR 기술이 적용되여 실행할 때마다 메모리가 랜덤하게 변경되어 변경된 위치로부터 실행됩니다.
DVIA-v2 앱 "내부 로직"에서 사용되는 탈옥 분기점 주소는 랜덤하게 할당되지 않고 Ghidra에서 분석한 앱 흐름대로 이루어지게 됩니다. ASLR이 적용되기 전인 상태(실행되는 메모리 주소가 위치가 0인 상태)로 부터 계산된 주소를 Ghidra에서 볼 수 있습니다. 따라서 탈옥 분기점 주소는 상대 주소(Relative address) 관점에서 보았을 때 항상 동일한 주소를 가리킵니다.
따라서 최종 절대 주소(Absolute address)는 ASLR이 적용되어 올라오는 주소에 DVIA-v2에서 점검할 상대 주소(Relative address)를 더하면 계산할 수 있습니다.
(분석하고 싶은 위치 = ASLR 주소 + DVIA-v2 분석 위치 상대 주소)
감사합니다.