Defaults.Exposed › 수정 › Referrer-Policy
Referrer-Policy 수정 방법
Referrer-Policy는 웹사이트가 모든 방문자의 브라우저에 전달하는 한 줄의 지시로, 방문자가 다른 사이트로 이동하는 링크를 클릭할 때 귀사 웹 주소의 얼마나 많은 정보가 함께 전달될지 제어합니다. 이 설정이 없으면 방문자가 있던 페이지의 전체 주소 — 검색어, 계정 번호, 재설정 링크, 내부 페이지 경로 등 — 가 다음 방문 사이트에 자동으로 전달됩니다.
비즈니스에 미치는 핵심 영향: 방문자가 외부 링크, 광고, 또는 공유 리소스를 클릭할 때마다 브라우저가 귀사 페이지의 전체 주소를 목적지에 넘길 수 있습니다. 그 주소에 검색 쿼리, 고객 ID, 주문 번호, 또는 일회성 링크가 포함되어 있다면 귀사가 통제하지 않는 서드파티에게 고객 데이터를 누출하는 것입니다. 이는 규제 기관이 진지하게 받아들이는 데이터 보호 문제입니다.
발생 가능한 비용
- 고객이 양식을 작성하거나 검색을 실행한 후 외부 링크나 광고를 클릭합니다. 페이지 주소(입력한 내용 포함)가 의도하지 않게 공유한 광고주나 분석 회사에 전달됩니다.
- 비밀번호 재설정 및 계정 확인 링크는 때때로 주소에 비밀 토큰을 포함합니다. 그 페이지에 외부 링크가 있으면 전체 주소(토큰 포함)가 외부 사이트로 전달될 수 있습니다.
- 비공개 내부 페이지 경로(관리자 영역, 고객 전용 페이지, 가격 등급, 문서 링크)가 방문자가 클릭하는 모든 서드파티에게 공개됩니다.
- 고객의 보안 검토나 개인정보 감사가 귀사 사이트를 스캔하여 Referrer-Policy가 없음을 확인하고 데이터 최소화 실패로 기록합니다.
- 개인 데이터가 합의가 없는 처리자의 손에 들어가 5분짜리 실수가 보고 가능한 데이터 보호 위반으로 전환됩니다.
중요한 이유. 기본적으로 브라우저는 수다스럽습니다. 방문자가 어디서 왔는지 다음 웹사이트에 알려주며, 종종 페이지의 전체 주소를 포함합니다. 브로슈어 사이트에서는 무해할 수 있지만 주소에 개인적인 것이 포함된 순간 — 검색어, 주문 ID, 링크의 이메일, 비공개 경로 — 그 기본값이 외부 당사자에게 조용히 누출합니다. Referrer-Policy는 브라우저가 과도하게 공유하지 않도록 하는 단일 설정입니다.
쉬운 설명
귀사 웹사이트의 방문자가 다른 사이트로 이동하는 링크를 클릭할 때마다 — 외부 링크, 배너 광고, “이것을 공유”, 심지어 다른 곳에서 로드되는 폰트나 이미지 — 브라우저가 어느 페이지에서 왔는지 메모를 자동으로 첨부합니다. 그 메모가 리퍼러입니다.
합리적으로 사용하면 리퍼러는 무해하고 유용합니다. 문제는 기본 동작에 있습니다. 관리하지 않으면 브라우저는 단순히 “your-business.com에서 왔다”고 말하는 것이 아니라 종종 정확한 페이지의 전체 주소를 넘깁니다. 웹 주소는 사람들이 인식하는 것보다 훨씬 많은 정보를 담고 있습니다: 귀사 사이트에 입력한 검색어, 주문 및 계정 번호, 비공개 회원 전용 페이지 경로, 심지어 비밀번호 재설정 및 확인 링크의 일회성 비밀 토큰.
Referrer-Policy는 브라우저에게 그 메모를 얼마나 공유할 수 있는지 지시하는 단일 지시입니다. 도메인 이름만, 귀사 자체 사이트의 다른 페이지에만, 또는 아무것도 공유하지 않도록 할 수 있습니다.
비즈니스 피해 사례
-
누출된 검색. 고객이 귀사 사이트에서 민감한 것을 검색합니다. 그 결과 페이지에서 외부 링크나 광고를 클릭합니다. 광고주가 검색어가 포함된 귀사 주소를 받습니다. 그것을 공유하기로 동의하지 않았고 취소할 수 없습니다.
-
노출된 재설정 링크. 많은 시스템이 비밀번호 재설정, 이메일 확인, “매직 로그인” 페이지 주소에 일회성 토큰을 넣습니다. 그 페이지에 외부 링크나 서드파티 리소스가 있다면 전체 주소(토큰 포함)가 외부 사이트로 전달될 수 있습니다.
-
무료로 넘긴 사이트 맵. 내부 페이지 경로가 종종 구조를 드러냅니다: /admin, /enterprise-pricing, /clients/acme, /downloads/private-report. 이 헤더 없이 방문자가 클릭하는 모든 외부 사이트가 그 경로를 받습니다.
-
원하지 않는 데이터 공유 관계. 개인정보 법률은 귀사가 고객 개인 데이터가 어디로 가는지 알고 계약이 있을 것을 기대합니다.
-
실사에서 지연된 거래. 더 큰 고객사의 보안 팀이 귀사를 검토할 때 없는 표준 보안 헤더는 빠르고 자동화된 체크박스입니다.
어떤 값이 있나
- no-referrer — 아무것도 공유하지 않음. 최대 개인정보 보호.
- same-origin — 귀사 자체 사이트에서 이동할 때만 전체 주소 공유.
- strict-origin-when-cross-origin — 권장 기본값. 귀사 사이트 내에서는 전체 경로 공유; 외부 사이트에는 귀사 도메인 이름만 공유.
- origin — 항상 귀사 도메인 이름만 공유.
피해야 할 두 값 — 스코어카드에서 헤더 없는 것보다 낫지 않은 것으로 취급됩니다:
- unsafe-url — 항상 모든 사람에게 전체 주소 공유. 단어 하나로 최악의 경우.
- no-referrer-when-downgrade — 여전히 보안 사이트에 전체 주소를 보내는 이전 브라우저 기본값.
좋은 상태는: Referrer-Policy 헤더가 있고 제한적 값으로 설정 — 대부분의 비즈니스에서 strict-origin-when-cross-origin.
수정 방법 (무료, 약 5분)
IT 담당자, 개발자, 또는 호스팅 지원팀에 이 섹션을 전달하세요 — 수정은 무료이며 사이트를 손상시키지 않습니다.
목표: Referrer-Policy 응답 헤더를 strict-origin-when-cross-origin 값(또는 더 적게 공유하고 싶다면 더 엄격한 값)으로 설정합니다.
Cloudflare(코드 없음 — 사용하는 경우 가장 쉬움):
대시보드 → 귀사 도메인 → 규칙 → Transform 규칙 → 응답 헤더 수정 → 규칙 만들기 → 정적 설정 → 헤더 이름 Referrer-Policy, 값 strict-origin-when-cross-origin → 모든 들어오는 요청에 적용 → 배포.
Nginx:
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
Apache:
Header always set Referrer-Policy "strict-origin-when-cross-origin"
IIS:
<httpProtocol><customHeaders>
<add name="Referrer-Policy" value="strict-origin-when-cross-origin" />
</customHeaders></httpProtocol>
Node / Express:
app.use((req, res, next) => { res.setHeader('Referrer-Policy', 'strict-origin-when-cross-origin'); next(); });
흔한 실수
- 허용적 값을 설정하고 충분하다고 가정.
unsafe-url과no-referrer-when-downgrade모두 전체 주소를 누출합니다. 스코어카드에서 0점입니다. - 홈페이지에만 설정. 헤더는 모든 페이지에 있어야 합니다. 서버, CDN, 또는 Cloudflare 수준에서 설정하여 사이트 전체에 자동으로 적용되도록 하세요.
- HTML
<meta>태그로만 설정.<meta name="referrer">태그는 일부 경우에 작동하지만 전부는 아닙니다. 적절한 응답 헤더로 설정하는 것이 신뢰할 수 있는 방법입니다. - 한 레이어가 다른 것을 재정의. 원본 서버와 CDN 모두 다른 값으로 헤더를 설정하면 결과가 예측 불가능할 수 있습니다.
- URL에서 데이터를 제외하는 대신으로 취급. 헤더는 피해를 제한하지만 비밀과 개인 데이터를 웹 주소에 넣지 않는 것이 더 깔끔한 장기적 습관입니다.
요약
Referrer-Policy는 스코어카드에서 가장 저렴하고 안전한 개인정보 수정입니다: 한 줄, 약 5분, 무언가를 손상시킬 위험 없음, 무료. strict-origin-when-cross-origin으로 설정하고 모든 페이지에서 적용되는지 확인하면 중간 심각도 격차와 15점이 닫힙니다.
FAQ
기술적 지식이 없는데 실제로 처리할 수 있나요?
그렇습니다. 전체 스코어카드에서 가장 쉬운 수정 중 하나입니다. 웹사이트나 호스팅을 담당하는 사람이 추가하는 단일 줄입니다. Cloudflare에서는 코드 없이 몇 번의 클릭으로 됩니다. 아래 '수정 방법' 섹션을 전달하세요. 무료이며 약 5분이 걸리고 사이트를 손상시키지 않습니다.
'리퍼러'가 여기서 무엇을 의미하나요?
누군가 귀사 페이지에서 다른 웹사이트로 링크를 클릭하면 브라우저가 어느 페이지에서 왔는지 알려주는 메모를 보냅니다. 그 메모가 리퍼러입니다. 문제는 기본적으로 메모에 전체 페이지 주소가 포함된다는 것입니다. Referrer-Policy는 그 메모를 도메인 이름으로만 줄이거나 완전히 끌 수 있게 합니다.
사이트에서 결제를 처리하지 않으면 신경 쓸 필요가 있나요?
거의 확실히 그렇습니다. 결제 페이지가 없어도 개인 정보가 웹 주소에 있을 수 있습니다 — 검색 창, 연락처 양식, 계정 페이지, 문서 링크, 비밀번호 재설정 이메일 등. 수정 비용이 없고 5분이면 됩니다.
이것을 켜면 사이트나 분석이 손상되나요?
아닙니다. 권장 설정은 여전히 외부 사이트에 귀사 도메인 이름을 보내므로 합법적인 리퍼럴 분석이 계속 작동합니다. 전체 비공개 주소가 함께 가지 않을 뿐입니다.
이것이 개인정보 법률 문제인가요, 아니면 좋으면 좋은 것인가요?
실제 규정 준수 문제가 될 수 있습니다. 데이터 보호 규정은 최소한의 개인 데이터만 수집하고 공유하며 누구에게 가는지 알 것을 요구합니다.
이것이 등급에 영향을 미치나요, 아니면 조언일 뿐인가요?
등급에 영향을 미칩니다. Referrer-Policy 검사는 채점되며 웹 보안 범주에서 최대 15점 가치가 있습니다. 누락된 헤더는 중간 심각도로 표시됩니다. 한 가지 함정: 'unsafe-url'이나 'no-referrer-when-downgrade' 같은 허용적인 값으로 설정하면 헤더 없는 것과 같이 0점입니다.