인시큐어뱅크 앱 취약점 - 취약한 SD카드 스토리지
취약점 소개
안드로이드는 내부 저장소와 외부 저장소로 나뉘는데 SD카드는 외부 저장소로 모든 어플리케이션이 접근할 수 있는 영역이다.
이러한 SD카드에 중요 정보가 다른 어플리케이션에 의해 노출될 수 있다.
취약점 진단
AndroidManifest.xml 파일을 확인하면 WRITE_EXTERNAL_STORAGE와 READ_EXTERNAL_STORAGE 권한이 설정되어 있다.
apk 디컴파일을 수행한 후 DoTransfer 클래스를 살펴보면, “Message: ~” 문자열을 구성한 뒤 getExternalStorageDirectory()로 SD카드 저장소 경로를 구하고 + /Statements_[유저네임].html에 저장하고 있다.
Transfer에 실패한 경우와 성공한 경우 둘다에 대해 Transfer 내역을 SD 카드 저장소에 저장하고 있다.
SD카드 저장소는 /sdcard 에서 확인 가능하다.
Statements_jack.html을 보면 다음과 같이 Transfer 내역을 확인할 수 있다.
대응 방안
중요 정보 저장 시에 외부 저장소가 아닌 내부 저장소에 저장하도록 코드를 변경한다.
중요 정보는 반드시 암호화 될 수 있도록 조치한다.
'Android > InsecureBankv2' 카테고리의 다른 글
인시큐어뱅크 앱 취약점 - 사용자 계정 목록화 취약점 (0) | 2023.07.03 |
---|---|
인시큐어뱅크 앱 취약점 - 취약한 HTTP 통신 및 파라미터 조작 취약점 (0) | 2023.07.03 |
인시큐어뱅크 앱 취약점 - 안드로이드 키보드 캐쉬 취약점 (0) | 2023.07.03 |
인시큐어뱅크 앱 취약점 - 런타임 조작 (0) | 2023.07.03 |
인시큐어뱅크 앱 취약점 - 앱 디버깅 취약점 (0) | 2023.07.03 |