380. 방어 회피·흔적 삭제 — 파일명·확장자 위장 탐지

changseop lee·5일 전

시스템 보안 · 취약점

목록 보기
380/450

시스템 보안 · 취약점 › H. 방어 회피 · 흔적 삭제 징후 · 30/50편 (전체 380/450)
학습 단계: 위장·난독화·흔적 분석
실습 표기: 이 글의 명령어·출력·로그는 로컬 VMware 테스트 VM(Rocky Linux 9 / Ubuntu 22.04) 기준의 「실습 예시」이며, IP·계정·호스트명은 가상의 값입니다.

선행 학습

1. 개념

공격자는 악성 파일을 정상 파일명·확장자로 위장합니다. Linux는 확장자가 아닌 실제 내용으로 실행되므로, 이름과 실제 파일 유형(file 명령)이 불일치합니다. 유니코드·이중 확장자·공백 트릭도 쓰입니다.

파일명·확장자 위장 기법
 확장자 위장: payload.jpg(실제는 ELF 실행 파일)
 이중 확장자: invoice.pdf.sh
 유니코드 트릭: RTL 오버라이드로 이름 역전
 정상명 사칭: libssl.so 흉내(실제 악성)
 특징: 이름·확장자 vs 실제 파일 유형(magic) 불일치

탐지: file 명령 유형 vs 확장자, 실행 가능 비정상 파일

핵심은 "확장자와 실제 내용이 다른 것"입니다. file 명령으로 매직 바이트를 확인하면 .jpg인데 ELF 실행 파일 같은 위장이 드러납니다.

2. 왜 중요한가

  • Linux는 확장자가 아닌 내용으로 실행되므로 확장자 위장이 쉽습니다.
  • .jpg·.pdf처럼 보이는 실행 파일(ELF)은 사용자·분석가를 속입니다.
  • file 명령의 실제 유형과 확장자 불일치가 위장 탐지의 핵심입니다.

3. 핵심 명령어 / 설정

위장예단서
확장자 위장.jpg = ELFfile 유형 불일치
이중 확장자.pdf.sh실행 가능
유니코드RTL 역전이름 디코딩
라이브러리 사칭libX.so 흉내서명·경로
정상유형=확장자일치

4. 실습 (실습 예시)

# 파일명·확장자 위장 탐지 (분석 방법)
# 확장자 vs 실제 유형 불일치(이미지·문서인데 실행 파일)
for f in $(find /tmp /home /var/tmp -type f \( -name '*.jpg' -o -name '*.pdf' -o -name '*.png' -o -name '*.txt' \) 2>/dev/null | head); do file "$f" 2>/dev/null | grep -E 'ELF|executable|script' && echo "위장: $f"; done
# 실행 권한 있는 비정상 확장자 파일
sudo find /tmp /dev/shm -type f -perm -u+x \( -name '*.jpg' -o -name '*.png' -o -name '*.pdf' \) 2>/dev/null | head

5. 정상 상태

$ (확장자 vs 유형) 일치(.jpg=이미지, .pdf=문서)
$ (실행 가능 이미지) (없음)

파일 확장자와 실제 유형이 일치하고, 이미지·문서 확장자에 실행 권한·실행 코드가 없는 상태가 정상입니다.

6. 이상 상태

$ (확장자 vs 유형)
/tmp/photo.jpg: ELF 64-bit LSB executable (실행 파일!)
/home/user/invoice.pdf.sh: Bourne shell script
$ (실행 가능 이미지)
/dev/shm/logo.png (실행 권한 + ELF)
  • photo.jpg가 ELF 실행 파일 → 확장자 위장
  • invoice.pdf.sh → 이중 확장자(PDF처럼 보이나 스크립트)
  • 확장자-유형 불일치 + 실행 권한 → 파일 위장 → 정탐

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

파일명·확장자 위장 분석입니다(가상의 예시).

[공격자] 악성 ELF 실행 파일
   이름을 photo.jpg로 변경 (이미지처럼 위장)
      ↕ (탐지)
[분석가]
 확장자: .jpg (이미지처럼 보임)
 file photo.jpg → ELF executable (실체 노출)
 실행 권한 존재 (이미지는 실행 권한 불필요)
   ↓
= 확장자는 속여도 매직 바이트(file)가 실체 → 정탐
관점위장실체
확장자.jpg이미지인 척
file 유형—ELF 실행
실행 권한—+x(비정상)

확장자 vs file 유형 교차가 파일 위장 탐지의 핵심입니다.

8. SOC 관제 포인트

  • 파일명·확장자 위장은 악성 파일을 정상 확장자·이름으로 꾸며 사용자·분석가를 속입니다.
  • Linux는 내용으로 실행되므로 .jpg·.pdf처럼 보이는 실행 파일이 가능합니다.
  • file 명령의 실제 유형 vs 확장자 불일치·실행 권한이 위장 탐지의 핵심입니다.

9. 탐지 규칙

<!-- 실습 예시 룰: 적용 전 wazuh-logtest 및 테스트 환경 검증 필요 -->
<group name="local,syssec_h,defense_evasion,">
  <rule id="107290" level="12">
    <if_sid>107000</if_sid>
    <field name="audit.exe" type="pcre2">\.(jpg|jpeg|png|gif|pdf|txt|doc|csv)$</field>
    <description>이미지·문서 확장자 파일의 실행(확장자 위장)</description>
    <mitre><id>T1036.008</id><id>T1036.005</id></mitre>
  </rule>
</group>

실행된 파일의 확장자와 실제 유형을 대조합니다. 이미지·문서 확장자 파일의 실행은 확장자 위장으로 높은 레벨 경보합니다.

10. 대응 방법

  1. 초기 확인 — 파일 확장자 vs file 실제 유형 불일치를 확인합니다.
  2. 범위 확인 — 이중 확장자·유니코드 트릭·실행 권한 있는 이미지/문서를 확인합니다.
  3. 증거 확보 — 위장 파일·유형 분석·실행 이벤트를 보존합니다.
  4. 차단/조치 — 파일 위장 정탐이면 실제 유형 분석·악성 여부 검사·전파 경로 조사를 진행합니다.
  5. 재발 방지 — 파일명·확장자 위장 탐지를 운영합니다.

11. 핵심 정리

위장예
확장자 위장.jpg = ELF
이중 확장자.pdf.sh
유니코드RTL 역전
라이브러리 사칭libX.so 흉내
면접 포인트"Linux는 내용으로 실행 — 확장자 vs file 유형 불일치가 위장 신호"

12. 다음 편 예고

다음 편 381. 방어 회피·흔적 삭제 — 경로·위치 위장 탐지 에서는 경로·위치 위장을 다루는 경로·위치 위장 탐지를 다룹니다.


이전 편: 379. 방어 회피·흔적 삭제 — 정상 프로세스 위장(masquerading) 탐지
📚 시리즈 전체 보기: 시스템 보안 · 취약점

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

0개의 댓글