[iOS 취약점] 저장소 내에 중요정보 평문 저장

2023. 10. 15. 22:25모바일 앱 해킹 및 보안/iOS

취약점 개요: 로컬 기기 내 iOS 앱의 임시 데이터 및 영구 데이터를 저장할 수 있다. 이때, 데이터를 평문으로 저장하는 경우 계정정보, 개인정보, 시스템 정보 등 중요정보가 유출될 수 있다.

아래와 같은 장소에 중요정보가 저장될 수 있다.

 

취약점 진단 방법:

1. Data Container

- 앱의 내부 데이터를 저장하는 곳

  > 절대경로: /var/mobile/Containers/Data/Applications/$uuid

     -> Documents: 사용자 데이터를 저장함(사용자에게 노출되고 생성, 삭제 또는 수정할 수 있는 파일, 사용자가 다운로드한 파일(비디오 또는 오디오 앱) 등)

     -> Library/Application support: 앱을 실행하는데 사용되는 폴더로 사용자에게 보이지 않음(앱이 생성하고 관리하는 데이터, 설정, 템플릿 등)

     -> Library/Caches: 데이터 캐시 파일을 저장하는 곳으로 앱 성능을 위한 목적으로 존재함(디스크 공간 확보를 위해 삭제할 수 있기 때문에 쉽게 재생성 가능한 파일)

     -> Tmp: 임시파일을 위한 저장소로 앱 실행하는데 필요없는 파일이 저장됨

 

2. iCloud Container

 - iCloud와 관련된 데이터를 저장하는 곳

 - iCloud 지원 iOS 앱이 사용하는 데이터가 저장됨

   > 절대경로: /private/var/mobile/Library/Mobile Documents

 

 

대응방안:

1. 계정정보, 개인정보 등 중요정보는 로컬 저장소 내 저장하지 않도록 함

2. 부득이하게 저장해야 하는 경우, 아래와 같은 안전한 암호화 알고리즘을 통해 데이터를 암호화하여야 함

 > 대칭키 암호 알고리즘: SEED, HIGHT, ARIA-128/192/256, LEA-128/192/256

 > 공개키 암호 알고리즘: RSAES

 > 일방향 암호 알고리즘: SHA-224/256/384/512

 

'모바일 앱 해킹 및 보안 > iOS' 카테고리의 다른 글

iOS Frida Hooking 방법  (0) 2023.05.08
iOS 탈옥 탐지 방안(Jail Break)  (0) 2023.05.07
메모리 내 중요정보 노출 취약점  (0) 2023.04.23
iOS 진단TWEAK  (0) 2022.08.03