DOI QR코드

DOI QR Code

A Study on Copyright Infringement over Online Streaming Services by Reconstructing Web Cache

웹 브라우저 캐시 재조립을 통한 온라인 스트리밍 서비스 상의 저작권 침해 가능성에 관한 연구

  • Lim, Yirang (Institute of Cyber Security and Privacy(ICSP), Korea University) ;
  • Chung, Hyunji (Institute of Cyber Security and Privacy(ICSP), Korea University) ;
  • Lee, Sangjin (Institute of Cyber Security and Privacy(ICSP), Korea University)
  • 임이랑 (고려대학교 정보보호대학원 석사과정) ;
  • 정현지 (고려대학교 정보보호대학원 박사후연구원) ;
  • 이상진 (고려대학교 정보보호대학원 교수)
  • Received : 2020.02.17
  • Accepted : 2020.06.19
  • Published : 2020.08.31

Abstract

As internet technology advances, users can share content online, and many sharing services exist. According to a recently published digital forensic study, when playing an online streaming service, you can restore the played video by reconstructing the Chrome cache file left on local device such as a PC. This can be seen as evidence that the user watched illegal video content. From a different point of view, copyright infringement occurs when a malicious user restores video stream and share it to another site. In this paper, we selected 23 online streaming services that are widely used both at home and abroad. After streaming videos, we tested whether we can recover original video using cache files stored on the PC or not. As a result, the paper found that in most sites we can restore the original video by reconstructing cache files. Furthermore, this study also discussed methodologies for preventing copyright infringement in online streaming service.

인터넷 기술의 발전에 따라 온라인상에서 사용자들이 콘텐츠를 공유할 수 있는 공유 서비스들이 많아졌다. 최근에 발표된 연구에서는 온라인 스트리밍 서비스를 재생했을 때 PC에 남는 캐시 파일들을 특정 규칙에 맞게 재조합하면 재생했던 영상을 복원할 수 있으며, 이를 통해 불법저작물 시청에 대한 디지털증거를 확보할 수 있음이 알려졌다. 저작권 침해의 관점에서 이러한 기술은 실시간으로 스트리밍된 콘텐츠들을 파일 형태로 다시 복원할 수 있고, 이는 다른 사이트로 재유포 및 재업로드 될 가능성이 있음을 의미한다. 본 논문에서는 현재 국내외로 많이 사용되는 온라인 스트리밍 서비스 23개를 선정하여 시청한 후, PC에 기록되는 캐시 파일을 이용하여 영상 복원 여부를 실험하였다. 이를 통해 거의 모든 사이트에서 복원이 가능했음을 확인하였다. 추가적으로 본 연구에서는 온라인 스트리밍 서비스상에서 영상 복원을 통한 저작권 침해를 방지하기 위한 방안들에 대해서도 함께 언급하고자 한다.

Keywords

I. 서론

OTT(Over The Top) 서비스란 인터넷을 통해 방송 프로그램·영화·교육 등 각종 미디어 콘텐츠를 제공하는 서비스를 말한다. OTT 서비스들의 증가로 인터넷상에서 스트리밍 콘텐츠들의 이용과 배포 횟수가 기하급수적으로 증가하고 있다. 그중 1인 미디어 방송을 통하여 여러 콘텐츠가 온라인상에 무분별하게 업로드되면서 저작권이 존재한 영상매체(TV 프로그램, 영화, 애니메이션)들이 심대한 위협을 받고 있다. 한국저작권보호원의 저작권 보호 이슈 순위발표에 의하면, 2018년도에는 AI·빅데이터와 유튜브·OTT·IP TV가 선정되었으며, 2019년도에는 SNS(유튜브·페이스북 등)와 1인 미디어 방송이 차지하였다[1].

과거에는 정보나 콘텐츠를 전달하기 위한 매체로 전화·TV·신문·라디오 등을 사용하였다면, 오늘날은 정보통신 기술의 발달로 컴퓨터·스마트폰·Tablet PC 등의 매체로 변화하고 있다[2]. 이러한 정보와 콘텐츠는 P2P, 소리바다, 블로그, 미니홈피 등의 대중화로 빠르게 공유되었고, 인터넷 속도가 빨라지면서 동영상 플랫폼 공유방식이 대중화되었다.

대표적인 스트리밍 동영상 플랫폼으로 Netflix, YouTube, Afreeca TV, Facebook 등이 있다. 해당 서비스들은 영화·방송·음악 등 다양한 콘텐츠의 접근뿐만 아니라 커뮤니티를 형성하여 실시간으로 소통한다. 또한, 이들은 콘텐츠를 파일 형태로 공유 및 저장하지 않고 방송 종료 시 사라지는 휘발성 방송 형태이거나 사이트에 업로드된 콘텐츠를 시청할 수있는 형태이다. 스트리밍 서비스를 이용하는 사용자의 PC에 영상 파일 자체는 존재하지 않으나, 영상을 시청하게 되면, 사용자의 의도와 상관없이 캐시 형태로 기록된다. 이 캐시 파일은 영상에 대한 데이터를 그대로 가지고 있으므로 재조립하면 영상으로 복원할 수 있다[3]. 이러한 방식은 저작권이 포함된 영상의 경우, 저작권 침해에 심대한 위협을 끼칠 수 있다.

사용자가 온라인 스트리밍을 시청할 경우, PC에 남는 캐시 파일들을 모아 영상 파일로 복원하는 기술은 G.Horsman에 의해 제안되었다[3]. 그의 논문에서는 YouTube와 Facebook에서 불법 콘텐츠를 스트리밍할 때 남는 캐시들을 확인하였고, 재조립하는 방법을 설명하였다. 이후, 6가지 스트리밍 서비스 (Twitch, YouTube Live, Mixer, Ustream.tv, Smashcast.tv, Younow)를 더 추가하여 재조립 가능성에 대하여 설명하였다[4]. G.Horsman은 온라인 스트리밍 서비스를 선정하여 사용자가 불법 콘텐츠(살인 영상, 아동 포르노 음란물 등)를 시청하였을 때, 사용자의 PC에 기록된 캐시 파일들이 시청의 흔적 및 단서로 이용될 수 있다고 하였다. 파일을 재조립하여 영상을 복원하면, 사용자가 어떤 영상을 시청하였는지 확인할 수 있다. 이러한 방식은 디지털 포렌식 수사관점에서 유용한 접근법이다[5]. 하지만 그 외 다른 저작권을 지닌 영상물이 무분별하게 복원이 될 수 있다는 점에 대해서는 고려하지 않았다.

본 논문에서는 단순 영상시청만으로도 생성되는 캐시 파일이 저작권을 침해할 수 있다는 점에 대하여 다루고자 한다. 캐시 재조립을 통한 영상복원 기술은 불법 복제물을 양산하는데 악용될 수 있으므로 저작권 보호를 위한 방안이 필요하다. 온라인 스트리밍 서비스는 동영상 플랫폼의 활성화와 편의성으로 사용자가 기하급수적으로 늘고 있으며 이는 사용자가 많아질수록 광고, 유료결제 서비스, 협찬 등을 통하여 수익을 창출한다. 이러한 구조 때문에 스트리밍 서비스상에서 저작권 침해의 파급효과는 커질 수밖에 없으며 동영상 플랫폼이 활성화될수록 금전적 피해뿐만 아니라 플랫폼 자체를 붕괴시킬 수 있는 위험성 또한 존재한다. 따라서 저자는 국내에서 다루는 주요 스트리밍 서비스를 선정하고 이들을 1인 미디어 방송과 유료 콘텐츠 방송으로 나누어 영상을 시청하였다. 이후, 캐시 파일을 통한 재조립 가능성 유무와 특징들을 분석하고 영상 복원하는 실험을 진행하였다.

실험한 결과로는 주요 스트리밍 서비스 중 다수의 서비스에서 캐시 파일을 생성하고 있었고, 생성된 캐시 파일로 시청한 영상을 복원할 수 있었다. 이처럼, 시청한 영상을 무수히 재생산하고 영상을 무료로 배포한다면, 해당 영상에 대한 서비스 이용료를 지급하지 않고 저작물을 이용할 수 있게 된다. 이러한 침해를 줄이기 위해, 보호 방안에 대해서 생각해볼 필요가 있다. 본 논문에서는 스트리밍되는 저작물을 보호하기 위한 두 가지 방안을 제안한다. 첫 번째, 온라인스트리밍 서비스 제공자가 웹 브라우저상의 Cache-Control 값을 변경하여 캐시가 저장되지 않도록 하는 것이다. 두 번째, 영상에 워터마크를 삽입하여 침해자를 추적하는 방안을 제시하고자 한다.

II. 온라인 스트리밍 서비스

2.1 스트리밍 서비스 종류와 특징

OTT(Over The Top) 서비스는 기존의 통신 및 방송 사업자와 더불어 제3 사업자들이 인터넷을 통해 드라마나 영화 등의 다양한 미디어 콘텐츠를 제공하는 서비스를 말한다[6]. 과거에는 유선 셋톱박스를 이용하여 케이블이나 IPTV 시청이 가능하였지만, 현재는 셋톱박스 외에도 스마트폰, 스마트TV, 태블릿, PC 등의 디지털 기기를 통하여 다양한 콘텐츠를 접할 수 있게 되었다. 대부분 OTT 서비스에서는 영화, TV 프로그램(드라마, 예능, 애니메이션), 짧은 방송 등을 제공한다. Facebook Live나 Instagram GT V는 계정을 활용하여 동영상 콘텐츠를 업로드하며, 사람들과 실시간으로 소통한다. YouTube나 Naver TV 그리고 Kakao TV의 서비스에서는 TV 프로그램의 짧은 방송(Short Media)을 업로드한다. SPO TV365, SPOTVNOW는 스포츠방송 및 케이블 방송을 실시간 생중계한다. 1인 방송을 제공하는 서비스나 개별적인 업로드가 가능한 스트리밍 서비스의 경우, 저작권이 포함된 영상들이 무분별하게 배포될 위험이 존재하므로 해당 내용을 Table 1.과 같이 정리하였다. 더 나아가, 각 스트리밍 서비스마다 제공하는 영상에 대한 특징들도 정리하였다.

Table 1. Classification of Online Streaming Services

JBBHCB_2020_v30n4_559_t0001.png 이미지

스트리밍 서비스를 구성하는 요소는 크게 제공자와 시청자(사용자)로 나눌 수 있다. Fig. 1.에서 볼 수 있듯이 제공자가 영상을 생성하여 서비스별로 서버에 업로드하면, 시청자는 업로드된 영상을 볼 수 있다. 2.2 전송방식에 따른 분류 스트리밍 서비스의 동작 방식은 온라인 스트리밍 서비스마다 다르게 운영한다. 대표적인 동작 방식은 3가지이다.

JBBHCB_2020_v30n4_559_f0001.png 이미지

Fig. 1. Conceptual diagram of how streaming services work

1) Progressive Download

이들의 운영 방식은 시청자가 영상을 요청하면, 웹서버로부터 바로 다운로드를 한다. 파일 전체가 도착하기 전에 일부 도착한 파일들을 즉시 재생할 수 있어서 스트리밍과 매우 유사하다. 대표적인 사례로는 YouTube나 CNN 서비스가 있다[7].

JBBHCB_2020_v30n4_559_f0002.png 이미지

Fig. 2. Progressive Download operation

2) RTP(Real Time protocol) Streaming

실시간으로 데이터를 전송하는 방식이다. 서버에는 서로 다른 bit-rate로 인코딩한 여러 비디오 파일을 저장하고 있다. 이들은 작은 프레임으로 분리되어 있으며, 분리된 비디오 파일 덕분에 화질 교체가 가능하다는 장점이 있다. 이러한 스트리밍 방식은 시청자 가 영상을 요청하게 되면, 처음부터 기다리지 않고 시청자가 원하는 부분 영상시청이 가능하다. 이는 여러 개로 분리된 프레임에서 시청하고자 하는 부분에 근접한 프레임을 보냄으로써 빠르게 시청할 수 있도록 한다. 주로 VOD 서비스, 생중계방송에서 활용된 다[8][9].

JBBHCB_2020_v30n4_559_f0003.png 이미지

Fig. 3. RTP Streaming operation

3) Adaptive Bit Rate Streaming

서버에서 서로 다른 bit-rate로 인코딩한 3~4개의 비디오 파일을 저장하고 있으며, 이들은 작은 조각 단위로 영상을 저장한다. 해당 영상을 시청하게 되면, 조각된 영상들을 연속적으로 붙여서 플레이할 수 있다. 이들은 사용자 대역폭 환경을 스스로 인지하여 그에 맞는 스트리밍을 자동으로 보내준다.

JBBHCB_2020_v30n4_559_f0004.png 이미지

Fig. 4. ABR Streaming operation

예를 들어, 서버에서 저장하고 있는 3개의 인코딩 비디오 파일이 고화질, 일반화질, 저화질이라고 한다면 해당 영상 요청 시 저화질을 재생시킨다. 이에 문제가 없으면 그 한 단계 위인 일반화질을 재생시키고, 만일 해당 영상으로 사람들이 접속을 많이 하는 경우, 한 단계 아래인 저화질로 갔다가 대역폭이 안정적으로 변하면 고화질까지 올라가게 된다. 이렇게 대역폭 환경을 스스로 인지하여 영상을 끊김 없이 스트리밍을 해주는 방식이다[8]. 주로 HLS(Http Liv e, Streaming, Apple), HDS(Http Dynamic S treaming, Adobe), SSS(Silverlight Smooth Streaming, Microsoft)에서 활용하고 있으며, 최근에 YouTube도 이 방식을 채택하여 운영하고 있다.

이러한 Streaming 동작 방식은 네트워크 속도를 고려하여 작동되며, 작은 조각으로 나뉜 압축파일을 서버에 저장한다. 이를 클라이언트 측으로 보낼 때는 조각 파일이 이어질 수 있도록 앞과 뒤 파일에 대한 정보를 같이 전송한다. 조각 파일은 Fig. 5.처럼 재조립을 통하여 영상복원이 가능하다.

JBBHCB_2020_v30n4_559_f0005.png 이미지

Fig. 5. Reassembling web browser cache (Chrome)

스트리밍 서비스에서 제공하는 동영상마다 다른 미디어 컨테이너 포맷의 형태로 제공한다. 영상을 제공한 자가 어떤 인코딩 방식을 사용했는지에 따라서 달라지며, 한 스트리밍 서비스에서 다수의 컨테이너 포맷 형태가 발견될 수 있다. 각 컨테이너 포맷들을 아래와 같이 정리하였다.

2.2.1 MPEG-4 (mp4,m4s)

MPEG-4는 영상 및 음성을 디지털 데이터로 변환하여 저장하는 규격이다. 주로, 저속회선에서 사용할 수 있게 한 고압축용 동영상 압축 표준이며, 초저속에서 초고속에 이르는 광범위한 응용에도 적용할 수 있다[10]. 대다수 스트리밍 서비스에서 이 컨테이너 포맷을 활용하고 있으며, 실험하는 도중에 많이 발견된 포맷 형태이다.

2.2.2 Webm/Weba

개방형 고화질 영상 압축 형식의 영상 포맷이며, 2010년 5월에 구글에서 개발하였다. webm은 오직 웹상에서만 작동하는 동영상 코덱이므로 HTML5를 기반으로 동작한다[11]. Youtube 스트리밍 서비스에서 사용되고 있다.

2.2.3 TP/TS

MPEG-2 시스템 표준에서 정의한 포맷으로, 복수의 프로그램을 하나의 비트열(transport stream) 로 다중화 전송하여 디지털 TV 방송 등에 적합하다[12]. 특징은 분할된 파일로 존재하더라도 재생할 수 있으며, 주로 Dailymotion이나 Vimeo 스트리밍에서 이용되고 있다.

2.2.4 기타

그 외에도 mov, wmv, 3gp가 존재한다. mov는 퀵타임(Quicktime) 멀티미디어 파일 포맷을 위한 파일 확장자로, 애플이 개발한 멀티미디어 구조다. w mv는 마이크로소프트에서 개발한, 인터넷상에서 멀티미디어 소스를 실시간 재생이 가능한 스트리밍용 오디오/비디오 파일 포맷 및 플레이어이다. 3gp는 3세대 휴대전화기에 사용하도록 만들어진 멀티미디어 컨테이너의 형식이다[13].

2.3 시청자 측면에서의 동작 원리

제공자가 영상을 스트리밍 서버로 업로드하면, 서버에서는 영상을 작은 조각들로 저장한다. 해당 영상을 시청자가 요청하면, 서버에서는 저장된 작은 조각들을 시청자 PC로 보낸다. 이를 받는 시청자 PC에서는 받음과 동시에 압축을 풀어서 재생시킨다. 이 과정에서 시청자 PC에 조각 데이터를 받았다는 흔적이 캐시 파일로 기록된다. 캐시를 사용하는 이유와 원리는 다음과 같다. 웹 서버에는 무수히 많은 객체(동영상·음악·사진·글)가 존재한다. 사용자가 웹 서버에 접속하여 보고자 하는 자료를 요청하면, 사용자 PC에서는 서버상에 존재하는 하위 집단 자원을 내려받아 브라우저로 업로드한다. 이 과정은 웹 서버에 존재하는 내용을 보기 위해서 시간이 많이 소비되며, 비효율적인 작동을 한다. 이 시간을 단축하기 위해 캐시 기능이 사용된다. 처음에 웹서버로 접속하게 되면 Cache Miss가 발생한다. Cache Miss가 발생한 PC에서는 웹서버 상 안에 존재하는 하위 집단 자원을 모두 하드디스크에 저장하는 과정을 거친다. 저장이 완료되면, PC는 저장한 자원들을 브라우저에 업로드한다. 이후, 웹 서버로 재접속하게 되면 PC에서는 Cache Hit을 발생시킨다. Cache Hit이 발생한 PC에서는 하드디스크에 저장된 자료를 이용하여 빠르게 브라우저로 업로드 시킨다. 캐시 기능을 이용하면 처음 접속했을 때 보다 빠른 속도로 웹사이트에 접속할 수 있다.

온라인 스트리밍 서비스 이용 시에도 캐시 기능이 사용되며, 파일은 특정 경로에 저장된다. 이번 실험에 사용한 웹 브라우저 Chrome의 캐시 저장 경로는%LocalAppdata%\Google\Chrome\User Data \Default\Cache이다.

III. 웹 브라우저 캐시 재조립을 통한 스트리밍 영상복원

캐시 파일을 재조립하여 영상으로 복원하는 방법은 기존 논문에서 사용한 방법과 같다[3]. 대상 서비스는 기존 논문에서 7개 서비스를 다뤘다면, 본 논문에서는 Table 2.에 정리한 것과 같이 23개의 스트리밍 서비스를 다룬다. 재조립하는 방법도 기존 논문에서 사용한 방법 외에 다른 재조립 방법을 분석하여 추가 하였다.

Table 2. List of online streaming services

JBBHCB_2020_v30n4_559_t0002.png 이미지

3.1 실험 환경

각 서비스를 재생하기 위해 Chrome 브라우저를 사용하여 실험하였다. 실험 시 사용한 OS는 Windows 10 Pro (64-bit) 1809이고, 웹 브라우저는 Chrome(Ver 78.0.3904.87) 64-bit이다.

3.2 실험 방법

본 논문에서 실험한 방법은 Fig. 6.에 순서도로 간략하게 표현하였다. ‘target Streaming Service’를 먼저 선정한 후, ‘target Streaming Service’에서 시청한 영상이 캐시 파일에 존재하는지를 확인해야 한다. 이후, 확인과정이 완료된 캐시 파일은 재조립 특징에 맞춰서 영상복원을 진행한다. 만일, 재조립 과정 중 파일이 손실될 경우, 영상복원이 안 될 수 있다. 이런 경우, 다시 캐시 파일을 분석하고, 순서대로 나열되어 있는지를 확인해야 한다. 본 논문에서 스트리밍 서비스를 실험한 과정을 Fig. 5.에 간략하게 표현하였으며, Step 별로 정리하였다.

JBBHCB_2020_v30n4_559_f0006.png 이미지

Fig. 6. A flowchart of reassembling cache file in each streaming service

Step 1) Chrome 캐시 저장 경로에 저장되어 있던 캐시 파일 모두 삭제

Step 2) 실험 환경 내에서 스트리밍 서비스에 업로드된 영상 재생

Step 3) Nirsoft사의 ChromeCacheView(ver sion 1.90)를 이용하여 Chrome 캐시 저장 경로에 저장된 캐시 파일들을 추출

Step 4) 추출한 조각난 형태의 캐시 파일들을 H xD Hex editor(version 2.2.1.0)를 이용하여 재조립하여 영상 복원

실험은 서비스별로 Step 1~4 과정을 반복하며 진행한다. Step 4가 끝난 다음 Step 1에서 캐시 파일을 삭제한 이유는 각 스트리밍 영상을 재생했을 때 남는 캐시를 정확하게 식별하기 위함이다.

3.3 실험 결과

영상을 스트리밍하거나 라이브 스트리밍을 시청했을 때 캐시 파일이 남는 서비스가 다수 존재하였다. 외국 서비스 대부분은 캐시 파일이 거의 기록되지 않았다. 하지만 국내 서비스 대부분은 캐시 파일이 기록되었고, 기록된 캐시를 재조립하면 영상복원이 가능하였다. 재조립 가능한 서비스는 Appendix A에 정리하였다.

3.3.1 유료 콘텐츠

유료 콘텐츠를 제공하는 스트리밍 서비스는 YouTube, WatchaPlay, Tving, Wavve, Lotte Cinema VOD, 시원스쿨, 해커스, Orentec media 등이 있다. 이들을 교육 방송과 영화·드라마로 구분하였다.

1) 교육 방송

인터넷 교육 방송사이트는 별도의 플레이어를 사용하고 있다. 해커스는 AquaNManager를 사용하며, 시원스쿨은 StarPlayer을 사용한다. 그 외에도 WindowmediaPlayer, 맥스플레이어 등이 존재한다. 해당 사이트에서 유료영상을 구매한 후, 시청했을 때 별도의 플레이어가 작동되어 캐시 확인이 불가능하였다. 실험은 플레이어가 작동되지 않는 영상을 확인하여 진행하였다.

Orentec media 사이트는 유료영상을 구매하면, 구매한 시점부터 6개월간 수강할 수 있다. 영상시청할 때, 사이트에서는 2가지의 플레이어 방식을 제공한다. 하나는 Window의 플레이어를 이용한 영상 제공 방법과 두 번째로는 웹 브라우저에서 영상을 제공하는 방법이다. 해당 실험을 진행했을 때, 두 번째 방법을 선택하였다. 이후, 시원스쿨 사이트 내에서 무료로 제공하는 영상을 시청하였다. 이는 플레이어를 사용하지 않고, 웹 브라우저에서 동영상을 재생하는 방식이다.

JBBHCB_2020_v30n4_559_f0007.png 이미지

Fig. 7. Target site: ‘SIWONSCHOOL’

실험 결과는 해커스와 시원스쿨에서 유료영상 확인이 불가능하였다. 하지만 무료로 배포된 영상은 모두 재조립 가능하였고, 영상복원도 가능하였다. Orentec media 사이트는 무료, 유료 모두 영상복원이 가능하였다.

2) 영화·드라마

WatchaPlay, Tving, Wavve, Lotte Cinema VOD는 영화·드라마를 제공한다. 유료영화·드라마를 시청하고 생성된 캐시 파일을 확인하였다. 실험 결과는 Lotte Cinema VOD를 제외한 WatchaPlay, Tving, Wavve에서 영상복원이 가능하였다.

3) 프리미엄권

YouTube Premium 구매 후, 영상물을 확인하였다. 광고영상 시청 기록이 없을 뿐 시청한 영상은 복원할 수 있었다. 반면에 YouTube에서 제공하는 유료영화를 시청하고 생성된 캐시 파일을 분석한 결과, 캐시 파일은 일반 영상처럼 기록되고 순서대로 재조립할 수 있는 형태였지만, 재조립한 영상은 재생 되지 않았다,

3.3.2 불법 사이트 실험 결과

1) 생중계 사이트

SPOTV365는 스포츠방송, 케이블 방송, 영화를 실시간으로 생중계하는 사이트이다. 이전에는 Gogo TV로 운영하였으며, 현재는 GogoTV를 폐쇄하고 S POTV365로 변경하여 운영을 지속하고 있다. 이전 GogoTV에서 획득한 캐시 파일을 확인하여 같은 사이트임을 확인할 수 있었다. 변경된 사항을 Fig. 8.에 정리하였다.

JBBHCB_2020_v30n4_559_f0009.png 이미지

Fig. 8. SPOTV365 Before&After

2) 링크사이트

링크사이트는 마이비누닷컴, 코리아영화, 천사티비, 다나와티비 등이 존재한다. 이들은 무료로 드라마·예능·영화를 제공한다. 링크사이트의 대표적인 예로 다나와티비를 선정하였다.

링크사이트에 대해 자세히 설명하자면, 해당 영상은 다나와티비 사이트 내에 존재하지 않는다. 이들의 영상은 Openload, RapidVideo, StreamMango, Ultravideo, Goovideo, K-video 등의 외국 서버에 저장되어 있다. 각 영상에 대한 링크들은 다나와 티비 게시물에 업로드한다. 예를 들면, A라는 프로그램의 1회 영상을 보고자 한다면 다나와티비에는 ‘A 프로그램 1회 영상 다시 보기’가 적혀있고, 그 제목을 클릭하면 여러 링크가 기록되어 있다.

각 서버에서 제공하는 영상별로 캐시 파일 형태가 다르게 기록되며, 특징을 정리하였다. 첫 번째로는 일반 캐시 파일과 같이 특정 값을 차례대로 나열하여 복원하는 방법이다[3]. 두 번째로는 일반 캐시 파일과 같이 특정 값을 순차적으로 나열해도 복원이 되지 않는 파일이다. 특정 값이 0번부터 시작하는 캐시 파일이지만, MPEG의 header 부분이 존재하지 않는 것으로 확인되었다. 다시 캐시 파일을 수집하여 영상의 header 부분이 존재하는 캐시를 분석하였고, ‘init.mp4’라는 파일이 header 부분임을 확인하였다. 해당 파일을 조립한 파일 앞부분에 붙이면, 영상 파일로 복원된다. 세 번째로는 PNG 파일 형태인 영상 파일이다. Fig. 8.에서 볼 수 있듯이 캐시 파일은 PNG 파일로 보이지만, 앞부분에 PNG 영역을 제거하면 영상 파일로 복원할 수 있다.

이 스트리밍 사이트를 통해서 한 사이트에서도 다양한 캐시 파일을 남길 수 있고, 영상 파일처럼 보이지 않는다고 할지라도 영상 파일로 복원될 수 있음을 확인하였다. 이들 외에도 캐시를 재조립하여 영상을 복원할 수 있는 스트리밍 서비스도 다소 존재하였다.

IV. 온라인 스트리밍 서비스 환경에서 저작권 침해 가능성

온라인 스트리밍 서비스는 저작물의 저작권을 보호하기 위해 생겨난 서비스이다. 하지만 이를 오히려 악용하는 사례가 증가하고 있다. 2018년도 불법 복제물에 관해 한국저작권보호원에서 조사한 결과 YouTube에서 8,833건, 네이버에서 3,791건이 발견되었다[14].

두 번째로는 다음 tv팟에서 불법 스트리밍된 판례(2015나2049406판결)가 있다.

한 이용자가 유료온라인 강의를 결재하여 수강 권한을 획득하였다. 이는 금액에 따라 수강하는 기간이 변경되며, 높은 액수를 지급할수록 수강할 수 있는 기간이 연장된다. 이러한 방식은 동영상의 횟수 제한없이 기간 동안 무제한으로 재생할 수 있다. 이러한 특징을 이용하여 이용자가 강의를 녹화한 후에 녹화된 영상물을 다음 tv팟이라는 온라인 스트리밍 서비스를 이용하여 영상을 실시간으로 방송하였다. 판례에서는 저작권이 존재한 영상을 정당한 비용을 내지 않는 시청자에게 제공하는 것은 엄연한 불법행위라고 판결하였다.

기존에는 영상을 파일로 공유하여 다운로드 형태를 나타내고, 이를 다운로드한 흔적을 추적할 수 있었다. 하지만 스트리밍으로 시청하는 경우, 파일의 형태를 나타내지 않아 이를 시청했다는 사실을 확인하기 어렵다. 그뿐만 아니라 저작권 관점에서도 침해되는 사례로, 이를 보호하기 위해 영상녹화를 방지하는 방법이나, 영상을 보호하는 방안이 필요하다.

사이트 자체가 불법인 SPOTV365는 케이블이나 이외 스포츠방송들을 실시간으로 송출한다. 이처럼, 저작권으로 보호받아야 하는 저작물들이 보호받지 못하고 있다. 불법 사례들을 Fig. 9.에 정리하였다.

JBBHCB_2020_v30n4_559_f0008.png 이미지

Fig. 9. Target site: ‘DanawaTV’

이뿐만 아니라, 본 논문에서 실험한 캐시 재조립을 통하여 영상복원이 가능하다는 점이다. 이는 불법적인 방법으로 영상을 재생산할 수 있으며, 재조립 순서를 파악하고 알고리즘을 설계하여 캐시들을 이어붙이면, 손쉽게 영상을 획득할 수 있다. 이는 다른 곳으로 유통될 위험성이 존재하며, 녹화하는 방식과 다른 방법으로 불법 복제물이 생성될 수 있다.

Table 3. Examples of illegal Streaming services

JBBHCB_2020_v30n4_559_t0003.png 이미지

V. 온라인 스트리밍 서비스의 저작권 보호를 위한 기술 제안

저작권을 보호하기 위한 기술적 제안은 크게 2가지로 나눌 수 있다. 첫 번째 방법은 캐시 파일의 저장을 막는 방법이다. 캐시는 웹 서버에 재접속할 때, 웹 서버에 변경된 내용이 존재하는지를 확인한다. 이 작업은 저장된 캐시 파일과 비교하여 업로드를 진행하며, 저장된 캐시 파일을 관리하는 역할은 Cache-c ontrol이다. 그래서 Cache-control 값을 통해 기록을 막을 수 있다. 두 번째로는 네트워크 속도로 인하여 캐시 파일을 사용해야 한다면, 영상에 워터마크를 삽입하여 추적하는 방안을 제안한다.

5.1 Cache-Control 값 변경

Cache-Control 값을 변경함으로 캐시 저장 여부와 기간을 다르게 설정할 수 있다[15]. 이에 대한 설명은 Table 5.에 정리하였다. Cache-control 값이 No-store로 설정된 경우에는 캐시가 저장되지 않는다[16][17]. Table 4.는 cache-control 값을 확인한 내용이다. 웹 브라우저 Chrome을 통하여 Cach e-control 값을 분석하였다. Cache-control 값은 웹 브라우저 개발자도구에서 Network 부분에 Response Headers 하위항목에 존재한다. Chrome에서 확인된 서비스 중 no-store를 제외한 나머지는 재조립할 수 있다. 확인할 수 없는 6개는 Cache-control 값이 보이지 않았으며, 이들 중 Huya, Embed, watchasian.to만 재조립할 수 없고 나머지 서비스는 재조립할 수 있었다.

Table 5. Cache Control Values of Online Streaming Services

JBBHCB_2020_v30n4_559_t0005.png 이미지

Table 4. Cache-control setting

JBBHCB_2020_v30n4_559_t0004.png 이미지

5.2 디지털 워터마킹 삽입

디지털 워터마킹은 디지털 기기로 생성된 사진이나 영상에 사람의 눈으로 식별할 수 없는 정보를 삽입하는 기술을 말한다. 이러한 방법은 저작권 보호뿐 아니라 위조나 변조를 판별할 수 있으며, 불법으로 영상을 복제한 사용자를 추적할 수 있다. 삽입할 때는 영상들을 프레임별로 나눠서 프레임에 워터마킹을 삽입한다. 이때 프레임은 총 3가지로 나뉘며, I-frame과 P-frame, B-frame으로 구성된다. I-frame은 다른 이미지를 참조하지 않으며 독립적이다. 영상 중 가장 첫 번째 프레임이며, 영상을 복원할 때도 I-frame이 앞부분에 존재해야 나머지 frame들도 복원할 수 있다. P-frame은 Predictive로 frame 사이를 예측한다는 의미이며, 이전의 I-frame을 참조하여 영상에 차이가 나는 부분을 데이터로 저장하여 움직임을 나타내는 frame이다. B-frame은 I-frame과 P-frame 사이에 있으며 두 frame을 모두 참조하여 움직임을 저장한 frame이다.

워터마킹기술에는 시간의 순서대로 웨이블릿 변환을 하여 워터마킹을 삽입하는 방법이 존재한다. 비디오의 장면들을 프레임별로 각각 나눈 다음에, 각 프레임에서 시각적으로 유사 또는 같은 부분에 워터마킹을 삽입한다[18].

다음은, DCT 블록 사이의 에너지 차를 이용하여 워터마크를 삽입하는 방식이다. 제안된 방법에는 압축된 데이터 스트림에서 고주파 DCT 계수를 선택적으로 폐기하는 방법이다. 영상에서 I-frame만 획득한 후, 프레임마다 DCT 계산을 위해 n개의 블록(8x 8)으로 나눈다. 이후, 지그재그 스캔을 통해 각각의 에너지 차를 구해서 고주파 계수를 제거함으로 워터마킹을 삽입할 수 있다. 이 워터마킹의 장점은 압축된 영상 데이터에 실시간 삽입이 가능하다는 점이다[19].

최근에는 주파수 영역에 워터마킹기술을 접목하는 연구가 많이 진행되고 있다. DCT를 계산하기 위해 8x8로 나눈 이미지에서 지그재그 스캔을 통하여 DCT 계수에 번호를 매긴다. 이후, 고주파수, 중간주파수, 저주파수로 분류하여 저주파수 성분에 워터마킹을 삽입한다[20]. 이 외에도 다양한 워터마킹기술이 존재한다.

스트리밍 서비스에서 실제 사용되고 있는 대표적인 사례가 존재한다. ‘Netflix’에서 프리미엄 콘텐츠에 포렌식 워터마킹을 적용하여 해당 서비스의 최종 사용자 정보를 실시간으로 삽입해 불법 유출을 추적하고 있다. 이 솔루션은 회원 프로필을 기반으로 시청자 IP 및 기타 정보를 동적으로 추적한다[21].

VI. 결론

온라인 스트리밍 서비스 제공자가 서비스 속도 향상을 위해서 웹 캐시를 로컬 기기에 저장하는 형태로 관리한다면 스트리밍했던 영상을 복원할 가능성이 있다. 본 논문에서 설명한 실험 결과에서 본 것처럼 현재 서비스되고 있는 스트리밍 서비스 중에 대다수 서비스가 캐시를 남기도록 설정되어 있음을 알 수 있다. 또한, 실제 캐시를 각 규칙에 맞게 재조립하여 영상을 복원할 수도 있다.

캐시 재조립 기술은 저작권 침해에 악용될 가능성이 있다. 하지만 디지털 포렌식 관점에서 이 기술은 온라인 스트리밍 서비스를 이용하여 불법 콘텐츠를 시청했다는 사실을 입증할 수 있는 증거를 확보하는데 도움을 줄 수 있다. 이는 불법 콘텐츠를 시청만 하더라도 처벌받을 수 있는 유럽과 같은 국가에서는 유용하게 사용될 수 있다. 앞으로, 유럽사법재판소의 판결처럼 온라인 스트리밍 서비스를 시청한 사람도 처벌할 수 있는 환경이 국내에도 조성된다면 국내 수사 기관에서도 이 기술을 유용하게 활용할 수 있을 것이다.

Appendix

References

  1. KOREA COPYRIGHT PROTECTION AGENCY, "Annual Report on Copyright Protection" https://www.kcopa.or.kr/lay1/bbs/S1T11C283/F/25/view.do?article_seq=943&cpage=1&rows=9&condition=&keyword=&show=&cat=, 2019
  2. Korea Consumer Agency, "Survey on Consumption of Media Type 1 Media Content. Survey Report." https://www.dbpia.co.kr/journal/articleDetail?nodeId=NODE07458061, 2017
  3. H. Graeme, "Reconstructing streamed video content: A case study on YouTube and Facebook Live stream content in the Chrome web browser cache." Digital Investigation, vol.26, pp.S30-S37, Jul. 2018. https://doi.org/10.1016/j.diin.2018.04.017
  4. H. Graeme, "Reconstructing cached video stream content:- Part 2", Digital Investigation, vol.31, pp. 200893, Dec. 2019. https://doi.org/10.1016/j.fsidi.2019.200893
  5. H. Graeme, "A forensic examination of the technical and legal challenges surrounding the investigation of child abuse on live streaming platforms: A case study on Periscope", Journal of Information Security and Applications, vol.42, pp. 107-117, Oct. 2018. https://doi.org/10.1016/j.jisa.2018.07.009
  6. Byung Hwan Bae, "Internet & Security Issue : 'Over the Top' Service" https://www.kisa.or.kr/uploadfile/201306/201306101739593444.pdf, 2013
  7. Chris Woodford, "Streaming media" https://www.explainthatstuff.com/streamingmedia.html, 2020
  8. Jeroen wijering, "What is video streaming?" https://www.jwplayer.com/blog/what-is-video-streaming, 2011
  9. Diyewar, Gaurav Shivdas, et al., "Online Video Streaming System." International Journal of Advanced Research in Computer Science, vol.4, no.2, pp. 106-108, Apr. 2013.
  10. Information and Communication Technology Glossary, "Streaming" http://www.ktword.co.kr/word/abbr_view.php?m_temp1=5591, 2018
  11. Webm wiki, "WebM Container Guidelines" https://www.webmproject.org/docs/container/, 2017
  12. Information and Communication Technology Glossary, "TS, MPEG-2 TS Transport Stream, TS Stream, TS Layer" http://www.ktword.co.kr/word/abbr_view.php?m_temp1=2869, 2014
  13. Information and Communication Technology Glossary, "MPEG-4, MPEG4 Moving Picture Experts Group 4 " http://www.ktword.co.kr/word/abbr_view.php?m_temp1=713&id=54&nav=2&m_search=MPEG-4, 2010
  14. Korea Copyright protection agency, "[Korea Copyright Protection Press Release] Survey on illegal distribution contents distribution" https://www.kcopa.or.kr/lay1/bbs/S1T12C38/F/38/view.do?article_seq=945&cpage=1&rows=10&condition=&keyword=&show=&cat=, 2019
  15. Wang, Zhen, et al., "How effective is mobile browser cache?." Proceedings of the 3rd ACM workshop on Wireless of the students, by the students, for the students., pp. 17-20, Sep. 2011.
  16. MDN contributors, "HTTP caching" https://developer.mozilla.org/en-US/docs/Web/HTTP/Caching, 2019
  17. Ilya Grigorik, "HTTP caching", https://developers.google.com/web/fundamentals/performance/optimizing-content-efficiency/http-caching?hl=ko, 2019
  18. Swanson, Mitchell D., Bin Zhu, and A hmed H. Tewfik. "Multiresolution scene-based video watermarking using perceptual models." IEEE Journal on selected areas in communications, vol.16, no.4, pp. 540-550, May. 1998. https://doi.org/10.1109/49.668976
  19. Langelaar, Gerrit C., and Reginald L. Lagendijk. "Optimal differential energy watermarking of DCT encoded images and video." IEEE Transactions on image Processing, vol.10, no.1, pp. 148-158, Jan. 2001. https://doi.org/10.1109/83.892451
  20. Fan, Hang-Yu, Zhe-Ming Lu, and Yong-Liang Liu., "A low-frequency construction watermarking based on histogram." Multimedia Tools and Applications, vol.79, no.9, pp. 5693-5717, Dec. 2019. https://doi.org/10.1007/s11042-019-08289-3
  21. Chung, Tae-Yun, et al., "Digital water marking for copyright protection of MPEG2 compressed video." IEEE Transactions on Consumer Electronics, vol.44, no.3, pp. 895-901, Aug. 1998. https://doi.org/10.1109/30.713211