디지털 포렌식 관점에서 본 삭제된 메시지 복원의 기술적 원리와 법적 효력

서론 – “복구”라는 단어가 가진 모호함

“삭제된 데이터를 복구한다”는 말은 일반인에게는 하나의 개념처럼 들리지만, 실제 기술적 맥락에서는 완전히 다른 여러 층위의 작업을 의미합니다. 파일 시스템 레벨의 언델리트(undelete), 데이터베이스 내부 레코드 복원, 스토리지 저수준 이미징을 통한 물리적 복구 – 이 세 가지는 사용하는 도구도, 성공률도, 법적 효력도 전혀 다릅니다.

이 글에서는 카카오톡 같은 메신저 데이터가 실제로 어떻게 저장되고 삭제되는지, 그리고 전문 포렌식 분석이 어떻게 이를 되살려내는지를 기술적 관점에서 정리해 봅니다.

1. 카카오톡 데이터의 저장 구조

카카오톡은 내부적으로 SQLite 기반의 관계형 데이터베이스를 사용합니다. 안드로이드에서는 KakaoTalk.db 라는 파일명이 일반적이며, iOS에서도 유사한 구조의 DB 파일이 앱 샌드박스 내부에 존재합니다.

메시지·사진·영상·첨부파일·통화기록은 다음과 같이 분산 저장됩니다:

  • 메타데이터와 메시지 본문: DB 파일 내 테이블에 레코드 형태로 저장
  • 미디어 파일: 별도의 파일 시스템 영역에 저장되고, DB에는 경로(path)만 기록
  • 캐시 및 썸네일: 별도 캐시 디렉터리에 저장

이런 구조 때문에, 메시지 하나가 “완전히 사라지려면” DB 레코드·파일 시스템 엔트리·실제 파일 블록이 전부 덮어씌워져야 합니다. 실제로는 이 중 일부만 지워진 상태로 남아 있는 경우가 대부분이며, 여기에 복원의 가능성이 열립니다.

2. “삭제”의 기술적 실체

사용자가 메시지를 삭제할 때 내부적으로 일어나는 일은 다음과 같습니다:

  1. DB에서 해당 레코드가 DELETE 쿼리로 제거됨
  2. SQLite 내부에서는 해당 페이지를 프리 리스트(free list)에 반환만 함
  3. 파일 시스템은 파일 엔트리를 제거하거나 링크 카운트만 감소시킴
  4. 실제 디스크 블록의 0/1 데이터는 그대로 존재

즉, “삭제는 사실상 인덱스 삭제에 불과”합니다. 새로운 쓰기 작업이 해당 영역을 덮어쓰기 전까지는 데이터가 물리적으로 남아 있습니다. 디지털 포렌식은 이 원리를 활용해 삭제된 데이터를 복원합니다.

3. 포렌식 복원 프로세스의 단계별 구성

① 저수준 이미징 (Bit-by-bit Imaging)

가장 먼저, 대상 기기의 스토리지를 비트 단위로 복제합니다. 원본을 직접 다루지 않고 이미지 파일에서만 작업하므로 원본 무결성이 보존됩니다. 이 단계에서 해시값(SHA-256 등)을 생성해 이후 분석 결과의 신뢰성을 증명합니다.

② 카빙(Carving)

파일 시스템 메타데이터 없이도 시그니처(파일 매직 넘버)를 기반으로 데이터를 재조립하는 기법입니다. JPEG·MP4·SQLite 페이지 등 알려진 포맷을 찾아내 복원합니다.

③ 데이터베이스 심층 분석

SQLite의 프리 페이지·롤백 저널(journal)·WAL(Write-Ahead Log) 영역까지 분석합니다. 이곳에는 삭제 직전의 트랜잭션 기록이 남아 있어 이미 지워진 메시지를 시간순으로 재구성할 수 있습니다.

④ 슬랙 스페이스·프리 블록 분석

파일 크기가 블록 크기에 딱 맞지 않을 때 남는 여분 공간(슬랙)과, 삭제 후 재할당되지 않은 프리 블록을 전수 스캔합니다. 여기서 원본 대화 조각이 나오는 경우가 의외로 많습니다.

⑤ 결과 통합 및 보고

복원된 메시지들을 타임라인 순으로 정렬하고, 각 데이터의 추출 경로·해시값·신뢰도를 기록한 감정서를 작성합니다.

4. 일반 복구 앱과 포렌식 분석의 차이

시중 복구 앱 대부분은 운영체제가 제공하는 표준 API 를 통해서만 데이터에 접근합니다. 이는 사용자 권한 수준에서 볼 수 있는 영역만 다루는 것이며, 슬랙 스페이스·프리 블록·암호화된 파티션 등에는 손을 댈 수 없습니다.

반면 전문 포렌식 분석은 다음 요소가 결합됩니다:

  • 전용 하드웨어: JTAG, ISP, Chip-off 등 물리적 접근 장비
  • 라이선스 소프트웨어: Cellebrite UFED, MSAB XRY, Oxygen Forensic 등
  • 전문 인력: 데이터베이스 내부 구조와 파일 시스템에 대한 깊은 이해

이런 환경에서 진행된 카카오톡 복구 작업은 일반 앱으로 불가능한 결과를 냅니다. 특히 공장초기화 이후에도 수십~수백%의 데이터가 복원되는 경우가 실제로 존재합니다.

5. 법적 효력 – 왜 “감정서”가 중요한가

민사·형사 소송에서 디지털 증거를 제출할 때는 증거능력(Admissibility)증명력(Probative Value) 이 모두 문제가 됩니다. 단순 화면 캡처는 다음과 같은 이유로 약한 증거로 취급되기 쉽습니다:

  • 캡처 시점의 메타데이터 부재
  • 조작 가능성 (위·변조 여부 검증 불가)
  • 원본과의 동일성 증명 곤란

반면 포렌식 감정서에는 다음이 포함됩니다:

  • 원본 기기 식별 정보
  • 이미징 과정과 해시값 기록
  • 복원 과정의 로그
  • 감정인(전문가)의 서명과 자격

이 문서는 법원에서 객관적인 제3자 증거로 취급될 가능성이 훨씬 높습니다. 최근에는 재판부가 카톡 관련 증거에 대해 감정서 첨부를 권고하는 사례도 늘고 있습니다.

6. 복구를 고려할 때 반드시 알아야 할 사항

① 시간이 성공률의 전부

삭제 즉시 기기 사용을 멈추는 것이 가장 중요합니다. 촬영·메신저 사용·앱 설치 – 어떤 쓰기 작업이든 기존 데이터 위를 덮어쓸 수 있습니다.

② 공장초기화도 포기 대상이 아니다

공장초기화는 사용자 관점에서 “모든 것을 지우는 행위”로 보이지만, 실제로는 일부 암호화 키만 제거하거나 인덱스를 초기화하는 수준에 그치는 경우가 많습니다. 기기와 OS에 따라 복원 가능 범위가 다르므로 사전 진단이 필요합니다.

③ 전문 업체 선정 기준

  • 디지털포렌식 관련 자격(DFCP, CFCE 등) 보유 인력
  • 라이선스 장비 보유 여부
  • 감정서 발급 이력
  • 상담 및 진단 절차의 투명성

결론

“삭제됐다”는 상태는 기술적 관점에서 “접근이 어려워진 상태”일 뿐, “완전히 사라진 상태”를 의미하지 않습니다. 적절한 장비와 전문 인력, 그리고 올바른 절차가 결합되면 대부분의 카톡 데이터는 되살릴 수 있고, 이 결과물은 법적 증거로도 충분히 기능합니다.

다만 시간이 지날수록 덮어쓰기 가능성이 커지므로, 복원이 필요한 상황이라면 가능한 한 빠른 시점에 전문 기관에 상담을 요청하는 것이 모든 면에서 합리적입니다. 기술적 한계보다 중요한 건 “얼마나 빨리 올바른 판단을 내리느냐” 입니다.