받은 파일, 확장자만 믿어도 될까요? 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. 무엇을 어떤 순서로 확인하나요?
- 확장자를 보이게 합니다. Windows 파일 탐색기에서
보기 → 표시 → 파일 확장명을 켭니다. - 마지막 확장자를 읽습니다.
invoice.pdf.exe의 실제 마지막 확장자는.exe예요. 아이콘이나 앞쪽.pdf만 보지 않습니다. - 업무 맥락을 대조합니다. 이미지 요청에 실행 파일이 왔거나, 평소 없던 매크로 문서가 왔다면 별도 연락처로 확인합니다.
- 조직의 검사 결과를 봅니다. 확장자, Content-Type, 파일 서명을 한 신호처럼 합쳐 판정하지 말고 서로 대조합니다.
- 어긋나면 열지 않습니다. 이름을 바꿔 시험하지 말고 원본을 보존한 채 보안 담당자나 발신자에게 확인합니다.
3. 확장자·Content-Type·파일 서명은 무엇이 다른가요?
| 확인 신호 | 알려 주는 내용 | 남는 한계 |
|---|---|---|
| 파일 확장자 | 운영체제와 사용자가 기대하는 파일 종류 | 이름만 바꿀 수 있어 단독 판정에 약함 |
| Content-Type(MIME) | 전송 과정에서 표시한 미디어 형식 | 보내는 쪽이 지정하므로 위조되거나 틀릴 수 있음 |
| 파일 서명 | 파일 앞부분 등 내부 바이트의 형식 특징 | 단독 검사도 우회될 수 있어 다른 검사와 함께 써야 함 |
| 업무 맥락 | 누가 왜 어떤 파일을 보냈는지 | 계정 탈취나 내부자 위험까지 자동 판정하지 못함 |
OWASP는 업로드 검증에서 필요한 확장자만 허용하고, Content-Type을 신뢰하지 말며, 파일 서명 검사를 함께 쓰라고 권고해요. 서명 검사도 단독 방어로 쓰지 말라고 한계를 분명히 둡니다.
4. 불일치가 보이면 어떻게 조치하나요?
- 파일을 열거나 이름을 바꾸지 않습니다.
- 메신저·메일과 다른 연락 경로로 발신자에게 파일 종류를 확인합니다.
- 회사 장비라면 원본 파일과 수신 시각을 보존하고 내부 신고 절차를 따릅니다.
- 업로드 서비스를 운영한다면 허용 확장자 목록, Content-Type 보조 검사, 파일 서명, 악성코드 검사, 저장 위치 분리를 겹쳐 적용합니다.
- 압축 파일은 내부 파일 종류를 따로 확인합니다. 확장자 하나만 보고 묶음 전체를 신뢰하지 않습니다.
5. 이 체크리스트가 안전을 보장하나요?
아니에요. 이 점검을 통과해도 안전하다는 뜻은 아닙니다. 확장자와 파일 서명이 맞는 악성 문서, 정상 계정에서 온 위험 파일, 새 취약점을 이용한 파일은 남을 수 있어요. 의심 파일은 격리된 분석 환경과 조직의 보안 절차로 확인해야 합니다.


댓글
댓글 쓰기