받은 파일, 확장자만 믿어도 될까요? File Extension Mismatch Checker

파일 이름이 .pdf나 .png로 끝나도 내용까지 그 형식이라는 뜻은 아니에요. 확장자를 표시한 뒤 파일명, 예상한 업무 맥락, 파일 내부 형식 신호를 함께 확인해야 합니다. 아래 File Extension Mismatch Checker(파일 확장자 불일치 점검기) 순서대로 점검해 보세요.

1분 자가 점검

  • 파일 탐색기에서 보기 → 표시 → 파일 확장명을 켰나요?
  • 견적서.pdf.exe처럼 확장자가 둘 이상이거나 마지막 확장자가 실행형인가요?
  • 보낸 사람과 업무 맥락이 예상한 파일 종류와 맞나요?
  • 확장자·콘텐츠 형식·내부 서명 가운데 하나라도 다르면 열지 않고 담당자에게 확인했나요?

1. 확장자가 왜 파일의 정체를 보장하지 않나요?

Microsoft는 확장자를 바꿔도 파일이 다른 형식으로 변환되지는 않는다고 안내해요. 이름만 photo.png로 바꾼 실행 파일은 PNG가 되지 않습니다.

MITRE ATT&CK은 이중 확장자 위장을 T1036.007로 분류해요. File.txt.exe처럼 앞쪽 확장자는 문서처럼 보이지만 마지막 확장자가 실행 방식을 정하는 기법입니다.

2. 무엇을 어떤 순서로 확인하나요?

  1. 확장자를 보이게 합니다. Windows 파일 탐색기에서 보기 → 표시 → 파일 확장명을 켭니다.
  2. 마지막 확장자를 읽습니다. invoice.pdf.exe의 실제 마지막 확장자는 .exe예요. 아이콘이나 앞쪽 .pdf만 보지 않습니다.
  3. 업무 맥락을 대조합니다. 이미지 요청에 실행 파일이 왔거나, 평소 없던 매크로 문서가 왔다면 별도 연락처로 확인합니다.
  4. 조직의 검사 결과를 봅니다. 확장자, Content-Type, 파일 서명을 한 신호처럼 합쳐 판정하지 말고 서로 대조합니다.
  5. 어긋나면 열지 않습니다. 이름을 바꿔 시험하지 말고 원본을 보존한 채 보안 담당자나 발신자에게 확인합니다.

3. 확장자·Content-Type·파일 서명은 무엇이 다른가요?

확인 신호 알려 주는 내용 남는 한계
파일 확장자 운영체제와 사용자가 기대하는 파일 종류 이름만 바꿀 수 있어 단독 판정에 약함
Content-Type(MIME) 전송 과정에서 표시한 미디어 형식 보내는 쪽이 지정하므로 위조되거나 틀릴 수 있음
파일 서명 파일 앞부분 등 내부 바이트의 형식 특징 단독 검사도 우회될 수 있어 다른 검사와 함께 써야 함
업무 맥락 누가 왜 어떤 파일을 보냈는지 계정 탈취나 내부자 위험까지 자동 판정하지 못함

OWASP는 업로드 검증에서 필요한 확장자만 허용하고, Content-Type을 신뢰하지 말며, 파일 서명 검사를 함께 쓰라고 권고해요. 서명 검사도 단독 방어로 쓰지 말라고 한계를 분명히 둡니다.

4. 불일치가 보이면 어떻게 조치하나요?

  • 파일을 열거나 이름을 바꾸지 않습니다.
  • 메신저·메일과 다른 연락 경로로 발신자에게 파일 종류를 확인합니다.
  • 회사 장비라면 원본 파일과 수신 시각을 보존하고 내부 신고 절차를 따릅니다.
  • 업로드 서비스를 운영한다면 허용 확장자 목록, Content-Type 보조 검사, 파일 서명, 악성코드 검사, 저장 위치 분리를 겹쳐 적용합니다.
  • 압축 파일은 내부 파일 종류를 따로 확인합니다. 확장자 하나만 보고 묶음 전체를 신뢰하지 않습니다.

5. 이 체크리스트가 안전을 보장하나요?

아니에요. 이 점검을 통과해도 안전하다는 뜻은 아닙니다. 확장자와 파일 서명이 맞는 악성 문서, 정상 계정에서 온 위험 파일, 새 취약점을 이용한 파일은 남을 수 있어요. 의심 파일은 격리된 분석 환경과 조직의 보안 절차로 확인해야 합니다.

락게이트코어 보안 글 더 보기

공식 참고자료

댓글