취약한 로깅 메커니즘
- 로그(Log)는 프로그램 구동 시 프로그램의 현재 상태, 처리하는 데이터 정보를 말한다.
- 로그를 통해 관리자나 개발자는 중요한 정보를 제공받을 수 있으며 특히, 프로그램에 버그(취약점)가 있을 때 이를 유지보수 하는데 사용할 수 있다.
- 취약한 로깅 메커니즘은 이러한 로그에 노출되어서는 안되는 중요한 데이터 또는 민감한 데이터가 로그로 남겨지는 경우를 말한다.
진단방법
- 로그 수집기를 실행하고 앱의 여러가지 기능 사용
- 로그 수집기에서 단어 검색을 통한 중요 데이터 또는 민감 데이터 검색
- 안드로이드 스튜디오에서 제공하는 Logcat을 사용하여 진단
- 소스코드에서 로그 관련 코드 상세 분석
- 안드로이드 로그의 등급
V (Verbose) : 중요하지 않은 정보
I (Info) : 일반 정보
D (Debug) : 디버그 정보
W (Warning) : 경고 정보
E (Error) : 에러 정보
F (Fatal) : 중요한 정보
S (Silent) : 가장 높은 우선순위의 정보
android logfilter 실행
adb shell ps -> 어플리케이션 PID값 알아내기
로그인 정보가 평문으로 노출
대응방안
- 앱 배포시 사용되는 로그관련 코드를 제거한다.
- 로그를 출력하는 유틸리티 클래스를 제작한다.
배포 시 DebugMode 를 false로 바꾸면 로그 공개 안됨
'인시큐어뱅크 활용 안드로이드 모의해킹 공부' 카테고리의 다른 글
애플리케이션 패칭 취약점 (0) | 2020.12.22 |
---|---|
안드로이드 페이스트보드 취약점 (0) | 2020.12.22 |
취약한 암호화 구현 (0) | 2020.12.22 |
하드코드 된 중요 정보 (0) | 2020.12.22 |
취약한 액티비티 컴포넌트 (0) | 2020.12.22 |