전체 글

봇 탐지는 행동 기반으로 바뀌었습니다. 대부분의 스크래퍼는 그대로입니다.

봇 탐지가 IP 차단에서 TLS 지문, 브라우저 신호, 행동 분석으로 전환되었습니다. 대부분의 스크래핑 설정은 엉뚱한 곳에서 싸우고 있습니다.

1월, 1,600만 개의 request가 IP 차단의 종말을 증명했습니다

2026년 1월 주요 이커머스 플랫폼에 스캘핑 공격이 발생했습니다. 1,600만 개의 request가 390만 개의 고유 IP 주소에 분산되었습니다. IP별 rate limit으로는 이를 막을 수 없었습니다. 이 공격이 성공한 것은 코드가 정교해서가 아닙니다. IP 규모가 너무 방대하여 기존 탐지 방식이 무의미해졌기 때문입니다 (SecurityBoulevard, March 2026).

이 사건은 안티 봇 업계가 오랫동안 주장해 온 바를 증명했습니다. IP 평판만으로는 사람과 봇을 구분할 수 없습니다. 방어자가 발전했다면 스크래퍼도 발전해야 합니다.

IP 차단을 대체한 세 가지 계층

최신 봇 탐지는 세 가지 계층으로 작동합니다. 첫 번째 계층만 IP와 관련이 있습니다.

연결 핑거프린팅. request가 서버에 도달하기 전에 연결의 첫 번째 패킷은 request를 생성하는 HTTP 라이브러리를 식별하는 고유한 형태를 전달합니다. Python의 requests 라이브러리, Go의 기본 클라이언트, Node.js fetch는 각각 고유한 지문을 생성합니다. 안티 봇 시스템은 단일 header를 읽기 전에 이를 확인합니다. 서명이 실제 브라우저와 일치하지 않으면 연결 수준에서 차단됩니다 (Reddit r/programming).

브라우저 핑거프린팅. 이제 사이트는 브라우저 환경에서 300개 이상의 신호를 확인합니다. Canvas 렌더링, WebGL 출력, 오디오 컨텍스트, 설치된 글꼴, 화면 해상도, 시간대, GPU 정보 등이 포함됩니다. User-Agent 문자열은 스택에서 가장 중요하지 않은 신호입니다. Cloudflare, Akamai, DataDome은 페이지가 로드되기 전에 실행되는 JavaScript 챌린지를 통해 이를 수동적으로 수집합니다 (ScrapingBee, 2026).

행동 분석. 이는 가장 최신 계층이며 위조하기 가장 어렵습니다. 안티 봇 시스템은 이제 마우스 움직임, 스크롤 속도, 클릭 패턴, 타이핑 속도, 상호 작용 간의 타이밍을 추적합니다. 실제 사람은 마우스를 완벽한 직선으로 움직이지 않습니다. 멈추거나 버튼을 지나치거나 불규칙하게 스크롤합니다. 봇은 이런 행동을 전혀 하지 않거나 너무 완벽하게 수행합니다 (r/webdev, 2026).

대부분의 스크래핑 팀은 잘못된 싸움을 하고 있습니다

불편한 진실이 있습니다. 대부분의 스크래핑 팀은 여전히 IP 인프라에 주로 투자합니다. 더 큰 proxy 풀, 가정용 IP, 순환 게이트웨이 등에 투자합니다. 이것도 필요한 부분입니다. IP 평판은 여러 신호 중 하나로서 여전히 중요합니다.

하지만 연결 수준의 지문이 "Python 스크립트"임을 나타내거나 headless 브라우저가 navigator.webdriver을 통해 자동화 플래그를 누출한다면 10,000개의 가정용 IP를 구매해도 소용이 없습니다. 잘못된 계층에 돈을 쓰고 있는 것입니다.

34개의 프로덕션 스크래퍼를 구축한 개발자가 이 문제에 대해 글을 썼습니다 (Dev|Journal, March 2026). 튜토리얼 수준의 스크래핑과 프로덕션 환경에서 작동하는 스크래핑 간의 격차는 DOM 선택자가 아니라 연결 지문과 마우스 움직임을 분석하는 안티 봇 시스템에 의해 정의됩니다. 튜토리얼은 HTML을 파싱하는 방법을 가르칩니다. 프로덕션은 탐지에서 살아남는 방법을 가르칩니다.

상황은 더 나빠지고 있습니다. Browserless의 State of Web Scraping 2026 보고서에 따르면 표준 headless 브라우저는 실제 브라우저보다 더 자주 차단됩니다. 안티 봇 시스템이 headless 인스턴스와 일반 브라우저 인스턴스 간의 특정 지문 차이를 목록화했기 때문입니다. 이 격차는 줄어들지 않고 있습니다.

스크래퍼가 계속 중단되는데 proxy 순환만 살펴보고 있다면 완전히 잘못된 문제를 수정하고 있는 것일 수 있습니다.

Cloudflare 요인

Cloudflare는 이 변화의 양쪽에 서 있기 때문에 특별히 언급할 가치가 있습니다.

이들의 봇 관리 제품은 모든 request에 대해 행동 분석을 실행하여 수십 개의 신호를 기반으로 방문자에게 1-99점의 점수를 매깁니다. 보이지 않는 CAPTCHA 대체품인 Turnstile은 방문자가 얼마나 사람처럼 보이는지에 따라 챌린지 난이도를 동적으로 조정합니다 (Cloudflare docs).

동시에 Cloudflare는 자체 AI 크롤링 인프라를 출시했습니다. 커뮤니티는 이 아이러니를 알아챘습니다 (Reddit r/cybersecurity).

이것이 실질적으로 의미하는 바는 다음과 같습니다. Cloudflare로 보호되는 사이트는 2026년에 스크래핑하기 가장 어려우며 모든 웹사이트의 약 20%가 해당 네트워크 뒤에 있습니다. 스크래핑 전략이 행동 탐지를 고려하지 않는다면 접근 가능한 웹의 5분의 1을 잃은 것입니다.

2026년에 실제로 효과적인 방법

성공하는 스크래퍼는 세 가지 특징을 공유합니다.

첫째, 최신 브라우저의 와이어 수준 서명과 일치합니다. 연결의 실제 바이트 수준 형태는 현재 Chrome 또는 Firefox 세션이 출력하는 것과 일치해야 합니다. 아무리 많은 header를 위조해도 일치하지 않는 연결 지문을 수정할 수는 없습니다.

둘째, 실제(또는 설득력 있게 실제와 같은) 브라우저 환경을 실행합니다. 기본 설정의 headless 인스턴스가 아닙니다. 자신이 주장하는 User-Agent와 일치하는 일관된 지문을 가진 실제 브라우저 인스턴스입니다.

셋째, 보호된 사이트의 경우 사람과 유사한 행동 노이즈를 추가합니다. 무작위 지연만으로는 충분하지 않습니다. 작업 간의 타이밍은 사실적인 분포를 따라야 하며 마우스 이동 경로에는 유기적으로 보이는 곡선과 주저함이 필요합니다.

따라서 아키텍처가 전환되었습니다. 더 많은 IP를 보유하는 것이 중요하지 않습니다. 각 request를 실제 브라우저를 탐색하는 실제 사람과 구별할 수 없게 만드는 것이 핵심입니다.

탐지 기술의 군비 경쟁이 가속화되고 있습니다

안티 봇 공급업체는 실시간으로 고객 기반 전체에서 위협 인텔리전스를 공유하기 시작했습니다. 한 사이트에서 새로운 봇 패턴을 표시하면 몇 분 안에 네트워크의 다른 모든 사이트가 이를 학습합니다 (SecurityBoulevard, March 2026). 이는 각 사이트의 방어가 독립적으로 작동하던 이전 모델과는 근본적으로 다른 변화입니다.

이는 자체 구축 스크래핑 인프라의 비용이 계속 상승할 것임을 의미합니다. 모든 새로운 탐지 신호에 대응하려면 엔지니어링 시간이 필요하며 그 주기는 가속화되고 있습니다. 인프라 수준에서 탐지를 처리하는 팀(스마트 proxy 라우팅, 브라우저 핑거프린팅, 연결 수준 매칭)은 문제에 IP만 쏟아붓는 팀을 능가할 것입니다.

문제는 더 많은 proxy가 필요한지가 아닙니다. 대상 서버에 도달하기도 전에 request가 사람처럼 보이는지 여부입니다.