클라우드 블러드: 두 판 사이의 차이

m 순번 제거
Gaon12 (토론 / 기여)
내용 보강
 
1번째 줄: 1번째 줄:
[[파일:cloudbleed.png|300px]]
[[파일:cloudbleed.png|300px]]


==개요==
클라우드블리드(Cloudbleed)는 2017년 2월에 발견된 심각한 보안 취약점으로, [[클라우드플레어]](Cloudflare)의 서비스를 사용하는 수많은 웹사이트에서 민감한 사용자 정보가 유출된 사건이다. 이 취약점으로 인해 2016년 9월 22일부터 2017년 2월까지 약 5개월간 데이터 유출이 계속되었다.


==정보==
==발견 과정==
2017년 02월, [[구글]] [[프로젝트 제로]]는 [[클라우드 플레어]]를 사용하는 모든 사이트의 '''모든 정보'''<ref>HTTP 쿠키,인증 토큰 등</ref><ref>쉽게 말해 이메일 주소, 아이디, 비밀번호 등 사이트에 있는 모든 정보</ref>유출되었다. (2016년 09월 22일부터) 이러한 정도들의 일부는 검색 엔진이 색인해 갔다.
2017년 2월 17일, [[구글]] [[프로젝트 제로]](Project Zero)의 보안 연구원 타비스 오맨디(Tavis Ormandy)이 취약점을 우연히 발견했다. 그는 1password.com의 데이터를 살펴보던 중 다른 웹사이트들의 민감한 정보가 무작위로 섞여 있는 것을 발견했다.


클라우드 플레어는 검색 엔진 회사와 협의하여 현재는 삭제된 상태이다.
==문제의 원인==
===기술적 원인===
클라우드플레어는 웹사이트의 성능을 개선하기 위해 'ScrapeShield'라는 HTML 파싱·난독화 도구를 사용했다. 이 도구에서 버퍼 오버런(buffer overrun) 버그가 발생했는데, 이는 메모리 범위를 벗어나 데이터를 읽어오는 심각한 프로그래밍 오류였다. 구체적으로는 HTML 파서에서 '''<nowiki>==</nowiki>''' (동등 비교 연산자)를 사용한 부분에서 문제가 발생했으며, '''<nowiki>>=</nowiki>''' (크거나 같음 연산자)를 사용했다면 이런 문제가 발생하지 않았을 것이다.


==유출 과정==
===영향력 확대 원인===
클라우드 플레어는 'ScrapeShield'라는 [[HTML]] 파싱·난독화 툴을 사용하는데, 이 툴이 부정적인 HTML을 사용했는지 확인하지 않았다. 역방향 프록시가<ref>클라우드 플레어 서버→유저</ref> 다수의 유저들 사이로 공유되기 때문에 '''모든 클라우드 플레어 유저들'''에게 영향을 미친다.
클라우드플레어는 전 세계 수많은 웹사이트가 사용하는 CDN(콘텐츠 전송 네트워크) 서비스이다. 한 서버가 여러 웹사이트의 트래픽을 처리하는 구조였기 때문에, 한 사이트의 정보가 다른 사이트의 응답에 섞여 들어가는 일이 발생했다. 이로 인해 클라우드플레어를 사용하는 모든 웹사이트가 잠재적인 피해 대상이 되었다.


함수 '''<nowiki>==</nowiki>'''(동등 함수)를 사용한 것이 근본적인 원인이었으며, 동등 함수 대신 '''<nowiki>>=</nowiki>'''를 사용하였다면 발생하지 않았을 것이라고 하였다.
==유출된 정보==
===유출된 정보의 종류===
* HTTP 쿠키와 인증 토큰
* 비밀번호와 로그인 정보
* API 키와 개인 암호화 키
* HTTPS 요청의 내용
* 이메일 주소와 개인정보
* 채팅 메시지와 포럼 글 내용


유출된 정보(의 일부)가 검색엔진이 색인해 갔으며, 현재는 삭제되었다.
===정보 유출의 특징===
유출된 정보는 웹브라우저의 캐시나 검색엔진의 캐시에 저장되었고, [[구글]], [[빙]], [[야후]] 등의 검색엔진이 이 정보들을 자동으로 수집하여 색인화했다. 클라우드플레어는 발견 즉시 주요 검색엔진 업체들과 협력하여 캐시된 데이터를 삭제했다.


==유출 사이트==
==영향을 받은 웹사이트==
[[깃허브]]에 클라우드 블러드 피해 사이트 목록을 올렸다. [https://github.com/pirate/sites-using-cloudflare pirate/sites-using-cloudflare]
===규모===
클라우드플레어의 서비스를 사용하는 약 6백만 개의 웹사이트가 잠재적 피해 대상이다. 우버(Uber), 피트니스팔(FitBit), OKCupid 등 유명 서비스들도 포함되어 있다.


텍스트 파일 용량이 커 깃허브 서이트에서는 볼 수 없고, raw 로만 볼 수 있는데 열리는데 오래 걸린다.
===피해 사이트 확인===
깃허브에 피해 사이트 목록이 공개되어 있다: [https://github.com/franciscop/cloudbleed/blob/master/domains.txt] 파일 크기가 크기 때문에 깃허브 웹사이트에서는 직접 열람이 어렵고, raw 형식으로만 확인 가능하다.


==참고 사이트==
==대응 조치==
[https://blog.alyac.co.kr/991 알약 블로그(CC BY 4.0으로 가져옴)]
===클라우드플레어의 대응===
취약점 발견 즉시 문제가 되는 코드를 수정했다. 전체 서버에 패치를 적용하는 데 약 7시간이 소요되었다. 주요 검색엔진들과 협력하여 캐시된 민감 정보를 제거했다.
 
===사용자 권장 조치===
검색엔진들의 캐시는 삭제되었지만, 모든 검색엔진이 아니고, 캐시 삭제 전 크롤링 되었을 수도 있으므로, 모든 온라인 계정의 비밀번호 변경을 권장한다. 또한 2단계 인증이 가능한 서비스의 경우 활성화하고, 주요 온라인 서비스의 로그인 세션을 모두 종료하고 재로그인하는 것을 권장한다.
 
==참고 문헌==
* [https://blog.alyac.co.kr/991 알약 블로그]
* [https://blog.cloudflare.com/incident-report-on-memory-leak-caused-by-cloudflare-parser-bug/ Cloudflare 공식 사고 보고서]
* [https://bugs.chromium.org/p/project-zero/issues/detail?id=1139 Project Zero 버그 리포트]


==각주==
==각주==

2024년 11월 18일 (월) 14:26 기준 최신판

개요[편집 / 원본 편집]

클라우드블리드(Cloudbleed)는 2017년 2월에 발견된 심각한 보안 취약점으로, 클라우드플레어(Cloudflare)의 서비스를 사용하는 수많은 웹사이트에서 민감한 사용자 정보가 유출된 사건이다. 이 취약점으로 인해 2016년 9월 22일부터 2017년 2월까지 약 5개월간 데이터 유출이 계속되었다.

발견 과정[편집 / 원본 편집]

2017년 2월 17일, 구글 프로젝트 제로(Project Zero)의 보안 연구원 타비스 오맨디(Tavis Ormandy)가 이 취약점을 우연히 발견했다. 그는 1password.com의 데이터를 살펴보던 중 다른 웹사이트들의 민감한 정보가 무작위로 섞여 있는 것을 발견했다.

문제의 원인[편집 / 원본 편집]

기술적 원인[편집 / 원본 편집]

클라우드플레어는 웹사이트의 성능을 개선하기 위해 'ScrapeShield'라는 HTML 파싱·난독화 도구를 사용했다. 이 도구에서 버퍼 오버런(buffer overrun) 버그가 발생했는데, 이는 메모리 범위를 벗어나 데이터를 읽어오는 심각한 프로그래밍 오류였다. 구체적으로는 HTML 파서에서 == (동등 비교 연산자)를 사용한 부분에서 문제가 발생했으며, >= (크거나 같음 연산자)를 사용했다면 이런 문제가 발생하지 않았을 것이다.

영향력 확대 원인[편집 / 원본 편집]

클라우드플레어는 전 세계 수많은 웹사이트가 사용하는 CDN(콘텐츠 전송 네트워크) 서비스이다. 한 서버가 여러 웹사이트의 트래픽을 처리하는 구조였기 때문에, 한 사이트의 정보가 다른 사이트의 응답에 섞여 들어가는 일이 발생했다. 이로 인해 클라우드플레어를 사용하는 모든 웹사이트가 잠재적인 피해 대상이 되었다.

유출된 정보[편집 / 원본 편집]

유출된 정보의 종류[편집 / 원본 편집]

  • HTTP 쿠키와 인증 토큰
  • 비밀번호와 로그인 정보
  • API 키와 개인 암호화 키
  • HTTPS 요청의 내용
  • 이메일 주소와 개인정보
  • 채팅 메시지와 포럼 글 내용

정보 유출의 특징[편집 / 원본 편집]

유출된 정보는 웹브라우저의 캐시나 검색엔진의 캐시에 저장되었고, 구글, , 야후 등의 검색엔진이 이 정보들을 자동으로 수집하여 색인화했다. 클라우드플레어는 발견 즉시 주요 검색엔진 업체들과 협력하여 캐시된 데이터를 삭제했다.

영향을 받은 웹사이트[편집 / 원본 편집]

규모[편집 / 원본 편집]

클라우드플레어의 서비스를 사용하는 약 6백만 개의 웹사이트가 잠재적 피해 대상이다. 우버(Uber), 피트니스팔(FitBit), OKCupid 등 유명 서비스들도 포함되어 있다.

피해 사이트 확인[편집 / 원본 편집]

깃허브에 피해 사이트 목록이 공개되어 있다: [1] 파일 크기가 크기 때문에 깃허브 웹사이트에서는 직접 열람이 어렵고, raw 형식으로만 확인 가능하다.

대응 조치[편집 / 원본 편집]

클라우드플레어의 대응[편집 / 원본 편집]

취약점 발견 즉시 문제가 되는 코드를 수정했다. 전체 서버에 패치를 적용하는 데 약 7시간이 소요되었다. 주요 검색엔진들과 협력하여 캐시된 민감 정보를 제거했다.

사용자 권장 조치[편집 / 원본 편집]

검색엔진들의 캐시는 삭제되었지만, 모든 검색엔진이 아니고, 캐시 삭제 전 크롤링 되었을 수도 있으므로, 모든 온라인 계정의 비밀번호 변경을 권장한다. 또한 2단계 인증이 가능한 서비스의 경우 활성화하고, 주요 온라인 서비스의 로그인 세션을 모두 종료하고 재로그인하는 것을 권장한다.

참고 문헌[편집 / 원본 편집]

각주[편집 / 원본 편집]