ssoL2 TISTORY

[이제 시작이야! 디지털 포렌식] Chapter 8 인터넷과 이메일 본문

read/이제 시작이야! 디지털 포렌식

[이제 시작이야! 디지털 포렌식] Chapter 8 인터넷과 이메일

ssoL2 2021. 1. 24. 22:39

 

 

 

포렌식 조사관들에게 있어서 인터넷은

상당한 양의 증거가 저장되어 있는 장소일 수 있다.

 

따라서 웹 서핑, 채팅, 이메일, 소셜 네트워크 등이 어떻게 작동하느지

그리고 어디에 흔적을 남기는지를 반드시 이해해야 한다.

 

 

 


1. 인터넷 개요

  • 웹 페이지는 어떻게 작동할까
  • 사용자가 브라우저에 있는 주소창에 웹 주소나 URL(Uniform Resource Locator)를 입력
  • URL은 호스트, 도메인 이름, 파일이름의 세 부분으로 구성

 

  • HTTP(Hypertext Transfer Protocol, 하이퍼텍스트 전송 규약)는 인터넷에서 사용되는 프로토콜
  • 프로토콜 : 다른 장비와 통신할 수 있도록 사전에 협의한 방법
  • http://www.digitalforensics.com
  • 도메인 이름은 "digital forensics" 
  • 최상위 도메인은 ".com" -> 인터넷 도메인 네임 시스템(domain name system)을 구성하는 요소 중 top 위치
  • 다른 최상위 도메인 예로는 .org, .edu, .net 

 

  • 브라우저는 HTTP 프로토콜을 사용하여 www.digitalforensics.com을 호스트하는 서버에 "get" 요청 전송
  • 브라우저 : 인터넷에 있는 정보를 보고 접속할 때 사용하는 프로그램(인터넷 인스플로어, 파이어폭스, 크롬)

 

  • URL 입력 후 브라우저는 가장 먼저 도메인 이름 -> IP(Internet Protocol) 주소로 변환
  • 도메인 네임 서버(Domain Name Server, DNS) : 특정 도메인 이름을 그에 해당하는 ip 주소로 변환
  • DNS가 IP 주소로 변환 후 웹 사이트를 호스트하고 있는 서버에 요청 전송
  • 서버는 요청 받고 요청된 웹 페이지와 관련된 내용을 보여줌

 

  • 웹 페이지는 여러 구성요소로 이루어짐
  • 먼저, HTML(Hypertext Markup Language, 하이퍼텍스트 생성 언어) 문서 
  • -> 브라우저에서 페이지가 표시 되는 방법, 페이지의 내용, 파일이름 등 많은 정보 저장
  • HTML은 프로그래밍 언어가 아니다.

 

  • 웹 페이지는 정적(static)과 동적(dynamic) 두 가지 종류
  • 정적 웹 페이지 : 페이지의 내용, 레이아웃 등 모두 페이지를 읽어오기 전에 결정됨
  • 동적 웹 페이지 : 데이터베이스에 저장되어 있는 여러 구성요소로 요청됨과 "동시에" 만들어짐(쇼핑 웹페이지 추천)

 

  • 특정 작업은 클라이언트 혹은 서버에서 실행됨
  • 자바스크립트 코드는 특정 기능이 클라이언트 컴퓨터에서 다운로드되어 실행될 수 있도록 함
  • 서버 측 코드는 이와 반대이며 다른 컴퓨터에 정보를 보내야 할 때 사용됨

 

  • "whois" 검색으로 해당 도메인 등록자, 도메인 생성 날짜, 관리자 연락처, 기술담당 연락처 내용 확인 가능
  • but 대부분의 도메인 이름 등록 서비스는 사생활 보호 등록 서비스 제공
  • -> 검색 해도 등록회사의 정보만 얻음(Network Solutions, LLC)

 

- P2P(Peer-to-peer)

  • P2P는 파일 공유 시 주로 사용
  • 큰 비중은 불법 MP3, 불법 영화 그리고 아동 포르노 등
  • 클라이언트/서버 네트워크와 다른 점 : P2P 네트워크에서는 하나의 컴퓨터가 클라이언트/서버 역할 둘 다 가능
  • 그누텔라(Gnutella) : P2P 네트워크 시스템이나 아키텍쳐에서 사용되는 주요 기술 중 하나

그누텔라 요청

-> P2P 네트워크에서 파일 요청이 끝이 없다면?
    정보 패킷 안의 TTL(Time To Live) 값이 네트워크의 다른 노드에 전달될 때마다 1씩 감소하게 설정되어 있음
    그 숫자가 0이 되면 패킷은 전파를 중단 !

 

  • P2P 네트워크 사용하기 위해 P2P 클라이언트 프로그램 다운로드 -> "공유" 폴더 생성
  • P2P는 HTTP를 사용하여 파일 전송
  • 그누텔라에 있는 노드 두 종류
  • 1. 울트라피어(ultrapeer) : 필요한 대여폭과 가동시간(네트워크에 있는 시간)이 있으면.. 검색, 인덱싱, 연결 등 수행
  • 2. 그 이외에는 리프(leaf)

- INDEX.DAT 파일

  • 바이너리 파일로 마이크로소프트의 인터넷 익스플로러(IE)가 사용됨
  • 다양한 정보 기록 유지하는데, 방문한 URL, 방문횟수 등
  • IE에는 히스토리, 쿠키, 임시 인터넷 파일 디렉터리 존재하며, INDEX.DAT 파일들이 각 디렉터리 기록 및 유지

2. 웹 브라우저 - 인터넷 익스플로러

  • World Wide Web
  • 가장 유명한 건 마이크로소프트의 인터넷 익스플로러
  • 모든 브라우저의 근본은 동일한 원리로 작동되고 있다.
  • 모든 브라우저는 어느 정도의 캐시 시스템을 사용함(쿠키, 히스토리, URL, 즐겨 찾기 등)

- 쿠키

  • 쿠키 : 웹 서버가 사용자의 컴퓨터에 저장해놓은 조그만한 텍스트 파일
  • 세션 관리 시 사용 및 특정 웹사이트에서의 사용자 선호사항 기억으로 사용
  • 매우 중요한 증거를 제공하며 하나의 INDEX.DAT 파일에서 관리
  • URL, 날짜와 시간, 사용자의 이름 등이 저장되어 있을 수 있음
  • BUT 쿠키에서 웹 주소 발견되었더라도 실제로 방문하지 않았을 수도 있음

- 임시 인터넷 파일(웹 캐시)

  • 웹 캐시로 다운로드 시간 단축 가능
  • IE에서는 웹 캐시=임시 인터넷 파일 이라 부름
  • IE에서 임시 인터넷 파일은 하부 폴더로 정리되어 있는데 각 폴더는 8문자의 임의의 이름으로 
  • 각 파일은 그게 상응하는 날짜와 시간 값 포함
  • "마지막 확인 날짜" 정보로 서버에 페이지 최신 버전 있는지 확인 -> 있다면 최신 버전 다운로드
  • 윈도우 탐색기로 임시 인터넷 파일 확인 가능
  • 목록에 있는 각 아이템은 아이콘으로 파일 타입 알 수 있고 파일이름, 관련 URL 확인 가능
  • 임시 인터넷 파일 또한 INDEX.DAT 이 관리
  • 웹 메일 증거도 발견 가능

메세지나 사서함 정보를 남긴다.

Outlook Web Access Messages - Read[#].htm
AOL 메세지 - Msgview[#].htm
Hotmail 메세지 - getmsg[#].htm
Yahoo! - ShowLetter[#].htm

Outlook Web Access Inbox - Main[#].htm
AOL Inbox - Msglist[#].htm
Hotmail Inbox - HoTMail[#].htm
Yahoo! - ShowFolder[#].htm

 

  • 임시 인터넷 폴더에는 대부분 썸네일과 웹 페이지 정보의 조각으로 구성

캐시와 HTTPS

-> 인터넷 쇼핑 및 뱅킹은 대부분 HTTPS 프로토콜
    이는 보안이 강화된 웹 기반 이메일에서도 사용함
    HTTPS는 인터넷에서 사용되고 있는 HTTP 프로토콜에 보안 기능이 추가된 버전
    보안의 이유로 IE 기본 설정에서 HTTPS 웹 페이지를 캐시하지 않음
    만약에 캐시에 저장되지 않았다면 이러한 데이터를 캐시에서 찾을 수 없다 !

 

- 인터넷 기록

  • IE는 사용자의 기록을 유지해서 매번 브라우저 주소 창에 URL 재입력 안해도 됨
  • INDEX.DAT 파일은 특정 사이트 몇 번 방문했는지, 파일의 이름은 뭔지 등 유지 관리
  • 인터넷 기록은 여러 개의 폴더와 INDEX.DAT 파일로 구성
  • 폴더 이름은 사전에 정해진 이름+시작날짜+마지막날짜
  • 기록 삭제하기 위해 수동 혹은 자동으로 삭제 가능
  • NTUSERS\Software Microsoft\Window\CurrentVersion\Internet Settings\URLHistory -> 설정 20 아니면 의심

NTUSER.DAT 파일

-> 설정과 각 사용자 프로파일을 위한 정보 저장
    브라우저의 기록은 이러한 정보의 일부
    프로파일 당 하나의 NTUSER.DAT 파일 존재
    실제로는 레지스트리 파일이지만 NTUSER.DAT은 사용자 폴더에 저장
    누가 컴퓨터를 사용했는지는 알기 힘들거나 알 수가 없음

 

- 레지스트리에 있는 인터넷 익스플로러의 흔적

  • IE는 특히 NTUSER.DAT에 많은 흔적을 남김
  • 브라우저가 비밀번호를 저장하는지, 디폴트 검색 사이트가 무엇인지, 검색 제공자가 무엇인지
  • 레지스트리는 어떤 URL 입력했는지도 확인 가능
  • 최근 입력한 주소에 1~25 까지 존재, 가장 적은 숫자가 가장 최근
  • 각 항목은 오래된 항목부터 삭제
  • NTUSER\Sofeware\Microsoft\Internet Explorer\Typed URLs

- 메신저 프로그램

  • 많이 사용되는 프로그램 AOL 인스턴트 메신저, 야후 메신저, 윈도우 라이브 메신저 등
  • 메신저 프로그램은 설치여부를 흔적으로 남김
  • 연락처 또는 "친구" 목록을 유지
  • 대화명은 의미 없는 경우로 나와서 추가적인 작업 필요 -> BUT 한 사람이 여러 개의 대화명 가질 수 있음ㅠ.ㅠ
  • 차단 기능 또한 잠재적 흔적으로 존재할 것
  • 로그 기록 기능은 활성화 되어 있다면 엄청나게 중요한 증거로 활용될 것
  • 수동으로 로그 기록을 저장한 것과 활성화 되어있는 것의 차이는 파일의 저장 위치임
  • 영상통화, 파일 전송, 실시간 메세지 등 자동 수락 확인 -> "사실을 몰랐다" 증언의 반박 가능
  • 전화번호와 계정 정보를 함께 엮어 신분 확인 사용

- IRC(Internet Relay Chat)

  • 대규모 채팅 네트워크로서 특정 업체나 단체가 통제하지 않아 감독이 매우 적음
  • 정식 등록 과정이 없기에 거의 완전한 익명성 보장
  • 클라이언트 직접 연결(Direct Client Connection, DCC) 통신 기능은 완전한 사생활 보장 
  • -> 네트워크 서버를 통과하지 않아 아무런 증거 X

- ICQ "I Seek You"

  • 인기 어마무시
  • IRC와 다르게 ICQ는 등록 과정 존재 -> 사용자 식별 번호 또는 UIN(User Identification Number) 부여
  • 대화하기 위해 초청 필수 -> 높은 수준의 프라이버시 유지
  • 중앙 서버로 트래픽을 라우팅하고 있어 서버를 찾을 수 있다면 일부 흔적이 서버에 남아있을 수 있다.

3. 이메일

  • 이메일은 매우 영속성이 강하며 여러 곳에 저장되기 때문에 삭제하기 힘들다.

- 이메일 접속

  • 이메일을 접속하고 관리하는 방법 두 가지
  • 1. 인터넷으로 접속하는 방법으로, 웹 브라우저를 사용
  • 2. 이메일 클라이언트 프로그램을 사용
  • 윈도우에서는 MS의 아웃룩과 윈도우 라이브 메일 많이 사용함
  • 아웃룩은 데이터를 .pst, .ost 파일로, 윈도우 라이브 메일과 아웃룩 익스프레스는 .dbx 사용

- 이메일 프로토콜

  • 이메일은 다양한 프로토콜을 사용하여 이메일은 송수신함
  • 1. 단순 우편전송 규약(Simple Mail Transfer Protocol, SMTP) 
  • -> 이메일 클라이언트가 이메일을 보내거나 서버가 이메일 송수신할 때 사용
  • 2. 우체국 프로토콜(Post Office Protocol, POP) 
  • -> 이메일 클라이언트가 이메일을 받을 때 사용
  • 3. 아이맵(Internet Message Access Protocol, IMAP)
  • -> 양방향 통신 프로토콜로 클라이언트가 서버에 있는 이메일에 접근할 때 사용

- 증거로서의 이메일

  • 이메일에서 수집할 수 있는 증거 : 사건과 관련된 내용의 이메일, 이메일 주소, IP 주소, 날짜와 시간
  • 이메일 수사 시 여러 곳에서 데이터 발견
  • 용의자 컴퓨터, 수신자 컴퓨터, 회사 서버, 백업 매체, 스마트폰, 이메일 전송 경로에 있던 서버 등
  • 이메일의 주요 구성요소는 헤더, 바디 그리고 첨부 파일
  • 헤더 : 송신자가 수신자로 이메일을 보낼 때 거쳤던 경로 정보 기록
  • 바디 : 메세지 자체
  • 첨부 파일은 없을 수도 있음

- 이메일-흔적 지우기

  • 이메일 위조(헤더 제거 및 수정) 또는 가짜 이메일 계정 생성
  • 스푸핑(spoof) : 이메일이 실제로 다른 사람 또는 다른 위치에서 보내진 것처럼 보이게 위조하는 것
  • 스푸핑해주는 소프트웨어는 사생활 보장위해 대부분 로그를 남기지 않음

공동 이메일 계정

-> 이메일을 실제로 보내지 않고 공유 가능함
    익명의 계정을 생성하여 로그인 정보를 다른 사람과 공유하는 것
    "임시 보관함" 폴더에 저장하여 다른 사람이 읽고 난 후 그 메세지를 삭제함
    추척이나 모니터가 거의 불가능하여 주로 테러범이 자주 사용함..

 

- 이메일 추적하기

  • 로그에 크게 의존
  • 이메일 경로에 있는 각 서버는 메세지 헤더에 정보를 추가함
  • 메세지 ID도 추가되는데, 메세지 ID는 이메일 서버가 할당하는 고유 번호
  • 메세지 ID + 서버의 로그의 상관관계 확인 -> 특정 컴퓨터에서 메세지 송수신됨을 증명 가능
  • 서비스 제공 업체는 로그를 주기적 삭제 가능하며, 특히 외국 업체는 수집하기도 어려움 

- 이메일 헤더

  • 발송자가 수신자에게 메시지를 보낼 때 메시지가 사용한 경로를 기록
  • -> 물론, 헤더 수정 및 제거 단계를 거치지 않았다고 가정
  • 이메일 헤더 정보는 아래서 위로 읽어야 함

4. 소셜 네트워크 사이트

  • 소셜 매체 증거는 용의자의 컴퓨터, 스마트폰 그리고 서비스 제공자의 네트워크 등 다양한 곳에서 수집 가능
  • 업체들이 이러한 정보를 특정 기간만 보존하여 이후 삭제될 것..
  • 로컬 컴퓨터에서 증거 복원은 쉽지 않음 
  • 페이지 파일(또는 스웝 공간)에 증거 존재 가능 + INDEX.DAT 파일에도 존재 가능
  • 계정 생성 확인 이메일은 History.IE5\Index.dat 파일에 저장
  • 사용자의 페이스북 프로파일은 Content.IE5\profile[#].htm 파일에 저장
  • History.IE Index.dat 파일은 페이스북 친구 검색 결과가 저장되어 있을 수 있음

5. 요약

  • 인터넷은 두 개(HTTP와 TCP/IP)의 프로토콜을 기반으로 작동함
  • HTML은 웹 페이지를 만드는 데 사용하는 주요 언어
  • HTML 코드에서도 증거 찾을 수 있는 능력 필요함
  • 브라우저가 URL과 DNS를 사용해 어떻게 웹 페이지를 찾고 화면을 보여주는지 살펴봄
  • P2P 네트워크는 불법 음악 및 아동 포르노 공유할 때 사용될 수 있다.
  • 인터넷이나 이메일 사용 시 생성되는 여러 데이터의 흔적
  • -> INDEX.DAT 파일, 임시 인터넷 파일, NTUSER.DAT 파일, 쿠키, 이메일 헤더 등
  • 식별 정보가 제거 및 위조 됐을 가능성이 있기에 이메일의 시발점을 찾는 것은 어렵다
  • 메신저 프로그램이나 관련 로그 발견 시 조사할 가치 있음(물론 기본설정으로 로그 저장 안되어있을 수도 있음)
  • IRC와 ICQ는 범죄자가 흔적 감출 때 사용하는 방법
  • 소셜 네트워크의 증거는 사용자의 컴퓨터나 서비스 제공자의 네트워크에서 수집 가능

 

 

 

< 출처 >

이제 시작이야! 디지털 포렌식 - 존 새몬스 지음

Comments