# WebKit의 Private Browsing 2.0

> Clean Markdown view of GeekNews topic #15883. Use the original source for factual precision when an external source URL is present.

## Metadata

- GeekNews HTML: [https://news.hada.io/topic?id=15883](https://news.hada.io/topic?id=15883)
- GeekNews Markdown: [https://news.hada.io/topic/15883.md](https://news.hada.io/topic/15883.md)
- Type: news
- Author: [xguru](https://news.hada.io/@xguru)
- Published: 2024-07-17T11:07:02+09:00
- Updated: 2024-07-17T11:07:02+09:00
- Original source: [webkit.org](https://webkit.org/blog/15697/private-browsing-2-0/)
- Points: 6
- Comments: 1

## Topic Body

- 2005년에 Private Browsing(개인정보 보호모드)을 발명했을 때, 목표는 동일한 기기를 공유하는 사람들로부터 사용자의 브라우징을 보호하는 것이었음  
- 사용자가 브라우징의 로컬 영구 흔적을 남기지 않는 모드를 만들었고, 결국 다른 모든 브라우저도 동일한 기능을 제공하게 되었음. 이를 "ephemeral browsing"이라고도 함  
- 2003년 Safari 1.0부터 쿠키 정책을 통해 모든 Safari 브라우징에 크로스 사이트 추적 방지를 적용했고, 지난 20년 동안 프라이버시 보호를 점진적으로 강화해 왔음  
- 다른 유명 브라우저는 추적 방지에 있어 우리의 주도를 따르는 데 그다지 빠르지 않았지만, 진전은 있음  
- Apple은 사용자가 자신도 모르게 동의 없이 웹에서 추적되어서는 안 된다고 믿음  
  - Private Browsing에 진입하는 것은 사용자가 프라이버시 침해에 대해 최상의 보호를 원하면서도 웹을 즐기고 활용하고 싶어한다는 강력한 신호임  
  - 크롬의 시크릿 모드와 같이 사생활 보호 모드를 2005년 정의대로 단순히 임시적인 것으로만 유지하는 것은 더 이상 충분하지 않음  
  - 사용자는 더 많은 것을 기대하고 받을 자격이 있음  
- Safari 17.0에서 Private Browsing에 전혀 새로운 수준의 프라이버시 보호 기능을 추가했고, 17.2와 17.5에서 이를 더욱 강화  
  - 사용자가 활성화하면 새로운 모든 보호 장치가 일반 Safari 브라우징에서도 사용 가능함  
  - 이 작업으로 웹 프라이버시를 크게 향상시켰고, Private Browsing이 어떠해야 하는지에 대한 새로운 산업 표준을 세우기를 희망함  
  
### Safari의 Enhanced Private Browsing 기능 요약   
- Safari 17.0에 들어간 보호 및 방어 기능   
  - 링크 추적 방지  
  - CNAME으로 위장된 것을 포함해 알려진 트래커의 네트워크 로드 차단  
  - 고급 핑거프린팅 방지  
  - 웹사이트나 방문 기록에 접근하는 확장 프로그램은 기본적으로 꺼져 있음  
- 추가로 모든 브라우징 모드에 추가된 보호 및 방어 기능  
  - 위장된 제3자 IP 주소에서 설정된 쿠키의 수명 제한  
  - 파티션된 SessionStorage  
  - 파티션된 blob URL (Safari 17.2부터)  
- 또한 URL의 추적 매개변수를 대체하기 위해 Web AdAttributionKit(이전의 Private Click Measurement)를 확장했음   
- Private Browsing에서도 개발자가 마케팅 캠페인의 성과를 이해할 수 있도록 도움  
  
### 웹사이트 호환성을 깨먹는 것의 위험과 그에 대한 완화 방안  
  
- 웹에서 프라이버시를 보호하기 위한 많은 아이디어가 있지만, 불행히도 그 중 많은 것이 사용자 경험을 해칠 수 있음  
- 현실 생활에서의 보안 보호와 마찬가지로, 균형을 맞추어야 함  
- 새로운 Private Browsing은 웹사이트를 절대 중단시키지 않으려고 시도하면서 그 선까지 가는 것임  
- 하지만 일부 사이트의 일부분이 작동하지 않을 위험이 있음  
- 이를 해결하기 위해 사용자에게 사이트별로 프라이버시 보호를 줄일 수 있는 수단을 제공함  
- 이러한 프라이버시 보호의 변경은 사이트 내에서 브라우징하는 동안만 기억됨  
- 이 옵션은 프라이버시 보호로 인해 웹 페이지를 사용할 수 없을 때 최후의 수단임  
- iOS, iPadOS, visionOS에서는 설정 > 앱 > Safari > 고급 > 고급 추적 및 핑거프린팅 방지로 이동하여 "모든 브라우징"을 활성화  
- macOS에서는 Safari > 설정 > 고급으로 이동하여 "모든 브라우징에서 고급 추적 및 핑거프린팅 방지 사용"을 활성화  
  
### 링크 추적 방지  
  
- 사파리는 URL의 쿼리 파라미터와 프래그먼트를 제거해 사이트 간 사용자 활동 추적을 어렵게 만듦  
- 광범위한 사용자/클릭 수준 추적에 사용되는 쿼리 파라미터는 네트워크 전송 전에 제거됨  
- 캠페인 속성에 사용되는 파라미터는 통과시킴  
- 목적지 사이트에서 전체 URL에 액세스하려는 제3자 스크립트는 쿼리 파라미터나 프래그먼트가 없는 URL만 볼 수 있음  
  
### Private Browsing의 Web AdAttributionKit  
  
- Web AdAttributionKit은 광고주, 웹사이트 및 앱이 프라이버시를 보호하는 방식으로 광고 속성과 클릭 측정을 구현하는 방법임  
- Private Browsing에서 특정 제한 사항을 가지고 동작함  
  - 개별 Private Browsing 탭으로 범위가 지정되며, 링크 클릭 시 새 탭으로 속성 전송함  
  - 탭을 닫으면 보류 중인 속성 요청이 폐기됨  
  
### 알려진 추적기의 네트워크 로드 차단  
  
- 자동으로 활성화된 콘텐츠 차단기를 사용해 알려진 추적기로의 네트워크 로드를 차단함  
- DuckDuckGo 데이터와 EasyList의 EasyPrivacy 필터링 규칙을 사용해 컴파일됨  
- 대부분의 광고는 계속 로드되도록 의도적으로 허용함  
- Private Browsing은 CNAME 은폐나 제3자 IP 주소 은폐를 통해 매핑된 추적 도메인으로의 은폐 네트워크 요청도 차단함  
  
### 네트워크 프라이버시 개선  
  
- Private Browsing은 다음과 같은 보호 기능을 모든 사용자에게 추가함:  
  - 암호화된 DNS를 사용해 DNS 쿼리를 보호함  
  - 암호화되지 않은 HTTP 리소스를 프록시해 로컬 네트워크의 공격자로부터 보호함  
- iCloud+ 가입자는 iCloud Private Relay를 켜서 다음과 같은 기능을 추가로 사용할 수 있음:  
  - 각 Private Browsing 탭마다 별도 세션을 사용함  
  - 기본적으로 위치정보 프라이버시를 제공함  
  - IP 주소 공개 전에 경고를 표시함  
  
### Private Browsing의 확장 프로그램  
  
- 웹사이트 데이터 및 브라우징 기록에 액세스할 수 있는 확장 프로그램은 기본적으로 꺼져 있음  
- 사용자는 여전히 확장 프로그램이 Private Browsing에서 실행되도록 선택할 수 있음  
- 웹 페이지 콘텐츠나 브라우징 기록에 액세스하지 않는 확장 프로그램은 Safari에서 켜져 있으면 Private Browsing에서도 기본적으로 켜져 있음  
  
### 고급 핑거프린팅 방지  
  
- 상태 저장 추적이 제한됨에 따라 많은 추적기가 핑거프린팅으로 전환함  
- 핑거프린팅 유형:  
  - 디바이스 핑거프린팅: 하드웨어, OS, 브라우저 등 디바이스 특성 기반  
  - 네트워크 및 지리적 위치 핑거프린팅: 인터넷 연결 방식과 지리적 위치 감지 수단 기반  
  - 사용자 설정 핑거프린팅: 다크/라이트 모드, 로케일, 글꼴 크기 조정, 창 크기 등 사용자 설정 상태 기반  
  - 사용자 행동 핑거프린팅: 마우스 포인터 사용, 입력 속도 등 사용자 행동 패턴 감지  
  - 사용자 특성 핑거프린팅: 관심사, 연령, 건강 상태 등 사용자 특성 파악  
- 핑거프린트 안정성은 시간이 지남에 따라 변화하는 요소들로 인해 도전받음  
- 핑거프린팅 프라이버시 문제:  
  1. 사이트 간 추적  
  2. 사이트별 사용자 재호출  
  3. 사이트별 방문자 고유성  
- 사이트 간 추적 및 사이트별 사용자 재호출은 브라우저가 해결해야 할 프라이버시 문제임  
- Safari의 접근 방식:  
  - 핑거프린트를 사이트별로 고유하게 만들고, 데이터 제거 시마다 새로운 고유 핑거프린트 생성  
  - 다중 홉 프록시를 사용해 IP 주소 숨기기  
  - 핑거프린트 가능한 웹 API 수 제한  
  - 웹 API 반환 값에 노이즈 주입  
- 2D Canvas, WebGL, Web Audio API에 노이즈를 주입하고 창/화면 메트릭 관련 API 결과를 고정하여 핑거프린팅을 어렵게 만듦  
  
### Topics API와 같은 핑거프린트 가능한 API를 웹에 추가하지 말아야 함  
  
- 기존 웹 API는 핑거프린트 가능성을 억제하는 데 어려움이 있음  
- 새로운 핑거프린트 가능한 API로 문제를 악화시키지 않는 것이 중요함  
- Chrome에 도입된 Topics API에 반대하는 이유:  
  - 사용자의 관심사를 브라우저가 추론하여 광고주에게 전달함  
  - 사용자에게 어떤 주제가 노출되는지 사전에 알려주지 않음  
  - 단순한 관심사 조합만으로도 사용자 프로파일링과 재식별에 활용될 수 있음  
  
### 두 가지 브라우징 모드에서의 프라이버시 개선  
  
- 은폐된 제3자 IP 주소에 대한 방어와 SessionStorage 및 Blob URL 파티셔닝은 일반 브라우징과 Private Browsing 모두에서 기본적으로 활성화됨  
- ITP는 은폐된 제3자 IP 주소의 응답에서 쿠키 만료 기간을 7일로 제한함  
- Safari 16.1부터 사이트 간 Session Storage를 첫 번째 파티 웹사이트별로 분할함  
- Safari 17.2부터 사이트 간 Blob URL을 첫 번째 파티 웹사이트별로 분할하고, 제3자가 첫 번째 파티 Blob URL을 사용할 수 없게 함  
  
### 산업 표준 설정  
  
- Safari 17.0, 17.2, 17.5의 개인 정보 보호 기능은 사용자 보호를 위한 새로운 기준을 제시  
- 모든 Safari 사용자와 웹 자체가 이 작업의 혜택을 누리게 되기를 기대

## Comments



### Comment 27336

- Author: brainer
- Created: 2024-07-17T18:03:01+09:00
- Points: 1

https://youtu.be/0HjDpPnxcP0?si=x0JZN2Cxxy0j3XiT
