Forensics

[대회 문제 풀이로 이해하는 디스크 포렌식 분석 3,4강] - Web log

HackHiJack 2022. 3. 4. 15:40
728x90
반응형

이번에는 web log와 관련된 포렌식 문제 유형을 살펴볼 것이다.

 

이런 문제는 사용자가 웹 브라우저를 사용하고 남은 아키택쳐 파일을 분석하면 된다.

웹 브라우저에서는 다음과 같은 정보를 획득할 수 있다.

Cache정보 : 방문사이트 접속 시 자동으로 받는 정보
History 정보 : 사용자가 방문한 웹사이트 주소 정보
Cookie 정보 : 웹사이트에서 사용자의 HDD에 저장 시켜놓는 사용자 데이터
Download 정보 : 사용자가 웹 상에서 받은 파일에 대한 정보

1. Location of history file

이제 각 브라우저 별 history파일이 어딨는지 살펴보겠다.

 

chrome

브라우저 점유율 1위

sqlite3 사용

-추가 자료

https://www.foxtonforensics.com/browser-history-examiner/chrome-history-location

 

firefox

sqlite3을 이용한다.

<random>은 profile에서 변경 가능

-추가 자료

https://www.foxtonforensics.com/browser-history-examiner/firefox-history-location

 

 

Internet Explorer(Edge)

9 버전 밑으로는  여러 개의 파일로 저장했고, 10 버전 이상으로는 하나의 파일로 저장한다.

 

-추가 자료

-> edge : https://www.foxtonforensics.com/browser-history-examiner/microsoft-edge-history-location

-> IE : https://www.foxtonforensics.com/browser-history-examiner/internet-explorer-history-location

 

2. Example to analyze web log file

 

1. chrome

첫 번째로 chrome의 history 파일을 분석해보겠다.

mac은 아래와 같은 경로에 history파일이 있다.

/Users/<username>/Library/Application\ Support/Google/Chrome/Default/History

이걸 DB for sqlite3을 이용해서 열면 다음과 같이 나온다.

다운로드, 방문한 url 등의 정보들을 확인할 수 있다.

 

2. IE(Edge)

이번에는 Internet Explorer 히스토리 파일을 분석해 볼 것이다.

 

먼저 internet explorer는 분석 파일 경로가 아래와 같다.

%Profile%₩AppData₩Local₩Microsoft₩Windows₩WebCache₩WebCacheV*.dat

 

이 파일은 전용 IE분석 프로그램을 사용해야 한다(IE10 analyze.exe)

프로그램을 열면 아래처럼 나온다.

how to open 부분에 첫 번째 옵션은 local의 히스토리 파일을 여는 것이고, 두 번째 옵션은 다른 곳에서 온 파일을 분석할 때 사용한다.

첫 번째 옵션은 프로그램이 알아서 분석할 파일을 찾아준다.

 

이제 open 하면 다음과 같이 뜬다.

한국은 utc+9이니 선택해주고 넘어간다.

 

그러면 다음과 같이 분석이 된 것을 확인할 수 있다.

반응형

3.Example challenge

 

이제 마지막으로 예제 문제를 풀어볼 것이다.

 

문제는 다음과 같다.

 

- 구해야 할 것

1. SQL 공격구문
2. 갑자기 닫힌 시점(utc+9)

갑자기 닫힌 것은 정보들이 session에 남게 된다.

따라서 session 위주로 분석을 진행하면 된다.

먼저 chrome 브라우저를 분석해보자.

chrome 브라우저 로그파일은 다음과 같은 경로에 있다.(unix기준)

/Users/proneer/AppData/Local/Google/Chrome/User\ Data/Default/

 

아래처럼 많은 로그파일이 있는 걸 확인할 수 있다.

위 중 갑자기 닫힌 시점이니 마지막 session, history를 확인하면 될 거라고 생각했다.

DB for sqlite3으로 열려면 비밀번호가 필요해서 그냥 strings로 확인했다.

chrome log를 보면 sql injection을 한 부분은 없는 것 같다.

 

아까 local에 chrome대신 mozilla(firefox)가 있는 걸 확인했다.

Local의 mozilla파일에는 정보가 없어서 Roaming으로 이동했다.(/Users/proneer/AppData/Roaming/Mozilla/Firefox/Profiles/075lfxbt.default)

이중 오른쪽 밑에 쪽에 sessionstore.js라는 파일이 있다.

 

이걸 이용해서 분석하면 아래와 같이 sql구문, lastupdate 즉 마지막으로 닫힌 시간이 확인된다.

이제 lastupdate 시간을 unix time decoder에 넣으면 다음과 같이 시간이 나오는 걸 확인할 수 있다.

 

- 마무리

Sun Feb 12 2012 10:23:17
1_UNI/**/ON_SELECT

 

728x90
반응형