메뉴 건너뛰기

조회 수 10063 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 첨부


sqlite3 의 기본 명령어를 알아야하고
adb shell 기능이 설치 되어있어야 합니다.
(그리고 리눅스 명령어는 기본이겠죠..??^^;)
간단한 검색으로 설치와 숙지가 가능한 것들이니 숙지하고 진행하도록 합시다.

순서로는
1 *.db파일(sqlite) 분석하기
2. python을 이용한 명령어 구성
3. 실행
정도가 되겠습니다.

아마도 1번이 제일 오래 걸릴것 같은데 시작해보도록 하겠습니다.

먼저 카카오톡의 db가 저장되어있는 곳을 찾아가보겠습니다.
보통 저장되어있는 /data/data/ 폴더 내에
리스트를 살펴보면
..
[여기서 잠깐!] -루팅을 안한경우...
살펴보기전에 cd /data/data 라는 명령어를 치게 되면 실행이 되지 않습니다.
루트권한으로 바꿔야 하죠.
su 명령어를 사용합니다.

혹여 루팅이 어렵다면 다른 방법도 있습니다.
파일을 직접 복사해와서 분석하는 방법인데 아래에서 설명하는 폴더에 들어가서 필요한 파일을 복사해와서 이후 기능을 실행하면 됩니다.
01 (2).png


다음의 위치에 db 파일이 자리잡고 있습니다.
더 이동해서 database 폴더내의 목록까지 조회해봅니다.
2.png



이 내용을 이렇게 자세히 다루는 것은 앞으로 대충 다룰려고 이럽니다..ㅋ
보이는 대로 KakaoTalk.db라는 파일이 있고 대소문자를 구분해서 다음 명령어를 실행시키면 db에 접속이 가능합니다.
이 때 대소문자를 구분하지 않고 소문자로만 쓰게 되면
소문자로 된 파일(kakaotalk.db)이 생성되어 sqlite가 실행되니 주의해야 합니다.

3.png



이제 테이블들이 뭐가 있는지 살펴보겠습니다.
테이블을 살펴보는 명령어는 여러가지가 있겠지만 간단한 .tables를 사용하겠습니다.
여기서부터는 개인적으로 복잡하다고 생각합니다.. sql 쿼리문을 잘 못하기에..(삐질삐질...)
4.png


friends라는 테이블에 집중하겠습니다. @.@
이제부터 복잡해지는데.. schema 라는 명령어를 사용해서 필요한 자료를 찾아내겠습니다.
schema라는 명령어는 간단하게 생각하자면 테이블의 속성을 살펴보는겁니다.
.schema friends 라는 명령어를 실행시킵니다.
5.png



@.@...... 역시 예상대로 아주 복잡한 스키마를 가지고 있습니다...

하나씩 자세히 본다면 키값들과 채팅아이디값 폰번호 이름 등등 많은 속성들이 있습니다.
이 값들을 실제 출력한다면 아주 유명한 쿼리값인 select * from friends; 라는 명령어를 사용하면 됩니다.
그러면 cmd 창이 마구마구 올라가는 대참사가 벌어지게 되어서 여기에는 따로 올리지 않겠습니다..
대략 몇개만 캡쳐해보려 했으나 의미가 없어서.. 모두 암호화 되어서 저장되는것 같습니다.

  1. 안드로이드 - RecyclerView 안에 RecyclerView 구현하기

    Date2021.04.02 Views502
    Read More
  2. 안드로이드 - Json 파싱하기

    Date2021.04.02 Views828
    Read More
  3. 안드로이드 - 타이머(Timer) 구현하기

    Date2021.04.01 Views1368
    Read More
  4. 안드로이드 - SQLiteDatabase 구현하기

    Date2021.04.01 Views241
    Read More
  5. 안드로이드 - 리사이클러 뷰(RecyclerView) 구현

    Date2021.04.01 Views388
    Read More
  6. 안드로이드 - 네비게이션 드로어(Navigation Drawer)를 활용하여 슬라이드 메뉴 구현하기

    Date2021.04.01 Views1856
    Read More
  7. 안드로이드 - 툴바(ToolBar)를 사용하여 앱바(App Bar) 구현하기

    Date2021.04.01 Views454
    Read More
  8. 안드로이드 - 프로그레스바(ProgressBar) 구현하기

    Date2021.04.01 Views451
    Read More
  9. 안드로이드 - AsyncTask 구현 예제

    Date2021.04.01 Views280
    Read More
  10. 안드로이드 - 액티비티(Activity)와 액티비티 생명 주기(Activity Life Cycle)

    Date2021.04.01 Views225
    Read More
  11. 안드로이드 - 리스트뷰(ListView) 구현

    Date2021.04.01 Views490
    Read More
  12. 안드로이드 - 컨텍스트 메뉴(Context Menu) 사용 예제

    Date2021.04.01 Views206
    Read More
  13. 안드로이드 - 옵션 메뉴 (Option Menu) 구현 방법

    Date2021.04.01 Views283
    Read More
  14. 안드로이드 - 명시적 인텐트(Explicit Intent)와 암시적 인텐트 (Implicit Intent)

    Date2021.04.01 Views324
    Read More
  15. 안드로이드 - 날짜 및 시간 정보 입력받기 (DatePickerDialog / TimePickerDialog)

    Date2021.04.01 Views1760
    Read More
  16. 안드로이드 - setContentView()와 레이아웃 전개자(LayoutInflater)

    Date2021.04.01 Views227
    Read More
  17. 안드로이드 - AlertDialog 사용하여 알림창 띄우는 방법 총정리

    Date2021.03.31 Views686
    Read More
  18. 안드로이드 - SnackBar를 사용해 팝업창 띄우기

    Date2021.03.31 Views281
    Read More
  19. 안드로이드 - 토스트(Toast) 메시지 사용하기.

    Date2021.03.31 Views321
    Read More
  20. 안드로이드 - 액티비티(Activity)로부터 결과 데이터 받아오기

    Date2021.03.31 Views483
    Read More
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 13 Next
/ 13

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved