기술보안/Android
[DIVA-android] DIVA - 8. 입력 값 검증 부재 파트 2(INPUT VALIDATION ISSUES - PART 2)
kimcogi
2024. 2. 12. 19:36
DIVA 앱을 설치 후 실행하면 13개의 문제가 나오게 되는데 이 중 8번 문제인 입력 값 검증 부재 파트 2(INPUT VALIDATION ISSUES - PART 2) 문제를 클릭한다
문제를 들어가게 되면 URL을 입력할 수 있는 창과 함께 web URL 이외에 중요 정보에 액세스를 해보라는 목표가 있다
URL 입력 창에 "www.google.com" 입력을 해본 후 "VIEW" 버튼을 클릭
"VIEW" 버튼을 클릭한 결과 구글 페이지에 접근됨을 확인할 수 있다
jadx를 이용하여 8번 문제가 해당되는 코드인 "InputValidation2URISchemaActivity"에 접근한 결과 사용자 입력에 대해 별도의 필터링 없이 "loadUrl" 함수의 인자값으로 사용되고 있음을 알 수 있다
여기서 우리가 추측해볼 수 있는 것은 목표를 살펴보았을 때 URL이 아닌 중요 정보를 획득하는 것이 목표이므로, 내부 파일접근을 시도해봐야 한다는 추측을 해볼 수 있다
File URI scheme를 살펴 보았을 때 호스트가 원하는 경로에 존재하는 파일에 액세스를 할 수 있는 방법은 "file://"이 있고 "file://"을 이용하여 DIVA 앱 내 저장소 내 "shared_prefs", "WebViewChromiumPrefs.xml" 파일의 경로를 입력하여 "VIEW" 버튼을 누른 결과 해당 파일의 내용이 보이는 것을 알 수 있다
- File URI scheme : https://en.wikipedia.org/wiki/File_URI_scheme
반응형