DIVA
- 모바일 앱 보안의 기본을 이해하고 테스트할 수 있도록 설계된 안드로이드 응용 프로그램
안전하지 않은 로깅 취약점은 중요한 데이터가 로그에 평문으로 노출되는 취약점이다.
로그에 비밀번호, API 키, 개인 정보 등의 민감한 데이터가 포함될 경우, 이 정보가 유출될 위험이 있다.
중요 정보를 입력했을 때 로그캣(Logcat)에 정보가 평문으로 노출되는지 확인하 진단한다.
(참고로 로그캣에는 생각보다 많은 로그가 찍히기 때문에 취약점 진단 시 많은 힌트를 얻을 수 있다. )
아무 숫자 123123123을 입력하고 CHECK OUT 버튼을 누르면 에러 메시지가 발생한다.
adb logcat 명령을 통해 발생하는 로그들 보면 전송한 123123123 정보가 평문으로 노출되는 것을 확인할 수 있다.
GDA 프로그램으로 DIVA apk 파일을 디컴파일 해서 LogActivity 파일의 소스코드를 살펴보면
Log.e 코드로 인해 로그캣에 정보가 암호화되지않고 입력한 값 그대로 나타나는 안전하지 않은 로깅 취약점이 존재함을 알 수 있다.
보통 개발자들은 개발 시 로그 정보를 통해 에러를 잡거나, 전송되는 정보들을 확인한다. 문제는 앱을 배포하기 전에 이런 로그 코드를 삭제해야 하는데, 삭제하지 않은 경우에 취약점이 발생하게 되는 것이다.
근데 요즘은 개발 도구에서 로그캣 정보가 있는지 확인되기 때문에 많이 발견되는 취약점은 아니다.
결론
서비스 중요 정보가 노출되지 않도록 로그 코드 삭제함으로써 취약점에 대응할 수 있다.
'모바일 앱 해킹' 카테고리의 다른 글
[DIVA] Insecure Data Storage - Part1 (안전하지 않은 데이터 저장) | 안드로이드 앱 취약점 실습 (0) | 2024.05.18 |
---|---|
[DIVA] HardCoding Issues(하드코딩 이슈) | 안드로이드 앱 취약점 실습 (0) | 2024.05.18 |
취약한 로깅 메커니즘 | 안드로이드 앱 해킹, 인시큐어뱅크 실습 (0) | 2024.05.16 |
로컬 암호화 이슈 | 안드로이드 앱 해킹, 인시큐어뱅크 실습 (0) | 2024.05.12 |
안드로이드 앱 구조 이해하기 | apk, dex, manifest 등 (0) | 2024.05.10 |