'페이스북 포렌식'에 해당되는 글 1건

  1. 2022.05.09 Windows 10 App Store을 통해 설치된 페이스북 메신저에 대한 분석 방법
posted by 블르샤이닝 2022. 5. 9. 20:26
728x90

     모바일 포렌식을 수행한 적이 있다면 Facebook의 Messenger 앱을 접했을 가능성이 있습니다. 익숙하지 않은 분들을 위해 Facebook은 브라우저가 아닌 모든 다이렉트 메시지를 위한 독립형 "메신저" 애플리케이션을 만들어 트래픽[및 비즈니스 모델]을 더 잘 처리하기로 결정했습니다. 이 앱은 2017년에 10억 명의 사용자를 달성했으며 그 이후로 꾸준히 증가하고 있습니다(forbes).

       일반적인 스마트폰 장치에는 메신저 프로젝트의 코드명인 'com.facebook.katana' 데이터베이스가 포함되어 있습니다. 이 로컬 데이터베이스(2018년 7월 기준)에는 수많은 사용자 데이터가 포함된 수많은 테이블이 있습니다. 연락처, 메시지 대화, 타임스탬프 등은 모두 조사관이 선택하기에 무르익었습니다. 불행히도 Facebook Messenger는 Windows 10 OS에서 그다지 친숙하지 않습니다.

Windows 10 App Store에서 Facebook Messenger에 저장되는 데이터는 무엇입니까?

      놀랍게도 이 응용 프로그램은 로컬 및 클라우드 스토리지의 아름다운 조화를 사용합니다. 모바일 장치에 있는 데이터베이스와 다소 유사한 데이터베이스를 찾을 수 있을 것이라고 생각하여 이 Windows 앱 개요를 살펴보았습니다. 일부 sqlite 데이터베이스 파일   Windows에 존재하지만 모바일 버전의 파일과 크게 다릅니다. 신중한 검색을 통해 간접적으로 가능한 사례 증거로 사용할 수 있는 데이터베이스 파일을 4개만 찾았습니다. fbomnistore.db  , orca2.db, p2p_transfer.db  및 searchstore.db입니다. 

fbomnistore.db:

이 데이터베이스에서 검색할 데이터의 대부분은 사용자 계정 로그 및 앱 세부 정보에 중점을 둡니다. 다음 경로에서 찾을 수 있습니다.

C:\Users\[사용자]\AppData\Local\Packages\ Facebook.317180B0BB486_8xx8rvfyw5nnt\ LocalState\ osmeta_cache\groupcontainer-group.com.facebook.Messenger\Dsenger_contact_DB454929-7BCD-42B5-5065\contactmess

광고
 
이 광고 신고

이 데이터베이스에 있는 29개의 테이블 중 3개만 우리와 관련이 있습니다. 첫 번째는 "client_activity_log" 입니다. 이 테이블은 애플리케이션이 다른 데이터를 '새로고침'한 마지막 시간과 같은 사용자 계정에 대한 애플리케이션 데이터를 표시합니다. 가능한 로그 항목에는 연락처/메시지 수집 또는 대기열에 대한 스냅샷을 요청하는 사용자의 클라이언트가 포함될 수 있습니다. 조사자는 메시지를 애플리케이션으로 가져온 시간과 애플리케이션이 메시지, 연락처 및 스레드에 대한 업데이트 요청을 마지막으로 실행한 시간과 같은 특정 작업을 추론할 수 있습니다.

"collection_index# "는 연락처, 통화 등을 다루는 테이블 모음의 서문입니다. 조사관은 시스템에서 발생한 전화 통화와 모든 메신저 연락처에 대한 자세한 정보를 볼 수 있습니다. 연락처 이름, 친구인 경우, 심지어 Facebook에 연결된 전화번호와 같은 반값 필드를 제공합니다.

"library_metadata" 는 이 데이터베이스에서 마지막으로 유용한 테이블입니다. 여기에서 특정 작업이 마지막으로 발생한 시간에 대한 항목을 찾을 수 있습니다. 여기에는 메시지, 연락처, 통화 및 업데이트에 대한 마지막 확인이 포함됩니다.

p2p_transfer.db: 

많은 사람들은 Facebook에 자체 내장형 포인트 투 포인트 결제 시스템이 있다는 사실을 잊습니다. 이 테이블 내에서 과거 지불 요청 및 성공적인 거래에 대한 정보를 검색할 수 있습니다. 이 데이터베이스의 경로는 다음과 같습니다.

C:\Users\[사용자]\ AppData\ Local\Packages\ Facebook.317180B0BB486_8xx8rvfyw5nnt\LocalState\AppData\Local\osmeta\_store_5CBB0E4E-4F61-4478-A100-02BCCA1563B0\p2

 

사용자 계정에 대한 모든 지불 요청은 " p2p_requests" 테이블에 기록됩니다. 여기에서 돈을 요청하는 사람의 Facebook ID, 이 요청과 관련된 ID, 지불을 요청하는 사람 및 완료된 이체에 대해 이체 ID가 표시됩니다. 또한 거부/승인된 요청 상태, 예상 통화, 요청 생성 시간 및 업데이트 시간, 요청에 첨부된 메모 및 요청의 url/Facebook 스레드 ID와 함께 표시됩니다.

"p2p_transfers"  는 클라이언트의 사용자 계정이 다른 Facebook ID로 송금한 경우에 대해 동일한 정보를 많이 보유합니다.

orca2.db: 

마지막으로 사용자 메시지 처리를 담당하는 데이터베이스에 도착합니다. 이 데이터베이스의 경로는 다음과 같습니다.

광고
 
이 광고 신고

C:\Users\[사용자]\ AppData\ Local\Packages\ Facebook.317180B0BB486_8xx8rvfyw5nnt\LocalState\osmeta_cache\ groupcontainer -group.com.facebook.Messenger\_store_DB454929-7BCD-42B5-B9805-EDvssenger.messenger

유감스럽게도 이 데이터베이스 내에서 실제 메시지 내용을 찾을 수 없습니다. Facebook은 사용자의 모든 메시지를 서버에 저장한 다음 "messages" 테이블 내에서 "msg_id"를 할당하여 특정 메시지를 연결하는 것으로 보입니다. 고맙게도 테이블은 메시지의 스레드 ID와 타임스탬프를 제공합니다. " thread_summaries" 테이블은 한 단계 더 나아가 모든 Facebook 메시지 스레드의 이름, 스레드의 마지막 메시지 타임스탬프 및 그룹의 사용자 지정 이름을 제공합니다. 모든 "fbid_from_thread_key" 항목은 URL " www.facebook.com/messages/t /" 끝에 개별적으로 배치 하여 메시지 스레드를 직접 열 수 있습니다. *참고로 이 스레드와 해당 콘텐츠를 제대로 보려면 사용자가 Facebook에 로그인해야 합니다.

"folder_type"은 메시지 스레드의 현재 상태를 알려주는 " thread_summaries " 테이블 내의 필드 항목 입니다. 지금까지 다음 플래그의 의미를 알아냈습니다.

  • 플래그: 1 = 스레드에 메시지가 있음
  • 플래그: 2 = 메시지가 보류 상태이며 수락 또는 거부되지 않았습니다.
  • 플래그: 5 = 이 스레드에서 보내거나 받은 메시지가 없습니다.

 

searchstore.db: 

내 발견에 따르면 이 데이터베이스는 사용자 계정이 Facebook 사용자를 검색하거나 프로필을 본 경우 모든 인스턴스를 보유합니다. 이 데이터베이스의 경로는 다음과 같습니다.

C:\Users\[사용자]\ AppData\Local\ Packages\ Facebook.317180B0BB486_8xx8rvfyw5nnt\LocalState\AppData\Local\osmeta\_store_5CBB0E4E-4F61-4478-A100-02BCCA1563B0\ Messenger_search

" blob_storage " 및 " search_tokens " 테이블 은 이 데이터베이스의 중요한 데이터를 보유합니다. " search_tokens "로 이동하면 이 호스트의 계정이 프로필을 검색하거나 방문한 Facebook 사용자의 이름과 관련 fbid를 찾을 수 있습니다. 그런 다음 " blob_storage " 테이블로 이동하여 동일한 fbid를 찾아 마지막 검색/프로필 보기의 타임스탬프를 찾을 수 있습니다.

요약:

모바일 장치의 응용 프로그램과 달리 Facebook Messenger의 사용자 콘텐츠와 데이터의 대부분은 클라우드에 저장됩니다. 이 메타데이터의 주요 용도는 Facebook에 대한 소환장이 조사에 유용한지 여부에 대한 초기 정당화로 간주됩니다. 예를 들어, 소환장을 제출하려는 노력은 메시지가 전송되지 않았다면 소용이 없을 것입니다. 또한 이러한 데이터베이스는 포렌식 이미지를 통해서만 또는 시스템의 폴더 구조를 탐색해야만 찾을 수 있다는 점에 유의해야 합니다. Windows는 지속적으로 호출하기 때문에 FTK Imager의 물리적 드라이브 마운트 기능과 같은 특정 상황에서는 채워지지 않습니다.

 

 

출처 : https://boncaldoforensics.wordpress.com/2018/07/28/facebook-messenger-windows-app-store-forensics/

 

Facebook Messenger -Windows App Store Forensics

     If you have ever performed mobile forensics, chances are you’ve come across Facebook’s Messenger app. For those of you unfamiliar, Facebook decided to better handle their traffic […

boncaldoforensics.wordpress.com

번역기돌린것임

728x90