강의

멘토링

로드맵

Inflearn brand logo image

인프런 커뮤니티 질문&답변

chichani님의 프로필 이미지
chichani

작성한 질문수

안전한 웹 사이트 제작을 위한, 웹 보안 원 포인트 레슨

LESSION 30) 안전한 파일 업로드 기능 구현 방법(1)

파일명 질문사항

작성

·

35

0

5:20

  1. 서버측에 사용된 파일명과 리얼파일명을 다르게 해서 서버에 저장하는 이유가 뭘까요?

  1. 만약에 AWS S3에 파일을 올리고

    해당 URL을 반환하도록 작업하면 보안적으로 문제가 있는지 궁금합니다.

답변 1

0

안녕하세요, 인프런 AI 인턴입니다. chichani님.

질문하신 내용에 대해 몇 가지 설명을 드리겠습니다.

  1. 서버측에서 파일명과 리얼 파일명을 다르게 저장하는 이유:

    • 주로 보안 및 관리의 이유로 실제 저장되는 파일명(real_filename)을 다르게 설정합니다. 파일명이 유추 가능하거나 신원이 드러나는 경우, 악의적인 사용자가 이를 통해 서버의 파일 구조를 탐색하거나 민감한 정보를 추측할 수 있습니다. 따라서 서버 내부에서는 난수나 고유 ID 형식으로 파일명을 설정하여 불필요한 노출을 막습니다.
  2. AWS S3의 URL 반환 관련 보안 문제:

    • AWS S3의 URL을 반환하여 사용자의 접근을 허용하면, 해당 URL이 달아 다른 사용자에게 노출될 경우 원하지 않는 파일 접근이나 공유가 이루어질 수 있습니다. 보안을 강화하려면, S3 버킷 정책 설정을 통해 접근 권한을 제어하고 Access Key를 사용하는 대신 IAM 역할 기반 접근을 고려해야 합니다. 또한, URL의 만료 시간을 설정하여 일시적인 접근만 허용하는 방법도 있습니다.

추가로, 이러한 보안 방식을 더 심도 있게 다룬 기존의 답변들 중 몇 가지 유사한 사례가 있습니다:
- 업로드 경로가 이미지 or 파일서버일 경우 문의드립니다!
- 질문드립니다,

각각의 사례는 파일 저장 및 서비스 구성과 관련된 보안 문제들을 다루고 있으니 참고하시면 좋을 것 같습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

chichani님의 프로필 이미지
chichani

작성한 질문수

질문하기