업무/APP(AND)진단 쉽게하려 만든 게시판

Logcat으로 앱진단 사용법

종금 2021. 2. 18. 20:49
반응형

요즘 앱진단에 대해 공부하고 있는 와중 Logcat이라고 안드로이드 개발자모드인 adb에서 지원해주는 툴을 찾았다.

 

먼저 사용법을 보면 adb로 접속이 붙어있는지 확인 후 

]

 

adb.exe shell 접속 후 logcat 명령어 입력하면 엄청 방대한 량의 로그가 나온다(raw data)

 

참고로 실시간 로그까지 보여지므로 이것을 켜두고 진단하면 좋을것같다

 

ex) 현재 로그가 끝난곳은 이부분이지만

무엇인가 클릭하면(페이스북)

해당 메인액티비티가 수행되었다고 뜨는 것을 볼 수 있다.

 

이중에 행위하는 것들도 뜨는 만큼 몇몇 입력값이 로그에 남아있다면 취약한것으로 볼 수 있을 것같다.

(취약 어플은 함부로 공개할 수 없으니 여기까지로 하고 원인을 알아보자)

 

그러면 왜? 뜰까

개발시 가장 중요한 부분은 역시 트러블 슈팅일 것이다. 

항상 코드가 많아지면 충돌도 나고 어느 부분이 문제인지 알기위해서는 해당 정보의 로그가 필요하다

그래서 로그 정보를 개발 단계에서 일부로 만들어서 관리하는데

위의 로그 정보를 만약 삭제하지 않고 퍼블리셔한다면 에러 및 입력값 출력값등이 로그에 나올 수 있을 것이다.

 

 

2. dumpsys 

 

이아이는 정말 어떻게 쓸수있을까 생각해보았는데 내가 진단하고 싶은 어플의 저장소 및 여러 경로를 알아내는 가장 첫단계로 쓸 수 있을 것 같다.

사용법은 간단하다 dumpsys package (package name)을 쓰면된다.

패키지 네임은 프리다 서버로 확인하자 (identifier)

이곳에서 가장 중요하게 볼곳은 이부분인거 같다

ID도 ID지만 실행해 사용하거나 저장하는 데이터 디렉터리 위치가 이곳에 다나온다

이중 개인적으로 눈여겨 본곳은 DataDir로 해당 디렉터리 위치로 일단 움직여보면 다음 디렉터리가 보이는데

이중 shared_prefs가 좀 눈에 띈다.

 

해당 디렉터리를 들어가니 텍스트형식이 보인다

이 부분에 중요 정보가 저장되는지 한번씩 cat | grep해서 확인해보면 될거같다.

 

**여러 파일중 무엇을 보아야하는지 모르겠다면 먼저 ls-al로 수정날짜를 보면될거같다.

먼저 활동을 걸고

수정날짜를 보고

해당 내용을 grep

해보았지만 역시 페이스북은 잘 만들어져있다.

 

*** /data/data/(package_name)도 같은 구조의 데이터를 가지고있다. 둘이 링크되어있는건지 그냥 두개를 만드는건지 한번 나중에 확인해봐야겠다**

 

PS.

일단 아직은 이론뿐이고 실제 진단시 logcat 열고 이래저래 눌러보며 무엇인가 보이지는 확인해보며 좀더 보강해야할것같다

반응형