검수요청.png검수요청.png

쿠키

해시넷
이동: 둘러보기, 검색

쿠키(cookie)는 웹사이트에 접속할 때 자동적으로 만들어지는 임시 파일로 이용자가 본 내용, 상품 구매 내역, 신용카드 번호, 아이디(ID), 비밀번호 IP 주소 등의 정보를 담고 있는 일종의 정보파일이다.

개요[편집]

쿠키(cookie)는 클라이언트(브라우저) 로컬에 저장되는 키와 값이 들어있는 작은 데이터 파일이다. 사용자 인증이 유효한 시간을 명시할 수 있으며, 유효 시간이 정해지면 브라우저가 종료되어도 인증이 유지된다는 특징이 있습니다. 쿠키는 클라이언트의 상태 정보를 로컬에 저장했다가 참조한다. 클라이언트에 300개까지 쿠키저장 가능, 하나의 도메인당 20개의 값만 가질 수 있음, 하나의 쿠키값은 4KB까지저장 Response HeaderSet-Cookie 속성을 사용하면 클라이언트에 쿠키를 만들 수 있다. 쿠키는 사용자가 따로 요청하지 않우리나라에는 쿠키의 사용을 직접적으로 금지하거나 제한하는 법률은 존재하지 않는다. 다만 정보통신망이용촉진 및 정보보호등에 관한 법률 시행령 제3조에 근거하여 제정된 개인정보보호지침(정보통신부고시 제2002-3호, 2002.1.18)에 의하여 서비스제공자는 개인정보 보호방침을 통하여 ‘인터아도 브라우저가 Request시에 Request Header를 넣어서 자동으로 서버에 전송한다.[1]

역사[편집]

쿠키는 루 몬툴리가 1994년 6월 웹 통신에서 이것들을 사용하겠다는 생각을 했을 때 컴퓨팅에 이미 사용되고 있었다. 당시 그는 넷스케이프 커뮤니케이션스의 직원이었으며 MCI를 위한 전자 상거래 애플리케이션을 개발하고 있었다. 빈트 서프와 존 클렌신은 넷스케이프 커뮤니케이션스와의 기술 토론에서 MCI를 제시했다. MCI는 서버가 부분적인 트랜잭션 상태를 보유하는 것을 원치 않았으나 이러한 이유로 이들은 넷스케이프에게 각 사용자의 컴퓨터의 상태를 저장하는 방법을 강구할 것을 대신 요청하였다. 쿠키는 가상 쇼핑 카트를 신뢰성있게 구현할 때의 문제의 해결책을 제공하였다. [2]

구조[편집]

유효기간[편집]

쿠키가 생성되면 기본적으로 브라우저가 종료될 때까지는 쿠키의 데이터를 사용할 수 있다. 하지만 유효 기간을 지정하면 브라우저가 종료되어도 지정한 기간 동안은 쿠키 데이터를 읽고 쓸 수 있게 된다. 유효 기간이 지나면 쿠키 데이터는 소멸된다. 실제로 파일이 지워지지는 않더라도 데이터를 브라우저에서 읽을 수가 없다.

패스[편집]

쿠키는 쿠키 데이터를 생성한 웹 페이지에서만 그 데이터를 읽을 수 있다. 하지만 Path 항목을 지정행주면 해당 Path 이하에서는 그 쿠키 데이터를 공유할 수 있다. ex) http://www.sp.or.kr/bbs/board.html 에서 쿠키를 생성하면, http://www.sp.or.kr/bbs/board.html 이외의 페이지에서는 쿠키 데이터를 읽을 수가 없다. 하지만 Path를 /bbs 로 설정하면 http://www.sp.or.kr/bbs 모든 페이지에서 쿠키 데이터를 읽을 수가 있다. Path를 / 로 지 정하면 http://www.sp.or.kr/ 의 모든 페이지에서 쿠키를 읽을 수가 있다.

도메인[편집]

도메인 속성은 패스 속성을 확장한 것이다. 패스가 하나의 사이트에서 쿠키 데이터를 읽고 쓰는 권한을 설정하는 것이라면, 도메인 항목은 도메인 단위에서 쿠키 데이터를 읽고 쓰는 권한을 설정하게 된다. ex) 패스를 / 로 설정을 하면 sp.or.kr 의 모든 페이지에서 위의 쿠키를 읽을 수 있게 된다.

보안[편집]

이는 쿠키 데이터의 전송 방법을 지정한다. 보통은 일반 HTTP를 이용하여 전송하지만, 만일 안전한 전송 방법을 지정하면 HTTPS 등의 보안 전송 방법을 사용하면 된다. 하지만 대부분의 경우 쿠키로는 위험하지 않은 데이터를 전달하기 때문에 거의 사용하지 않는다.

종류[편집]

  • Session cookie : 통신 연결에서 두 개체의 활성화된 접속을 뜻하고, 일시적으로 브랑우저를 끄거나 일정시간이 지나면 삭제된다.서버에서 중요 데이트러를 가지고 클라이언트에게는 MD5 형식의 토큰을 발급해준다. PHP : PHPSESSIONID, JSP : JSESSIONID , ASP : ASPSESSIONID 실무에서는 그냥 세션으로 불린다.
  • Persistent Cookie : 웹 쿠키, 브라우저 쿠키, 트랭킹 쿠키, 쿠키라고 불러진다. 브라우저를 종료해도 사용자의 하드드라이브에 저장하고 직접삭제하거나 만료시기가 되면 저절로 삭제된다. 대부분 서버에서 줄때 만료시간을 과거시간으로 부여해서 재사용이 불가능하게 한다. 클라이언트에 저장하기 때문에 악용의 가능성이 크고 보안상 매우 취약하다. 실무에선는 쿠키라고 불린다. [3]
  • Secure cookie : 암호화된 쿠키이다. 만약 HTTPS(secure Connection)를 사용한다면 쿠키들은 암호화된 포맷으로 저장된다. (예, 은행 사이트)
  • HttpOnly cookie : 대부분의 브라우저에서 지원되는 쿠키이다. Javascript와 같은 비-HTTP API들의 접근을 제한한다. 크로스 사이트 스크립팅과 같은 공격을 완전히 제거하기는 어려울 수 있지만 어느정도 막는다. 다른 브라우저 쿠키가 아닌 세션 관리 쿠키에 적용된다.
  • Third-party cookie : 다른 도메인과 함께 쿠키를 저장한다.예를 들어, http://www.example.com은 ad.advertise12.com의 쿠키를 저장할 것이다. 동시에, 다른 웹사이트 또한 같은 도메인으로 쿠키를 set한다. http://www.othersite.com는 ad.advertise12.com의 쿠키를 저장할 것이다
  • Super cookie : 슈퍼쿠키는 사용자의 웹사이트 방문기록 등을 알 수 있는 새로운 형태의 쿠키 파일이다.사용자가 쿠키를 삭제해도 컴퓨터 이용자들이 어떤 사이트를 방문했는지를 파악할 수 있으며, 일반적인 쿠키와는 다른 경로로 저장되어 컴퓨터 이용자가 알아차리기 어렵다.최근 미국에서는 MSN, 동영상 사이트 훌루 등 유명 사이트에서 슈퍼 쿠키가 유포된 사실을 발견하고 파일을 즉시 삭제하는 등 대응하고 있다.
  • Zombie cookie : 사용자가 삭제한 뒤 자동으로 재생성되는 쿠키이다. 클라이언트 측 등의 다른 장소에 내용이 저장된 뒤, 쿠키의 부재가 감지되면 쿠키를 백업하여 재생성하는 방식으로 동작한다. [4]

특징[편집]

쿠키는 웹 서버와 브라우저 간을 이동하는 요청 및 페이지에 포함된 작은 텍스트 비트이다. 쿠키에는 사용자가 사이트를 방문할 때마다 웹 응용 프로그램에서 읽을 수 있는 정보가 포함되어 있다. 예를 들어 사용자가 사이트에 페이지를 요청하면 응용 프로그램에서는 페이지뿐만 아니라 날짜, 시간을 포함하는 쿠키도 보내고, 사용자의 브라우저에서 페이지를 가져오면 사용자 하드 디스크의 폴더에 저장된 쿠키도 가져온다. 나중에 사용자가 다시 사이트에 페이지를 요청하는 경우 URL을 입력하면 브라우저는 로컬 하드 디스크에서 이 URL과 관련된 쿠키를 확인한다. 쿠키가 존재 할 경우 브라우저에서는 페이지 요청과 함께 이 쿠키를 사이트에 보낸다. 그러면 응용 프로그램에서 사용자가 마지막으로 사이트를 방문한 날짜 및 시간을 확인할 수 있다. 이 정보를 사용하여 사용자에게 메시지를 표시하거나 만료 날짜를 확인할 수 있다. 쿠키는 특정 페이지가 아니라 웹 사이트와 관련되므로 브라우저와 서버는 사용자가 사이트에 요청하는 페이지에 관계없이 쿠키 정보를 교환하게 된다. 사용자가 여러 사이트를 방문할 경우 각 사이트에서는 사용자의 브라우저에 쿠키를 보내고 브라우저에서는 모든 쿠키를 개별적으로 저장한다. 웹 사이트에서는 쿠키를 사용하여 방문자에 대한 정보를 저장 한다. 일반적으로 쿠키는 웹 응용 프로그램에서 연속성을 유지 관리하는 방법, 즉 상태 관리를 수행하는 방법 중 하나이다. 실제로 정보를 교환하는 짧은 시간을 제외하면 브라우저와 웹 서버는 연결이 끊어져 있다. 웹 서버에 대한 사용자의 각 요청은 다른 요청과 별개로 처리된다. 그러나 대부분의 경우 사용자가 페이지를 요철 할 때 웹 서버에서 사용자를 인식하면 유용하다. 예를 들어 쇼핑 사이트의 웹 서버는 각 쇼핑객을 추적하므로 사이트에서 장바구니 및 기타 사용자별 정보를 관리할 수 있다. 따라서 쿠키는 일종의 명함으로 사용되어 응용 프로그램에서 진행 방법을 알 수 있도록 관련된 식별 정보를 제공한다. 쿠키는 다양한 용도로 사용되는데 모두 웹 사이트에서 사용자를 기억하도록 하기 위한 것이다. 예를 들어 투표사이트에서 사용자가 두 번 투표할 수 없도록 쿠키를 Boolean Value(참 또는 거짓 어느 한쪽을 취하는 값, 논리값과 같은 의미)로 사용하여 사용자의 브라우저에서 이미 선거에 참여했는지 여부를 나타낼 수 있다. 사용자가 로그온 해야 하는 사이트에서는 사용자가 자격 증명을 계속 입력할 필요가 없도록 쿠키를 사용하여 해당 사용자가 이미 로그온 했음을 나타낼 수 있다.[5]

국내 쿠키 관련 법령[편집]

우리나라에는 쿠키의 사용을 직접적으로 금지하거나 제한하는 법률은 존재하지 않는다.다만 정보통신망 이용촉진 및 정보보호 등에 관한 법률 시행령 제3조에 근거하여 제정된 개인정보보호 지침(정보통신부 고시 제2002-3호, 2002.1.18)에 의하여 서비스제공자는 개인정보보호 방침을 통하여 ‘인터넷 홈페이지 접속정보 파일(cookie)의 운영에 관한 사항’을 서면 또는 인터넷 홈페이지 등을 통하여 이용자에게 공개하도록 하고 있다(개인정보보호 지침 제7조 1항 2호). 또한 쿠키에 의한 정보수집이나 프라이버시 침해에 대하여 직접적으로 규정하고 있지는 않으나, 인터넷 이용자는 전자거래기본법, 전자상거래 등에서의 소비자 보호에 관한 법률과 같은 법률이나 전자 거래소비자 보호지침(공정거래위원회 고시), 전자상거래표준 약관(원명은 ‘인터넷 사이버몰 이용표준 약관’)과 같은 규범에 의하여 일반적으로 쿠키를 통한 정보수집이나 프라이버시 침해로부터 보호된다. 이러한 일반적인 개인정보보호에 관한 규범이 정보수집 방법에 있어 특이성을 가지고 있는 쿠키를 둘러싸고 발생하는 법률문제에도 적절히 적용될 수 있을지 의문이 있으나, 현행 규범 중에서는 이들 규범이 쿠키를 통한 개인정보의 수집 및 이용에 비교적 적절하게 적용될 수 있을 것이다. 이는 다음과 같다. 쿠키를 운용하는 웹서버는 개인정보보호 정책의 일환으로서 쿠키의 존재, 쿠키로 수집하는 정보의 형태·내용, 수집의 방법과 수집한 개인정보의 사용 목적을 ‘분명하고 정확하게’‘가능한 한 인터넷 이용자가 이해하기 쉽게’ 공개하여야 한다(개인정보보호 지침 제7조 1항 2호 참조). 바꾸어 말하면 웹서버는 쿠키를 운용하는지 여부와 쿠키가 개인정보와 관련하여 어떤 의미를 가지는가를 정확하게 인터넷 이용자에게 알릴 필요가 있고, 쿠키가 어떤 용도로 사용되는지, 쿠키를 통하여 수집한 정보를 제휴한 다른 웹서버나 광고주와 함께 사용하는지, 개인정보를 제3자에게 제공하는지를 미리 홈페이지를 통하여 밝혀야 한다. 웹서버관리자는 쿠키 운용정책을 변경한 경우에는 그 내용을 지체 없이 인터넷 이용자에게 고지하여야 한다(개인정보보호지침 제7조 제1항·제3항). 쿠키를 운용하는 웹사이트는 인터넷 이용자가 쿠키를 원하지 아니하는 경우에는 쿠키를 거절할 수 있다고 하는 사실을 명시하여야 한다. 바꾸어 말하면 인터넷 이용자의 거절권을 보장하여야 한다. 또한 웹사이트 운영자는 인터넷 이용자가 쿠키를 거절하는 경우에 어떤 불편이나 불이익이 생기는지를 구체적으로 안내하여야 한다. 국내에는 또한 [금지 청구권]이 있다. 이는 개인정보 침해를 사전적으로 억제하기 위한 방법으로 방해예방청구권, 방해정지청구권 및 방해배제청구권을 총칭하여 이른다. 민사상 구제수단으로의 손해배상청구권은 쿠키에 의한 프라이버시 침해가 있고 난 뒤의 사후적 구제 방법에 해당하나, 금지 청구권은 사전적 구제수단으로서의 의미를 가진다. 인터넷 서비스 제공자가 쿠키에 대한 고지나 안내, 인터넷 사용자의 동의나 승낙 및 수집한 정보에 대한 액세스권을 침해하여 인터넷 사용자로부터 개인정보를 수집·가공하거나 제삼자에게 제공하는 행위를 하는 경우에 실질적으로 손해나 피해가 현실화한 때에는 사후적 구제수단으로 손해배상 청구를 할 수 있다 [5]

국외 쿠키 관련 법률[편집]

미국[편집]

쿠키로 인하여 프라이버시를 침해당한 인터넷이용자들이 서비스제공자를 상대로 제소할 때 일반적으로 원용하는 법률로는 ‘Computer Abuse and Fraud Act’, ‘Federal Wiretap Act’, ‘Electronic Communications Privacy Act of 1986’, ‘Cable Privacy Act of 1984’,‘Children’s Online Privacy Protection Act’ 등이 있다. 미국연방정부 및 일부의 주(州)에서 인터넷이용자의 개인정보나 프라이버시를 보호하고, 동의를 얻지 않고 이루어지는 개인정보의 수집을 금지하는 법률안이 제안된 바 있다. 예를 들어 사우스캐롤라이나 주 상원의원 Ernest F. Hollings에 의하여 인터넷을 사용하는 개인의 프라이버시를 보호하기 위한 온라인 개인 프라이버시법(Online Personal Privacy Act of 2002, S.2201)이 제안되어 있다. 한편 2004.07.01 발효된 California Online Privacy Protection Act of 2003, Business and Professions Code Section 22575-22579(2004)는 ‘상업적(commercial)’사이트나 온 라인서비스 운영자에게 프라이버시 정책을 홈페이지에 공고할 것을 요구하는 미국에서의 최초 입법이다. 그 ‘상업적’사이트에 관한 정의 규정을 두고 있지는 않다. 동법은 California 주민으로부터 개인정보(personally identifiable information)를 수집하는 경우 개인정보보호정책을 눈에 잘 띄게 고지하도록 요구한다.

EU[편집]

유럽에서는 ‘전자통신분야에서 개인정보의 처리 및 프라이버시보호와 관련한 유럽의회·유럽위원회의 지침’이하에서는‘유럽지침’이라고 칭한다)에 쿠키에 대한 규율방안을 마련하여 각 회원국에 대하여 권고하고 있다. 유럽지침에서 쿠키는 예컨대 웹사이트 디자인과 광고의 효율성분석, 온라인거래에 참가한 소비자의 신원확인에 있어서 합법적이고 유용한 도구가 될 수 있다고 평가하고 있다 유럽지침에 의하면 쿠키는 정보화사회서비스를 증진시키는 경우에만 합법적이다. 또한 쿠키의 사용은 사전에 그 사용목적에 대한 ‘분명하고 정확한 정보’clear and precise information)를 제공하며 아울러 웹사이트 이용자가 쿠키거절권(right to refuse)을 부여받은 경우에만 허용된다(동 지침 비고(Recital). 유럽지침은 쿠키를 운용하는 웹사이트관리자는 인터넷 이용자에게 자기의 컴퓨터에 저장되는 쿠키를 받기를 거절할 수 있는 기회를 주어야 하고, 또한 쿠키가 합법적 목적을 위하여 사용되는 한, 어떤 웹사이트의 내용에 대한 접근은 쿠키에 대하여 ‘충분히 고지한 후 얻은 승낙’well-informed acceptance)이 있는 경우에만 허용할 수 있다고 한다.

이탈리아[편집]

이탈리아 정보보호 위원회는 2014년 6월 3일 웹사이트에서의 쿠키 사용에 대한 동의를 의무화 하는 “쿠키에 관한 정보 제공 및 동의 획득을 위한 약식 절차(Simplified Arrangements to Provide Information and Obtain Consent Regarding Cookies, provision no. 229 of May 8, 2014)”에 대한 가이드라인을 발표하였다. 동 가이드라인은 웹사이트의 운영자와 제3자가 쿠키 이용 시, 웹사이트 이용자들의 동의를 얻을 의무화 고지사항(Information Notice)을 제공할 의무에 대하여 간소화된 절차로 상세한 지침을 제공하는 등의 내용을 담고 동가이드라인의 주요 내용은 쿠키의 종류를 기술적 쿠키(Technical Cookies)와 프로파일링 쿠키(Profiling Cookies)로 나누고 있는데, 두 종류 모두 개인정보보호법(Personal Data Protection Code) 제 122조1항과 관련이 있다. 기술적쿠키(Technical Cookies)란, 네트워크상에서 통신을 전달하거나 계약당사자 혹은 이용자로부터 명시적으로 요구된 정보를 제공하기 위하여 서비스 제공자에게 반드시 필요한 기능을 수행하는 쿠키를 말한다. 프로파일링 쿠키(Profiling Cookies)란, 웹사이트 이용자의 프로파일 생성에 목적을 두고 이용자가 온라인에서 보여주는 행위 양태를 분석함으로써 해당 이용자의 선호 사항을 알아내고 광고메시지를 보내는데 사용되는 쿠키를 말한다. 동가이드라인의 적용을 받는 쿠키는 프로파일링 쿠키이며, 기술적 쿠키의 설치에는 웹사이트 이용자의 사전 동의가 필요하지는 않으나 개인정보보호법 제13조에서 규정하고 있는 정보를 제공할 의무가 있다. 웹사이트 운영자는 프로파일링쿠키와 관련한 정보를 웹사이트 이용자에게 통지하고 쿠키사용에 대한 해당 이용자의 동의받을 의무를 이행하여야 한다. 이를 위하여 웹사이트 운영자는 웹사이트 접속 시 프로파일링 쿠키 사용과 관련한 간략한 정보가 포함된 배너가 동 웹사이트 이용자들로 하여금 접근 가능하도록 하여야 한다. [5]

문제점[편집]

  • 인터넷을 이용한 뒤 윈도우의 자바 스크립트 기능을 끄지 않을 경우 쿠키에 저장된 개인 신상 정보가 쉽게 노출된다.
  • 익스플로러에 해커들이 침입해 전자상거래와 관련한 민감한 정보를 빼낼수 있는 결함이 있다. 전자상거래 사이트에서 거래를 하기 위해 필요한 개인정보가 노출되는 것 뿐만 아니라 웹에 기반을 둔 e-메일이나 과거의 웹 사이트 검색상황을 파악할 수 있도록 한다는 점에서 우려를 자아내고 있다고 전문가들은 지적한다.
  • 광고 업체들의 개인정보를 이용한 광고전략 도구로 이용될 수 있다. 전자상거래가 확산되고 있음을 감안하면 개인정보 보호에 심각한 타격을 줄 가능성이 높으며 쿠키는 온라인 광고업체들이 인터넷 사용자의 기호 등을 수집,분석해 광고전략을 짜는 데 유용한 도구로 활용돼 왔던것이 사실이다. MS측에서는 공식적으로 쿠키에 의한 해킹 공격 가능성을 인정함과 도시에 온라인 광고업체들의 이런 쿠키이용 폐단을 막기위해 익스플로러5.5부터 컴퓨터 사용자들의 쿠키 거부권을 보장하는 기능을 탑재했다. [6]

각주[편집]

  1. 라이언서버, 〈쿠키와 세션 개념〉, 《티스토리》, 2016-11-16
  2. HTTP 쿠키〉, 《위키백과》
  3. allstar927, 〈웹브라우저의 쿠키란? (Persistent Cookie & Session Cookie〉, 《네이버 블로그》, 2013-01-25
  4. 나무숲, 〈쿠키 Cookie에 대해〉, 《티스토리》, 2017-05-18
  5. 5.0 5.1 5.2 김윤현,이태승,〈인터넷사이트 쿠키(Cookie)의 주요 이슈 및 취약점 분석〉, 《한국인터넷진흥원》
  6. sang nam, sang nam, 〈[스크랩 [인터넷]쿠키(Cookie)에 대한 모든것 완전정복!!]〉, 《다음블로그》, 2007-02-11

참고자료[편집]

같이 보기[편집]


  검수요청.png검수요청.png 이 쿠키 문서는 인터넷에 관한 글로서 검토가 필요합니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 문서 내용을 검토·수정해 주세요.