로그 : 서버에서 운영되는 서비스들이 실행되는 상태나 특정 프로그램을 사용한 사용자의 행위나 흔적을 파일 또는 출력을 통해 남기는 행동
검색 기록 같은 경우는 중요하진 않지만 로그에 중요 정보가 남게 되면 정보가 유출되는 것
안전하지 않은 로깅 메커니즘은 민감 데이터나 노출되면 안 될 정보들을 로그로 남길 경우에 발생하는 취약점(사용자의 ID/PW, 카드 정보 등)
안드로이드 로그 관리법
커널 안 로거라는 커널 드라이브는 main, radio, event, system 네가지 버퍼 관리
사용자 공간에 있는 앱들은 보안 정책에 의해 커널의 버퍼에 접근할 수 없기 떄문에 /dev 에 리눅스 디바이스 노드들을 제공하여 관리
main |
메인 앱 로그, 앱이나 플랫폼 내부에서 android.util.Log 클래스로 기록된 로그 |
event |
시스템에서 발생하는 이벤트 정보를 위한 로그 |
radio |
이동통신망과 관련된 이벤트 정보 |
system |
안드로이드 플랫폼 내부의 하위 레벨에 있는 시스템이나 디버깅을 위한 로그 |
ADB를 통한 로그 확인
logcat [옵션] [필터값]
logcat 실행 명령어
-c |
모든 로그를 지운 후 종료 |
-d |
지정된 로그를 화면에 덤프하고 종료 |
-f [file name] |
로그를 지정 파일로 저장, 없으면 표준 출력 |
-g |
로그 버퍼 크기 출력 후 종료 |
-b |
main/radio/event 버퍼 중 선택 |
-r |
지정된 용량만큼 로그 파일 생성, 디폴트 16kbytes, -f 옵션 필요 |
-s |
기본 필터 조건을 silent 등급으로 지정 |
-v 포맷 |
사용자가 출력할 로그의 포맷을 지정 |
DDMS를 통한 로그 확인
안드로이드 스튜디오는 GUI 환경을 통해 로그캣 로그를 확인할 수 있도록 DDMS 기능을 포함
안드로이드 sdk에서 지원하는 DDMS 도구로 확인할 수 있음
메모리 사용량을 확인하거나 메모리 덤프, 특정 에러를 구체적으로 확인하기 위해 쓰임
롸? 뭔데 실습불가,,,
- 취약점 진단 과정
- adb로 확인
- 엄청 많이 나오는데 하나하나 봐야하나,,,,,일단 보라니까 본다….
- 그냥 보면 힘드니까 메모장에 복사에서 옮겨서 보기
- account= : 로그인 한 계정 정보가 평문으로 노출되는 것을 확인 가능
- 하 멍청이 로그캣 저장 명령어 쓰면 쉽게 하는 걸 난 일일이 복사했닿ㅎㅎㅎㅎ이래서 사람이 배워야해
- 생각보다 오래걸리니 오늘 공부는 여기까지. 하는 방법만 알면 되지머
- 취약점 대응 방안
- 노출되는 중요 정보들의 실제 소스 코드에 어느 부분에서 발생되는지 확인한 후 출력되지 않도록 지우고 컴파일
- .DoLogin 소스 코드 확인 필요
- DoLogin.java 소스 파일에서 로그에 남지 않게 지워버리기
- sysgem.out 함수도 같은 내용이니 지워버리기
'정보보안 > 안드로이드해킹' 카테고리의 다른 글
안드로이드 모의해킹) 애플리케이션 디버깅 기능 (0) | 2020.09.09 |
---|---|
안드로이드 모의해킹) 안드로이드 키보드 캐시 이슈 (0) | 2020.09.08 |
안드로이드 모의해킹) 메모리 내 민감한 정보 저장 (0) | 2020.09.03 |
안드로이드 모의해킹) 취약한 암호화 실행 (0) | 2020.07.29 |
안드로이드 모의해킹) 안전하지 않은 웹 뷰 실행 (0) | 2020.07.28 |
댓글