9월 10, 2024

Wpick

지상에서 한국의 최신 개발 상황을 파악하세요

Chrome, Firefox, Safari 브라우저의 0.0.0.0 취약점에 대한 패치 • 등록

Chrome, Firefox, Safari 브라우저의 0.0.0.0 취약점에 대한 패치 • 등록

Microsoft Edge 및 Google Chrome을 포함한 Chromium 기반 브라우저와 Apple의 Safari 및 Mozilla의 Firefox와 같은 WebKit 브라우저 등 거의 모든 웹 브라우저에서 수년간의 보안 감독이 이루어졌습니다.

범죄자들이 접근해서는 안 되는 소프트웨어 서비스에 접근하기 위해 이를 악용할 수 있고 악용해 왔습니다. 이 취약점은 위에서 언급한 macOS 및 Linux 브라우저와 기타 브라우저에 영향을 미치지만 적어도 Windows에는 영향을 미치지 않습니다.

Oligo Security라는 회사는 이번 달에 취약점을 공개하고 IPv4 주소 0.0.0.0과 관련되어 있기 때문에 0.0.0.0 Day라고 명명했습니다. 공격자들은 Mozilla Bugzilla를 기반으로 적어도 2000년대 후반부터 이 취약점을 악용해 온 것으로 보입니다. 그 시대부터 여전히 열려있는 것으로 표시됩니다.

Oligo에 따르면 세 브라우저 팀은 각각 0.0.0.0에 대한 모든 액세스를 차단하겠다고 약속했으며, localhost 취약점을 해결하기 위해 자체 완화 조치를 구현하겠다고 약속했습니다.

문제는 매우 간단합니다. 취약한 운영 체제의 취약한 브라우저에서 악성 웹 페이지를 열면 해당 페이지는 0.0.0.0과 선택한 포트로 요청을 보낼 수 있습니다. 이 포트의 장치에서 로컬로 실행되는 다른 서버나 서비스가 있는 경우 이러한 요청은 해당 위치로 전달됩니다.

따라서 포트 11223의 macOS 또는 Linux 워크스테이션에서 일부 서비스가 실행되고 있고 해당 서비스가 방화벽 뒤에 있기 때문에 아무도 해당 서비스에 액세스할 수 없다고 가정하고 대형 브라우저가 localhost에 대한 외부 요청을 차단하고 있다면 다시 생각해보세요. 0.0.0.0:11223 요청은 귀하가 방문하는 악성 페이지에 의해 귀하의 서비스로 전달됩니다.

실제적인 악용 측면에서는 매우 희박한 가능성입니다. 그러나 일부 사이트가 우연히 로컬 엔드포인트에 도달했다는 사실을 발견하고 싶지는 않을 것입니다. 사실 2024년에 이런 일이 일어난다는게 웃기네요.

외부 사이트가 이러한 방식으로 로컬 호스트에 액세스하는 것을 방지하기 위한 보안 메커니즘이 있어야 합니다. 정확하게, CORS(교차 원본 리소스 공유) 사양, 최신순 개인 네트워크 액세스(PNA)는 공용 네트워크와 비공개 네트워크를 구별하는 데 사용되는 브라우저이며, 개인 네트워크 및 호스팅 장치의 서버와 통신하는 외부 사이트의 기능을 제한하여 CORS 시스템을 향상시킵니다.

그러나 Oligo 팀은 PNA를 통과했습니다. 연구원들은 포트 8080에서 localhost라고도 알려진 127.0.0.1에서 실행되는 가짜 HTTP 서버를 설정한 후 0.0.0.0:8080에 요청을 보내 JavaScript를 사용하여 외부 공개 사이트에서 해당 서버에 액세스할 수 있었습니다.

Oligo 보안 연구원인 Avi Lomelsky는 “이는 공개 사이트가 응답을 볼 수 없이 호스트의 모든 개방 포트에 액세스할 수 있다는 것을 의미합니다.”라고 말했습니다. 보고된 바 있다.

이에 대한 응답으로 Chrome은 다음을 수행합니다. 장애물 Chromium 128부터 0.0.0.0에 도달하면 Google은 Chrome 133에서 완료되도록 이 변경 사항을 점진적으로 출시할 예정입니다. Apple은 변경 사항 0.0.0.0에 대한 액세스를 차단하는 오픈 소스 소프트웨어 WebKit에 적용됩니다.

Mozilla는 즉각적인 해결책이 없으며 Firefox에서 PNA를 구현하지 않았습니다. 모질라의 올지오(Olgio)에 따르면 그것은 변한다 보고 후 블록 0.0.0.0에 대한 사양(RFC)을 가져옵니다.

Mozilla 대변인이 보냈습니다. 기록 이메일을 통한 다음 진술:

Oligo에 따르면, 이 연구는 PNA에 대한 강력한 사례를 제시합니다.

Lomelski는 “PNA가 완전히 출시될 때까지 공공 웹사이트는 Javascript를 사용하여 HTTP 요청을 보내 로컬 네트워크의 서비스에 성공적으로 액세스할 수 있습니다”라고 썼습니다. “이를 바꾸려면 PNA를 표준화해야 하며, 이 표준에 따라 PNA를 구현하는 브라우저가 필요합니다.”