타임라인 분석
파일 시각 하나를 사실로 받아들이지 않고, 여러 기록의 생성 원리와 시간대를 맞춰 사건의 흐름을 재구성하는 방법을 설명합니다.
시계부터 맞추는 이유
분석 화면에 오전 9시 12분이라는 시각이 보입니다. 저는 그 숫자를 곧바로 사건 시각으로 쓰지 않습니다. 운영체제의 시간대, 서버의 표준시 설정, 모바일 앱의 저장 방식부터 확인합니다. 같은 행위도 PC에는 현지 시각으로, 서버에는 협정세계시로, 내보낸 보고서에는 다시 변환된 시각으로 남을 수 있기 때문입니다.
타임라인 분석은 기록을 시간순으로 정렬하는 작업처럼 보이지만, 실제로는 각 시각이 무엇을 뜻하는지 해석하는 일에 가깝습니다. 파일의 생성 시각, 수정 시각, 접근 시각은 서로 다른 사건을 가리킵니다. 복사나 압축 해제 과정에서 일부 시각이 새로 만들어지기도 합니다.
한 줄의 기록은 한 가지 설명만 허용하지 않습니다
파일이 특정 시각에 수정되었다는 사실만으로 누가 내용을 바꾸었다고 단정할 수는 없습니다. 프로그램의 자동 저장, 동기화, 백업 복원도 같은 흔적을 남깁니다. 저는 파일 시스템 기록을 로그인 이력, 프로그램 실행 기록, 외부 저장매체 연결 기록과 함께 놓고 봅니다. 서로 독립된 기록이 같은 흐름을 가리킬 때 설명의 힘이 생깁니다.
반대로 기록 사이에 어긋남이 있으면 오류로 지우지 않습니다. 시스템 시계가 바뀌었거나, 가상 환경과 실제 장비의 시간이 달랐거나, 수집 이후 파일이 다른 위치로 복사되었을 가능성을 검토합니다. 불일치는 종종 분석의 출발점이 됩니다.
보고서에는 사실과 해석을 나누어 적습니다
저는 확인된 시각과 그 시각에서 추정한 행위를 분리해 씁니다. 예를 들어 '외장 저장매체가 연결되었다'는 기록과 '해당 파일이 외부로 반출되었다'는 판단은 같은 문장이 아닙니다. 파일 접근과 복사를 잇는 추가 흔적이 있어야 두 사실을 연결할 수 있습니다.
좋은 타임라인은 빈칸도 보여 줍니다. 로그 보존기간이 지나 확인할 수 없는 구간, 시간대 변환이 불확실한 기록, 자동화된 동작과 사용자의 동작을 구분하기 어려운 부분을 표시합니다. 사건의 흐름을 매끄럽게 만드는 것보다 어디까지 확인했는지를 정확히 밝히는 편이 낫습니다.
실무에서 확인할 항목
- 기기와 서버의 시간대 및 시계 오차
- 각 타임스탬프의 생성 주체와 변경 조건
- 독립된 기록 사이의 교차 확인
- 확인 사실, 추정, 확인 불가의 구분

