목록HTTP (6)
탐구개발
웹 페이지의 보안을 강화하기 위해 사용되는 HTTP 응답 헤더. 웹 애플리케이션에서 실행되는 스크립트, 스타일, 이미지, 폰트 등의 리소스의 소스를 명시적으로 지정하여 악의적인 스크립트 삽입(예: XSS 공격)과 같은 보안 취약점을 예방 MDN 문서 Content-Security-Policy - HTTP | MDN The HTTP Content-Security-Policy response header allows website administrators to control resources the user agent is allowed to load for a given page. With a few exceptions, policies mostly involve specifying server orig..

교차 출처 리소스 공유 흐름도 교차 출처 리소스 공유 흐름은 simple cross-origin request와 프리플라이트 요청을 수반하는 actual request 이렇게 두 종류가 있습니다. 각 요청을 분류하는 과정을 아래 흐름도에 나타냈습니다. 참고 1 : 통신 내용 단순 기준? simple cross-origin request가 되는 조건은 다음과 같습니다. HTTP 요청 메서드가 단순 메서드 (GET, POST, HEAD 중 하나) 헤더가 모드 심플 헤더 (Accept, Accept-Language, Content-Language, Content-Type이외는 제외) Content-Type이 있을 경우 그 값이 application/x-www-form-urlencoded, multipart/..

기본개념 1. HTTPS, SSL, TLS SSL은 원래 넷스케이프(Netscape)에서 개발된 보안 프로토콜로, 1995년에 최초 버전인 SSL 1.0이 발표되었습니다. 그러나 SSL 1.0과 SSL 2.0은 보안 취약점이 존재하여 실제로는 널리 사용되지 않았습니다. 이후 SSL 3.0이 개발되어 1996년에 발표되었고, 상대적으로 안전하며 일반적으로 사용되었습니다. 그러나 SSL 3.0도 보안 취약점이 발견되어 안전하지 않은 것으로 인식되었습니다. 그 후 SSL의 기반을 유지하면서 새로운 프로토콜인 TLS가 개발되었습니다. TLS는 1999년에 최초 버전인 TLS 1.0이 발표되었고, 이후 TLS 1.1, TLS 1.2, TLS 1.3 등의 버전이 발표되었습니다. TLS는 SSL과 기능적으로 거의 동..
Referer 헤더는 웹 브라우저나 사용자 에이전트가 한 웹 페이지에서 다른 웹 페이지로 이동할 때 웹 서버에게 전송하는 HTTP 헤더 필드입니다. Referer 헤더의 목적은 웹 서버에게 현재 페이지에 도달하기 전 사용자가 있던 웹 페이지의 URL을 알려주는 것입니다. 다시 말해, 현재 페이지로 유저를 이끌어 온 웹 페이지의 URL을 포함하고 있습니다. 이 정보는 분석, 트래픽 출처 추적, 마케팅 캠페인의 효과 측정 등 다양한 목적으로 유용하게 사용될 수 있습니다. 개인정보 침해 우려, 전체 URL를 포함할 경우 query에 민감정보가 포함되어 있으면 보안문제도 생기기 때문에 전송하지 않는 경우도 많습니다. 사용되는 지시자로 no-referrer, origin, strict-origin가 있습니다. 이..
Cache-Control 헤더는 웹 서버 또는 클라이언트가 웹 리소스의 캐싱 동작을 제어하기 위해 사용되는 HTTP 헤더입니다. 이 헤더는 웹 브라우저와 웹 서버 사이의 통신에서 캐싱 동작을 조정하여 웹 페이지의 성능과 성능 개선을 위해 사용됩니다. 사용되는 지시자로 public, no-store, max-age, must-revalidate가 있습니다. 이 지시자들을 분류해서 정리해보았습니다. Cache-Control 예시 Cache-Control: no-cache, must-revalidate Cache-Control: no-store Cache-Control: public, max-age=3600 응답헤더값 공유 캐시 / 개인 캐시 여부 public : 같은 컴퓨터를 사용하는 복수의 사용자간 캐시 ..
HTTP 상태코드 300번대는 리다이렉션(redirect)과 관련된 상태 코드입니다. 이들 상태 코드는 클라이언트가 요청한 리소스가 다른 위치에 있을 때 사용되며, 클라이언트를 새로운 URL로 리다이렉트 하거나 다른 리소스로 이동시키는 데 사용됩니다. 그 중 301, 302, 303, 307, 308는 설명을 봐도 비슷한 내용이어서 잘 이해되지 않았습니다. 그래서 이 301, 302, 303, 307, 308의 차이점을 정리해 보았습니다. 리다이렉션 상태코드 비교 위치 변경 캐시 여부 메서드 변경 301 Moved Permanently 영구적 O O 302 Found 일시적 지시 O 303 See Other 영구적 X 허가 307 Temporary Redirect 일시적 지시 308 Moved Perma..