286. 프로세스·지속성 — 타임스탬프 변조(timestomping) 탐지

changseop lee·2026년 10월 7일

시스템 보안 · 취약점

목록 보기
286/450

시스템 보안 · 취약점 › F. 비정상 프로세스 · 지속성 징후 · 36/50편 (전체 286/450)
학습 단계: 백도어·C2·은닉 징후
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

타임스탬프 변조(timestomping)는 파일의 시간(생성·수정·접근)을 조작해 포렌식 타임라인을 방해하는 anti-forensic 기법입니다. 악성 파일을 오래된 정상 파일처럼 보이게 하거나, 변경 시점을 숨깁니다.

타임스탬프 변조
 touch -t / -r: mtime·atime을 과거로 조작
   touch -r /bin/ls /tmp/.x (정상 파일 시각 복사)
 변조 한계: ctime(inode 변경 시각)은 touch로 못 바꿈
   → mtime < ctime 불일치 = 변조 흔적
 목적: 악성 파일을 오래된 정상 파일로 위장

핵심: mtime/atime vs ctime 불일치로 변조 탐지

리눅스에서 touch는 mtime·atime을 바꾸지만 ctime(inode 변경 시각)은 조작하기 어렵습니다. mtime이 ctime보다 과거면 변조 흔적입니다.

2. 왜 중요한가

  • 타임스탬프 변조는 악성 파일을 오래된 정상 파일로 위장해 타임라인 분석을 방해합니다.
  • ctime은 일반 도구로 조작하기 어려워, mtime<ctime 불일치가 변조 탐지의 단서입니다.
  • 지속성 파일(cron·systemd·바이너리)의 변조는 설치 시점을 숨기려는 신호입니다.

3. 핵심 명령어 / 설정

변조 신호의미탐지
touch -t/-r시각 조작명령 감사
mtime < ctime변조 흔적메타데이터 비교
오래된 악성 파일위장해시·내용 대조
일괄 동일 시각대량 변조패턴
정상 시각정상정상

4. 실습 (실습 예시)

# 타임스탬프 변조 탐지 (분석 방법)
# touch로 시각 조작 명령
sudo ausearch -k proc_exec -i --start recent 2>/dev/null | grep -E 'proctitle=.*touch\s+.*(-t|-r|-d)' | tail
# mtime < ctime 불일치(변조 흔적) — 의심 경로
sudo find /tmp /dev/shm /etc -type f -newerct '2020-01-01' 2>/dev/null | while read f; do m=$(stat -c %Y "$f"); c=$(stat -c %Z "$f"); [ "$m" -lt "$c" ] && echo "변조의심(mtime<ctime): $f"; done 2>/dev/null | head

5. 정상 상태

$ (touch 조작) (없음 또는 정상 빌드)
$ (mtime<ctime) (없음)

touch 시각 조작 명령이 없고, mtime<ctime 불일치 파일이 없는 상태가 정상입니다.

6. 이상 상태

$ (touch 조작)
04:23 proctitle="touch -r /bin/ls /tmp/.x"
$ (mtime<ctime)
변조의심(mtime<ctime): /tmp/.x
변조의심(mtime<ctime): /etc/cron.d/0hourly-x
  • touch -r /bin/ls /tmp/.x → 악성 파일을 ls와 같은 오래된 시각으로 위장
  • /tmp/.x·cron 파일의 mtime<ctime → 변조 흔적(최근 생성인데 시각은 과거)
  • touch 조작+메타데이터 불일치 → 타임스탬프 변조 → 정탐

7. 로그 분석 (분석 방법)

타임스탬프 변조 분석입니다(가상의 예시).

[변조] touch -r /bin/ls /tmp/.x
   → /tmp/.x의 mtime을 /bin/ls(오래됨)로 복사
   ↓
[흔적] ctime은 못 바꿈(실제 생성·변경 시각 유지)
   mtime=2019(위장) < ctime=2026(실제) → 불일치
   ↓
[탐지] mtime<ctime으로 변조 식별
   → 실제 설치 시점(ctime)으로 타임라인 재구성
시각변조 후
mtime2019(위장)
ctime2026(실제)
불일치변조 증거

ctime이 조작되지 않아 실제 시점을 드러내고, mtime<ctime이 변조를 증명합니다.

8. SOC 관제 포인트

  • 타임스탬프 변조(timestomping)는 파일 시각을 조작해 타임라인 분석을 방해하는 anti-forensic입니다.
  • ctime은 조작이 어려워, mtime<ctime 불일치가 변조 탐지의 핵심 단서입니다.
  • 지속성 파일의 변조는 설치 시점 은닉 신호로, ctime으로 실제 시점을 재구성합니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_f,anti_forensic,">
  <rule id="105350" level="11">
    <if_sid>105010</if_sid>
    <field name="audit.proctitle" type="pcre2">touch\s+.*(-r|-t|-d|--reference|--date).*(/tmp/|/etc/|/dev/shm/|/var/)</field>
    <description>타임스탬프 변조(touch로 파일 시각 조작)</description>
    <mitre><id>T1070.006</id></mitre>
  </rule>
</group>

mtime<ctime 불일치는 주기 점검·FIM으로 탐지합니다. FIM은 ctime도 추적해 변조 후에도 실제 변경을 포착합니다.

10. 대응 방법

  1. 초기 확인 — touch 시각 조작 명령·대상·주체를 확인합니다.
  2. 범위 확인 — mtime<ctime 불일치·오래된 악성 파일·일괄 변조를 확인합니다.
  3. 증거 확보 — 변조 명령·메타데이터(ctime)·대상 파일을 보존합니다.
  4. 차단/조치 — 변조 정탐이면 ctime으로 실제 시점 재구성·타임라인 보정·관련 파일 조사를 진행합니다.
  5. 재발 방지 — touch 감사+메타데이터 불일치 기반 변조 탐지를 운영합니다.

11. 핵심 정리

변조 신호탐지
touch -t/-r명령 감사
mtime < ctime메타데이터 비교
오래된 악성 파일해시·내용 대조
일괄 동일 시각패턴
면접 포인트"timestomping은 mtime 조작 — ctime은 못 바꿈, mtime<ctime 불일치로 탐지"

12. 다음 편 예고

다음 편 287. 프로세스·지속성 — 은닉 파일·디렉터리 탐지 에서는 은닉 파일·디렉터리를 다루는 은닉 파일·디렉터리 탐지를 다룹니다.


이전 편: 285. 프로세스·지속성 — 로그·흔적 삭제(anti-forensic) 탐지
📚 시리즈 전체 보기: 시스템 보안 · 취약점

profile
코드에 숨겨진 위협을 읽고 AI로 보안의 미래를 설계합니다. 프론트엔드 개발 경험을 자산 삼아 더 견고하고 지능적인 보안 운영 시스템을 구축해 나가는 과정을 기록합니다

0개의 댓글