메뉴 건너뛰기

조회 수 5514 추천 수 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 창이 마구마구 올라가는 대참사가 벌어지게 되어서 여기에는 따로 올리지 않겠습니다..
대략 몇개만 캡쳐해보려 했으나 의미가 없어서.. 모두 암호화 되어서 저장되는것 같습니다.

List of Articles
번호 제목 날짜 조회 수
» 카카오톡 분석하기 (1) - sqlite 파해치기 file 2016.05.26 5514
143 안드로이드용 채팅프로그램 클라이언트(java), 서버(c#) 소스 file 2016.05.19 7359
142 네트워크 연결 상태 및 3G/WIFI 연결상태 체크하기 2016.03.18 4797
141 Android Push GCM 프로젝트 앱 적용 하기(2) file 2016.03.18 5869
140 안드로이드] 페이스북 같은 슬라이드 메뉴 만들기 file 2015.12.15 6317
139 Android TIP] strings.xml 에서 특수문자 사용하기 2015.12.15 4149
138 Android] Fragment 내부의adapter에서 startActivity 하기 2015.12.15 4045
137 Android] 안드로이드 홈 디렉토리 알아내기 2015.12.15 4386
136 안드로이드 로그인유지 코드 2015.12.14 5432
135 Android Push GCM 서버 구성 하기(3) file 2015.12.14 3923
134 안드로이드 EditText 필터링 검색 file 2015.12.14 4480
133 안드로이드 EditText 필터링 검색 구현(adapter.getFilter().filter(cs)) file 2015.12.14 4999
132 JAVA JDBC를 사용하여 MySQL과 연동 file 2015.11.20 4669
131 안드로이드 로그인 화면 만들기 file 2015.09.04 5000
130 [안드로이드] 리스트 뷰의 한 항목에 대한 컨텍스트 메뉴 만들기 file 2015.09.03 4979
129 [안드로이드] 빠르게 사용할수 있는 컨텍스트 메뉴 만들기 file 2015.09.03 3876
128 [안드로이드] 팝업메뉴 사용법 file 2015.09.03 5172
127 [안드로이드] 콘텍스트 메뉴 사용예제 file 2015.09.02 4304
126 안드로이드 기본어플 예제 어플소스 모음 2015.08.17 5743
125 [안드로이드 강좌] 초보자들이 많이 하는 실수 file 2015.08.10 4139
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved