웹사이트를 AI 스크래핑으로부터 보호하는 방법

AI 스크래핑 방지

현재 귀하의 웹사이트는 ChatGPT와 같은 대형 언어 모델 훈련을 위한 데이터 수집을 맡은 배고픈 AI 스크래퍼들에게 무제한 뷔페가 될 수 있습니다. 가치 있는 콘텐츠가 다음 AI 생성 답변이 되는 것을 원하지 않는다면, 지적 재산에 대한 이 새로운 위협으로부터 웹사이트를 보호해야 합니다.

목차

    1. 특정 AI 봇을 차단하기 위해 robots.txt 구성
    1. 속도 제한 및 IP 차단 구현
    1. CAPTCHA 및 기타 인간 검증 방법 사용
    1. 동적 콘텐츠 렌더링 기술 사용
    1. 콘텐츠 인증 및 게이트 액세스 설정
    1. 이미지에 워터마크 추가 또는 변형
    1. DMCA 삭제 요청 및 저작권 법 활용

AI로부터 스크래핑 방지하는 방법

웹사이트를 AI 스크래핑으로부터 보호하는 것은 생각만큼 어렵지 않습니다. 실제로 전통적인 웹 스크래핑에 맞서기 위해 사용된 여러 검증된 방법들은 AI 기반의 스크래핑에도 똑같이 효과적입니다.

1. 특정 AI 봇을 차단하기 위해 robots.txt 구성

robots.txt 파일은 원치 않는 크롤러, OpenAI 및 Anthropic에 속한 크롤러를 포함한, 에 대한 웹사이트의 첫 번째 방어선입니다. 이 파일은 Robots Exclusion Protocol을 구현하고 바람직한 봇에게 귀하의 사이트의 어떤 부분에 접근할 수 있는지 알려줍니다.

레딧 Robots Txt

robots.txt 파일은 웹사이트의 루트 디렉토리에서 찾을 수 있습니다. 없다면, 텍스트 편집기를 사용해 새로 만들 수 있습니다. 특정 AI 봇을 차단하려면 두 줄만 작성하면 됩니다:

User-agent: GPTBot  
Disallow: /

첫 번째 줄은 봇을 식별하고, 두 번째 줄은 페이지에 액세스하지 말라고 지시합니다. 위 예제에서는 OpenAI의 크롤러를 차단하고 있습니다. 차단을 고려해야 할 다른 AI 봇의 이름은 Google-Extended, Claude-Web, FacebookBot, anthropic-ai 등이 있습니다.

2. 속도 제한 및 IP 차단 구현

클라우드플레어 DNS 보호

속도 제한 및 IP 차단은 귀하의 웹사이트로 흐르는 트래픽을 모니터링하고 제어하여 작동합니다:

  • 속도 제한은 사용자가 (또는 봇이) 특정 시간 내에 할 수 있는 요청 수에 상한선을 설정합니다. 방문자가 이 한계를 초과하면 일시적으로 차단되거나 요청이 늦춰집니다.
  • IP 차단은 반면에 스크래핑 활동의 출처로 식별한 특정 IP 주소를 아예 금지할 수 있습니다.

이러한 기술을 구현하는 가장 쉬운 방법 중 하나는 인기 있는 콘텐츠 배달 네트워크(CDN) 및 보안 서비스인 Cloudflare를 사용하는 것입니다.

Cloudflare는 귀하의 서버와 인터넷 전체 사이에 위치하여 귀하의 웹사이트를 위한 보호막 역할을 합니다. 웹사이트를 Cloudflare 뒤에 배치한 후에는 사용자 친화적인 대시보드에서 속도 제한 규칙을 구성하고 IP 차단을 관리할 수 있습니다.

3. CAPTCHA 및 기타 인간 검증 방법 사용

CAPTCHA(완전 자동화된 공공 튜링 테스트)는 인간 사용자를 봇과 구분하기 위한 검증된 방법입니다. 이러한 도전 과제는 인간에게는 쉬운 작업이지만 간단한 AI 스크래핑 봇에게는 해결하기 어려운 것입니다. 예를 들어 이미지에서 물체를 식별하거나 왜곡된 텍스트를 해독하는 것 등이 있습니다.

CAPTCHA 데모

가장 인기 있고 동시에 효과적인 CAPTCHA 중 하나는 구글의 reCAPTCHA입니다. 사용하려면 reCAPTCHA 관리자 콘솔에 방문하여 API 키 쌍에 가입해야 합니다. 그런 다음 Advanced Google reCAPTCHA와 같은 워드프레스 플러그인을 사용하거나 공식 문서를 기반으로 한 맞춤형 구현을 만들 수 있습니다.

4. 동적 콘텐츠 렌더링 기술 사용

웹사이트를 AI 스크래핑으로부터 보호하는 또 다른 기발한 방법은 동적 콘텐츠 렌더링 기술을 사용하는 것입니다. 아이디어는 간단하지만 효과적입니다: AI 스크래핑 봇이 귀하의 사이트를 방문하면 가치 없는 콘텐츠 또는 아무 것도 받지 않으며, 일반 방문자는 올바르고 전체 콘텐츠를 보게 됩니다.

웹사이트 소스 코드 예

다음은 실제 사례에서의 작동 방식입니다:

  1. 서버가 사이트에 접근하는 에이전트를 식별하여 일반 사용자와 잠재적인 AI 봇을 구분합니다.
  2. 이 식별에 따라 서버가 자바스크립트 논리를 사용하여 제공할 콘텐츠를 결정합니다.
  3. 인간 방문자에게는 사이트의 전체 버전을 제공합니다. 봇에게는 다른 세트의 콘텐츠를 제공합니다.

AI 스크래퍼는 일반적으로 자바스크립트 코드를 처리하지 않기 때문에(오직 기본 HTML 콘텐츠만 처리함), 그들이 속아 넘어간 것을 인식할 방법이 없습니다.

5. 콘텐츠 인증 및 게이트 액세스 설정

AI 스크래퍼로부터 콘텐츠를 보호하는 가장 확실한 방법 중 하나는 단순히 콘텐츠를 디지털 게이트 뒤에 두는 것입니다. 결국, 이 봇들은 공개적으로 접근 가능한 것만 수확할 수 있습니다.

이 보호의 가장 간단한 형태는 사용자가 웹사이트의 특정 부분에 접근하기 위해 로그인을 요구하는 것입니다. 이것만으로도 AI 스크래퍼 봇을 저지할 수 있으며, 일반적으로 계정을 만들거나 자신을 인증할 능력이 없습니다.

멤버프레스 플러그인 웹사이트

좀 더 나아가고자 하는 경우, 일부 또는 모든 콘텐츠를 유료 벽 뒤에 배치하는 것이 더 강력한 보호를 제공할 수 있습니다. 예를 들어, 워드프레스 사용자는 MemberPress와 같은 플러그인을 쉽게 사용하여 이를 구현할 수 있습니다.

물론, 보호와 접근성 간의 균형을 맞추는 것이 필요합니다. 모든 방문자가 콘텐츠에 접근하기 위해 계정을 만들거나 비용을 지불할 의향이 있을지는 확실하지 않습니다. 이 접근 방식의 타당성은 전적으로 귀하의 콘텐츠의 성격과 청중의 기대에 달려 있습니다.

6. 이미지에 워터마크 추가 또는 변형

디지털 워터마킹은 지적 재산 보호를 위한 고전적인 기술입니다. 그러나 이제 AI 시대의 도전에 맞게 변화하고 있습니다. 이 분야에서 등장하는 한 가지 기술은 데이터 변형으로, 이는 인간에게는 인식할 수 없는 미세한 변화를 콘텐츠에 주어 AI 시스템이 스크래핑하거나 분석하는 데 혼란을 주거나 방해하는 것입니다.

Glaze과 같은 도구는 이미지를 변경하여 AI 모델이 정확하게 처리하기 어렵게 만들며, 인간 사용자에게는 여전히 정상으로 보입니다. Nightshade 또한 데이터를 변형하여 AI 훈련에 적극적으로 간섭합니다.

Nightshade 이미지 변형

이미지에 작은 변화를 주어 Nightshade는 AI 모델이 훈련 중에 만들었던 가정을 “깨뜨릴” 수 있습니다. 만약 AI 시스템이 이러한 변형된 이미지로부터 학습하려고 한다면, 정확한 표현을 생성하는 데 어려움을 겪을 수 있습니다.

이론적으로 귀하의 콘텐츠가 잘 워터마크되어 있거나 변형되었다면 여전히 스크래핑당할 수 있지만, AI 회사들은 귀하의 콘텐츠를 훈련 데이터에 포함할 가능성이 낮아질 것입니다. 그들은 심지어 앞으로 귀하의 사이트에서 스크래핑을 피하려고 할지도 모릅니다.

7. DMCA 삭제 요청 및 저작권 법 활용

이전 방법들은 기술적 조치를 통한 AI 스크래핑 방지에 중점을 두고 있지만, 때때로 디지털 밀레니엄 저작권법(DMCA) 삭제 요청과 저작권 법을 활용하는 것이 더 나을 수 있습니다.

만약 귀하의 콘텐츠가 스크래핑되어 무단으로 사용되고 있다는 사실을 발견한다면, DMCA 삭제 요청을 발송할 수 있습니다. 이는 귀하의 저작권 자료를 웹사이트나 플랫폼에서 제거해 달라는 공식적인 요청입니다.

DMCA 삭제 요청 샘플

귀하의 DMCA 삭제 요청이 수용되지 않는 경우(그리고 수용되지 않을 것에 대비해야 합니다), 소송을 제기하여 문제를 확대할 수 있으며, 그렇게 한 사람이 처음이 아닐 것입니다.

OpenAI와 Microsoft는 현재 수많은 뉴스 기관들에 의해 저작권 위반으로 소송을 당하고 있습니다. 이러한 소송은 AI 회사들이 모델을 훈련하기 위해 저작권 자료를 무단으로 사용하고 있다고 주장합니다. 이러한 사건들의 결과는 아직 미지수이지만, 다른 사람들도 따를 수 있는 길을 열어줍니다.

커버 이미지는 DALL-E를 사용하여 생성되었습니다. 모든 스크린샷은 David Morelo가 촬영했습니다.