처리중입니다. 잠시만 기다려주세요.
TTJ 코딩클래스
정규반 단과 자료실 테크 뉴스 코딩 퀴즈
테크 뉴스
Hacker News 2026.08.21 31

스크롤 습관으로 스크래퍼 봇을 잡아낸다는 발상

Hacker News 원문 보기

헤드리스 브라우저를 앞세운 스크래핑 봇이 정교해지면서, 요청 헤더나 자바스크립트 실행 여부만으로 사람과 봇을 가르는 방식은 점점 힘을 잃고 있다. 한 개발자가 자신의 블로그에서 소개한 실험은 이 문제를 정면으로 다룬다. 사람이 페이지를 훑을 때 나타나는 '스크롤 패턴'을 통계적으로 측정하면, 사람 흉내를 내는 봇조차 구별할 수 있지 않겠느냐는 가설이다. 아직 실험 단계의 소규모 연구지만, 봇 탐지의 관점을 요청 시점에서 사용자 행동으로 옮긴다는 점에서 실무자가 눈여겨볼 만하다.

버스티니스와 메모리라는 두 지표

핵심 도구는 Kwang-Il Goh와 Albert-László Barabási가 2008년 논문에서 제시한 두 계수, 버스티니스(Burstiness, B)와 메모리(Memory, M)다. 이 두 값은 사건이 '언제' 일어났는지에 대한 시각 정보만 있으면 계산할 수 있어, 이메일이나 문자 전송, 심지어 심장 박동 같은 사건 기반 시스템의 동역학을 분석하는 데 쓰인다. 사람은 문자에 답할 때 걸리는 시간이 일정하지 않고 몰렸다 흩어지는 이른바 '버스티한' 방식으로 반응하는 반면, 단순한 봇은 가능한 한 빨리 응답한다. 그래서 둘은 서로 다른 B와 M 값을 갖는다는 것이 출발점이다.

저자는 과거에 이 두 값을 요청 타이밍에 적용해 사람 세션과 봇 세션을 구분하는 연구를 했다고 밝힌다. 그런데 이 방식에는 구조적 한계가 있었다. CSS와 JS 파일을 로드하는 브라우저에서 온 세션은 무조건 사람으로 분류되어, ClaudeBot처럼 헤드리스 브라우저를 쓰는 고급 봇이 사람처럼 위장할 수 있었던 것이다. 결국 이 접근은 '사람 대 봇'이 아니라 '조작된 요청 대 실제 브라우저 요청'을 구분한 데 그쳤다. 이 한계를 넘어서기 위해 저자가 주목한 행동이 바로 스크롤이다.

왜 하필 스크롤인가

사람이 정보를 찾으며 스크롤 휠을 돌릴 때는 원하는 지점까지 일정한 속도로 내려가지 않는다. 조금 내리고 멈춰 읽다가 다시 확 내리는 식으로, 시간 간격이 불규칙하게 몰리는 버스티한 패턴이 나타난다. 저자는 대부분의 스크래핑 봇 개발자가 아직 스크롤 패턴까지는 정교하게 다듬지 않았다고 보고, 스크롤 이벤트 사이의 시간 간격에 B와 M을 적용하면 사람과 봇을 가르는 예측력이 있을지 검증하기로 했다.

검증에는 Ethan Wang 등이 발표한 'FP-Agent: Fingerprinting AI Browsing Agents' 논문의 데이터셋을 활용했다. 이 논문은 통제된 환경, 즉 실험을 위해 별도로 만든 웹사이트에서 여러 AI 브라우징 에이전트와 사람이 페이지를 탐색하는 데이터를 기록해 에이전트를 구별하는 머신러닝 모델을 만든 연구다. 저자는 원 논문의 모델이 좋은 결과를 냈지만 변수가 많은 실제 다양한 웹사이트 환경에서는 효과가 떨어질 것으로 본다. 다만 데이터셋이 OSF.io에 공개되어 있어 이를 재료로 삼을 수 있었다.

73.4%라는 숫자를 어떻게 읽을까

저자는 각 에이전트가 방문한 페이지마다 자바스크립트 스크롤 이벤트의 B와 M 값을 하나씩 계산했다. 그 결과 사람의 분포는 다른 에이전트들과 뚜렷하게 달랐다. 사람은 버스티니스 계수가 높고 메모리는 거의 없었으며, 이따금 사람과 비슷해지는 유일한 에이전트는 ChatGPT Agent였다. 이어 B와 M 두 변수만을 입력으로 삼아 LightGBM(결정 트리 기반 그래디언트 부스팅) 모델을 학습시켜 단일 페이지 상호작용의 주체를 분류하게 했더니 정확도는 73.4%가 나왔다.

두 개의 변수만으로 낸 수치라는 점을 감안하면 나쁘지 않지만, 그대로 현업에 옮기기에는 이르다. 모델은 예상대로 사람과 ChatGPT Agent를 주로 혼동했는데, 저자는 그 원인을 변수가 너무 적고 데이터가 작다는 데서 찾는다. 에이전트당 약 150개 데이터 포인트는 둘을 더 세밀하게 가르기에 부족한 규모다. 또한 이 방식은 애초에 스크롤이 필요 없는 사이트에서는 무력하다. 반대로 위키피디아 같은 정보성 사이트나 블로그처럼 사용자가 실제로 페이지를 훑어 내려야 하는 곳이 이 기법의 이점을 가장 크게 볼 수 있는 영역이다.

결국 이 실험이 던지는 메시지는 스크롤 하나로 봇을 막을 수 있다는 것이 아니라, 사용자 행동의 통계적 지문이 봇 탐지의 유효한 축이 될 수 있다는 가능성이다. 저자는 스크롤 특징에 마우스 이동이나 타이핑 같은 다른 행동에서 뽑은 변수를 결합하면 스크래퍼로부터 사이트를 보호하는 범용 모델을 만들 수 있으리라 전망하며, 다음 연구 주제로 마우스 이동 패턴을 예고했다. 통제된 환경에서 얻은 결과인 만큼 실제 트래픽에 적용할 때의 오탐과 정상 사용자 차단 위험은 별도로 검증해야 할 과제로 남는다.

이 뉴스가 유용했나요?

이 기술을 직접 배워보세요

파이썬으로 자동화를 시작해보세요

파이썬 기초부터 자동화까지 실전 강의.

파이썬 강의 보기

"비전공 직장인인데 반년 만에 수익 파이프라인을 여러 개 만들었습니다"

실제 수강생 후기
  • 비전공자도 6개월이면 첫 수익
  • 20년 경력 개발자 직강
  • 자동화 프로그램 + 소스코드 제공

매일 AI·개발 뉴스를 받아보세요

주요 테크 뉴스를 매일 아침 이메일로 전해드립니다.

스팸 없이, 언제든 구독 취소 가능합니다.