디지털포렌식

[디지털포렌식] 웹브라우저 아티팩트와 BrowsingHistoryView, Hindsight 리뷰

은동동동 2025. 2. 10. 10:27

이번 포스팅에서는 웹 브라우저 아티팩트와 이를 분석하기 위한 BrowsingHistoryView, Hindsight 툴 리뷰를 해보겠습니다.

우리가 크롬, 엣지, 웨일등의 웹 브라우저를 이용할때 다양한 아티팩트가 발생하게 되는데요.

해당 자료는 포렌식 분석에 있어서 중요하게 이용됩니다!

주로 유저의 웹 사용 행동, 그리고 어떤 부분에 관심이 있는지 알아보는데 사용됩니다.

웹브라우저 아티팩트의 종류

  • History : 방문한 웹사이트에 대한 기록. 주로 URL의 형태로 표현됩니다.
  • Cache : 사용자가 웹사이트를 방문할때 자동적으로 저장되는 아티팩트로, 다시금 그 사이트를 방문할 때 빠르게 정보를 로드할 수 있는데 도움이 됩니다
    • 캐시된 데이터의 타입
    • HTML
    • Javascript
    • Icon
    • Font…
    • 캐시된 아이템에서 읽을 수 있는 정보
    • URL
    • Size
    • Last accessed time
    • Expired time
    • Server name…
  • Cookie :서버가 웹 브라우저 유저에게 보내는 작은 데이터 조각으로 유저 친화적인 서비스를 구축하는데 필요한 아티팩트 입니다.
    • Account ID
    • Authentication tokens
    • Website Settings..
    • 쿠키로부터는 Host name, path, Last accessed time 등 여러 정보를 얻을 수 있습니다.
  • Login Credentials : 웹 브라우저에서 로그인과 관련된 정보를 이야기하는 아티팩트입니다. 이때 웹브라우저는 보안을 위해 해당 정보를 암호화 한 아티팩트를 생성합니다.
  • Web Browser
  • Encryption Algorithm
  • Data Storage
  • chromium
  • DPAPI + AES-256
  • File(SQLite)
  • IE 10/11/Edge
  • DPAPI
  • File(Vault)
  • IE 7/8/9
  • DPAPI
  • Registry
  • ex) Google chrome의 경우
  • %UserProfile%\AppData\Local\Google\Chrome\User Data\{profile}\Login Data
  • → [SQLite DB flie] Timestamp, URL, User ID, Encrypted password …Windows DPAPI?
    • Data Protection API의 약어로 데이터를 암호화하는데 있어서 Masterkey를 이용하는 암호 매커니즘을 이야기합니다
    • Masterkey는 유저의 비밀번호를 이용한 것으로 암호화되는데, 3개월마다 한번씩 로테이션 됩니다.
    • 라이브 시스템에서는 DPAPI를 calling하는 것으로 암호화가 진행되고, 데드 시스템에서는 SID와 비밀번호를 포함한 유저 관련 정보를 통해 암호화됩니다.
  • Downloads : 웹브라우저에서 다운받은 파일의 리스트를 이야기 합니다. 여기에서는 캐시와의 차이점이 있는데 바로 “의도”입니다. 일반적으로 캐시는 유저의 의도와 상관없이 자동적으로 다운받아지는 파일을 이야기하고, downloads는 유저가 필요에 의해 본인의 local system에 다운 받는 파일의 리스트를 이야기 합니다.

이제 웹 브라우저 아티팩트에 대한 정보를 어느정도 알아봤으니 직접 실습을 해보겠습니다.

저는 주로 크롬 브라우저를 사용하는데요, 우선 아티팩트 수집을 먼저 해주겠습니다.

저는 KAPE로 수집을 해줬습니다.

KAPE를 실행해서 타겟 소스의 주소와 분석한 결과를 저장해줄 경로를 설정해줍니다.

(이때 flush 사용에 주의해주세요! 저는 보통 flush하지 않습니다)

그리고 분석할 타겟을 설정해주면 되는데요, 저는 여기서 Chrome과 ChromeExtensions 옵션에 체크를 해줬습니다.

분석이 끝나면 분석한 파일과 더불어 이렇게 .csv 파일이 생성됩니다. 여기서 chorme 브라우저와 관련한 정보들의 위치나, 생성시간, 수정시간 등을 확인할 수 있습니다.

브라우저 포렌식에 도움을 줄 수 있는 정보입니다.

Hindsight

https://github.com/obsidianforensics/hindsight/releases/tag/v2023.03

Hindsight는 대표적인 웹브라우저 포렌식 툴입니다.

위의 링크로 들어가서 hindsight_gui.exe를 실행하고 조금 기다리면 아래와 같은 창이 뜹니다.

hindsight가 제대로 실행되었다는 뜻입니다. 해당 사이트로 들어가면 아래와 같은 창이 뜹니다.

Profile path에는 분석을 원하는 파일의 주소를 입력해주면 됩니다.

아까 KAPE를 통해 수집했던 파일의 주소를 입력해주고 Run을 눌러주면 분석이 시작됩니다.

분석 중간중간 과정은 cmd 창으로도 확인 가능합니다!

(분석에 시간이 오래 걸리는 편입니다…)

분석하면 Result 창이 뜨게 됩니다. 분석 결과는 xlsx나 jsonl, SQLite DB로 저장할 수 있고 브라우저 상에서도 볼 수 있습니다.

xlsx파일로 저장하면 관련 정보가 뜨게 되는데 이중에서 저는 어떤 북마크를 사용했었는지 궁금해서 북마크 정보만 따로 필터링 해줬습니다.

주로 과제할때 사용했던 컴퓨터라 과제 관련한 내용을 북마크 해놓은게 많네요

종종 심심할때 했던 사과게임 북마크도 보이네요 (ㅎㅎ)

북마크 정보 이외에도 login 정보, 다운로드 정보 등도 확인 가능하니 필요에 따라 필터링 해서 사용하시는 것을 추천드립니다.

BrowsingHistoryView

https://www.nirsoft.net/utils/browsing_history_view.html

브라우징 히스토리뷰는 다양한 웹 브라우저의 기록 데이터를 읽고 해당 기록을 하나의 테이블에 표시하는 포렌식 툴입니다.

크롬, 엣지, 파이어폭스 등의 브라우저를 한번에 볼 수 있다는 점이 장점인 툴입니다.

위의 사이트에서 무료로 파일을 다운로드 받을 수 있습니다

실행하면 위와 같은 화면이 뜹니다.

저는 엣지브라우저를 pdf 읽을때 종종 쓰는데 이런 부분까지 BrowsingHistoryView에서 확인 가능했습니다.

방문한 시각, 몇번 방문했는지 등등 또한 확인할 수 있으며 오름차순, 내림차순 등으로 정렬 가능한 툴이기 때문에 사용자의 브라우저 사용 성향 등을 확인할 수 있습니다.

BrowsingHistoryView와 Hindsight 비교

    • 다양한 브라우저의 사용 현상을 한꺼번에 확인하는 것에는 BrowsingHistoryView를 사용하는 것이 유리해보입니다!
    • Login Credential을 확인하고 싶을 경우 Hindsight를 이용해야 합니다. (Browsing History View에서는 확인할 수 없었습니다)
    • 본인이 xlsx 파일 사용을 잘한다면 해당 데이터를 다루기 위해 Hindsight를 사용하는 것이 좋다고 생각합니다.
    • Hindsight는 Kape 등의 툴을 이용해서 데이터를 추출하는 과정이 필요하기 때문에 단순한 과정을 좋아한다면 BrowsingHistoryView!