본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 06. 18. 22:48

AI 에이전트가 인간처럼 행동할 수 있을까? StoryCaptcha를 활용한 12시간의 실험

요약

StoryCaptcha라는 실험적인 행동 기반 CAPTCHA를 활용하여 AI 에이전트의 상호작용 패턴을 분석한 실험 보고서입니다. AI 에이전트가 인간의 타이핑 리듬, 마우스 움직임, 인지적 일시 정지 등 미세한 행동 신호를 재현할 수 있는지 탐구합니다.

핵심 포인트

  • StoryCaptcha는 단순 이미지 식별이 아닌 행동 생체 인식 기반의 CAPTCHA임
  • AI 에이전트는 복사-붙여넣기, 즉각적 동작 등 결정론적 패턴으로 인해 낮은 점수를 기록함
  • 타이핑 리듬, 마우스 경로 곡률, 수정 행동 등이 인간성을 판단하는 주요 지표임
  • 에이전트가 인간처럼 보이려면 비정형적인 상호작용 패턴 생성이 필요함

하루 전, 저는 Tyler Richards가 StoryCaptcha라는 실험적인 CAPTCHA를 소개하는 LinkedIn 게시물을 보게 되었습니다.

그 개념은 단순하지만 독특했습니다.

사용자에게 신호등을 식별하거나 이미지 퍼즐을 풀라고 요청하는 대신, StoryCaptcha는 사용자에게 무작위 프롬프트를 기반으로 짧은 이야기를 작성하도록 요청한 뒤 행동 신호 (behavioral signals)를 사용하여 상호작용을 평가합니다.

목표는 바로 서비스에 적용 가능한 CAPTCHA를 만드는 것이 아니었습니다.

그것은 행동 생체 인식 (behavioral biometrics) 및 사용자 상호작용 패턴을 탐구하는 실험이었습니다.

웹 스크레이핑 (web scraping) 및 안티 봇 (anti-bot) 연구 분야에서 일하는 사람으로서, 저는 즉시 호기심이 생겼습니다.

AI 에이전트가 이 도전에 임하면 어떤 일이 벌어질까요?

더 중요한 것은:

AI로 제어되는 브라우저가 행동 기반 CAPTCHA가 인간이라고 간주할 만한 상호작용 패턴을 생성할 수 있을까요?

저는 그 질문에 답하기 위해 다음 12시간을 보냈습니다.

설정 (The Setup)

이 실험을 위해 저는 다음을 사용했습니다:

  • Playwright MCP
  • VS Code
  • GitHub Copilot
  • Chromium

목표는 CAPTCHA를 우회하는 것이 아니었습니다.

목표는 행동 점수 산정 시스템 (behavioral scoring system)이 AI 기반 상호작용을 어떻게 평가하는지 이해하는 것이었습니다.

첫 번째 시도: 56/100

저의 첫 번째 실행은 56/100점을 기록하며 실패했습니다.

이유는 금방 명확해졌습니다.

AI 에이전트는 자동화 시스템이 행동하는 방식 그대로 행동했습니다:

  • 콘텐츠를 복사하여 붙여넣기 (Copying and pasting)
  • 즉각적으로 동작 완료
  • 결정론적 패턴 (deterministic patterns)을 따름
  • 망설임이 거의 없음

효율적입니다.

하지만 그다지 인간적이지는 않았습니다.

흥미로운 부분

많은 행동 기반 시스템과 달리, StoryCaptcha는 실제로 평가하는 신호의 상당 부분을 공개합니다.

대시보드에는 다음과 같은 지표들이 표시되었습니다:

타이핑 신호 (Typing Signals)

  • 타이핑 vs 붙여넣기 (Typed vs Pasted)
  • 문자당 키 입력 횟수 (Keystrokes per character)
  • 키 누름 지속 시간 (Key-hold (dwell) profile)
  • 키 중첩 (Key-overlap (rollover))
  • 리듬 가변성 (Rhythm variability)
  • 비반복 간격 (Non-repeating intervals)

행동 신호 (Behavioral Signals)

  • 인지적 일시 정지 (Cognitive pauses)
  • 상호작용 간 타이밍 (Inter-interaction timing)
  • 수정 행동 (Correction behavior)
  • 백스페이스 사용 (Backspace usage)

마우스 신호 (Mouse Signals)

  • 마우스 경로 곡률 (Mouse path curvature)
  • 직선성 (Straightness)
  • 순간 이동 감지 (Teleport detection)

콘텐츠 신호 (Content Signals)

  • 언어처럼 읽힘 (Reads like language)
  • 프롬프트와 주제가 일치함 (On-topic for prompt)

이를 통해 실험은 단순한 테스트에서 피드백 기반의 행동 분석 연습으로 전환되었습니다.

맹목적으로 추측하는 대신, 어떤 신호들이 평가되고 있는지 관찰하고 그에 따라 에이전트의 행동을 조정할 수 있었습니다.

관찰 #1: 복사-붙여넣기는 명백한 단서였다

초기에 AI 에이전트는 이야기를 복사하여 붙여넣는 방식을 선호했습니다.

StoryCaptcha는 이를 즉시 감지했습니다.

첫 번째 최적화는 간단했습니다:

콘텐츠를 붙여넣는 대신, 에이전트에게 응답을 한 글자씩 타이핑하도록 지시했습니다.

점수가 향상되었습니다.

관찰 #2: 인간의 타이핑은 균일하지 않다

다음 문제는 타이핑 리듬(Typing cadence)이었습니다.

인간은 완벽하게 일정한 타이밍으로 타이핑하지 않습니다.

때로는 멈추기도 하고,

때로는 생각에 잠기기도 하며,

때로는 속도를 높이기도 합니다.

저는 에이전트에게 다음과 같이 지시했습니다:

  • 무작위 키 입력 지연 (Random keystroke delays) 사용
  • 동일한 간격 피하기
  • 생각 사이에 자연스럽게 멈추기

점수가 다시 향상되었습니다.

제가 특히 주의를 기울였던 지표 중 하나는 다음과 같습니다:

비반복적 간격 (Non-Repeating Intervals)

StoryCaptcha는 타이밍 패턴이 얼마나 반복적인지를 적극적으로 측정하고 있었습니다.

관찰 #3: 인간은 실수를 한다

인간은 완벽한 타이피스트가 아닙니다.

우리는:

  • 단어의 철자를 틀리기도 하고
  • 잘못된 키를 누르기도 하며
  • 백스페이스 (Backspace)를 사용하고
  • 스스로 수정하기도 합니다

자동화된 시스템은 이런 경우가 드뭅니다.

그래서 저는 에이전트에게 다음과 같이 지시했습니다:

  • 가끔 철자 오류를 도입할 것
  • 백스페이스 수정을 사용할 것
  • 수정 후 자연스럽게 계속할 것

대시보드는 이러한 행동들을 수정 지표 (Correction metrics)를 통해 반영하였고, 전체 점수가 향상되었습니다.

관찰 #4: 인간은 모든 것을 즉시 클릭하지 않는다

에이전트는 여전히 너무 효율적이었습니다.

인간은 보통 다음과 같이 행동합니다:

  • 콘텐츠를 읽음
  • 요소 위에 마우스를 올림 (Hover)
  • 행동하기 전에 잠시 멈춤
  • 페이지를 탐색함

저는 더 자연스러운 커서 움직임과 호버링 (Hovering) 동작을 유도했습니다.

StoryCaptcha는 다음을 평가합니다:

  • 마우스 경로 곡률 (Mouse path curvature)
  • 순간 이동 감지 (Teleport detection)
  • 상호작용 타이밍 (Interaction timing)

따라서 이러한 조정은 측정 가능한 영향을 미쳤습니다.

관찰 사항 #5: 협조를 거부한 하나의 신호

가장 흥ся로운 지표는 다음과 같았습니다:

키 중첩 (Key Overlap, Rollover)

StoryCaptcha의 보고에 따르면:

인간 ≈ 25%–50% 중첩

제 에이전트의 점수는 일관되게 다음과 같았습니다:

0%

거의 모든 다른 지표를 개선한 후에도 마찬가지였습니다.

이는 시뮬레이션된 타이핑 (simulated typing)과 실제 인간의 키보드 동작 (human keyboard behavior) 사이의 차이를 드러냈다는 점에서 특히 흥미로웠습니다.

인간은 이전 키를 완전히 떼기 전에 다음 키를 누르기 시작하는 경우가 빈번합니다.

반면, 많은 자동화 프레임워크 (automation frameworks)는 완벽하게 순차적인 키 이벤트 (key events)를 생성합니다.

CAPTCHA는 바로 그 차이를 성공적으로 식별해내고 있었습니다.

전반적인 점수는 높게 나왔음에도 불구하고, 이는 해당 상호작용이 진정으로 인간의 것이 아니라는 점을 보여주는 가장 강력한 지표 중 하나로 남았습니다.

최종 결과

약 10회의 실험 실행 후:

시도점수
초기56
...

결국 챌린지를 일관되게 통과했습니다.

하지만 점수가 가장 가치 있는 결과물은 아니었습니다.

진정한 가치는 행동 특징 (behavioral features)이 평가에 어떻게 영향을 미치는지 이해하는 데 있었습니다.

배운 점

행동 생체 인식 (Behavioral Biometrics)은 마우스 움직임 그 이상이다

이번 실험 전에는 제가 접한 대부분의 논의가 다음 사항에 집중되어 있었습니다:

  • 브라우저 핑거프린트 (Browser fingerprints)
  • TLS 핑거프린트 (TLS fingerprints)
  • 기기 식별 (Device identification)
  • 네트워크 평판 (Network reputation)

이번 실험은 행동 그 자체가 강력한 신호 (signal)가 될 수 있음을 상기시켜 주었습니다.

단순히 어떤 동작이 일어나는가가 아니라,

어떻게 일어나는가가 중요합니다.

AI 에이전트는 새로운 과제를 창출한다

전통적인 자동화는 다음 사항에 초점을 맞춥니다:

  • 속도 (Speed)
  • 효율성 (Efficiency)
  • 결정론 (Determinism)

AI 에이전트는 다음 사항을 도입합니다:

  • 탐색 (Exploration)
  • 문맥 인식 (Context awareness)
  • 적응형 행동 (Adaptive behavior)

AI 에이전트가 더 흔해짐에 따라, 행동 탐지 시스템 (behavioral detection systems)의 중요성은 점점 더 커질 것입니다.

역공학 (Reverse Engineering)에 항상 소스 코드가 필요한 것은 아니다

저는 StoryCaptcha의 구현 방식을 본 적이 없습니다.

그것의 점수 산정 알고리즘 (scoring algorithm)도 본 적이 없습니다.

하지만 출력을 관찰하고, 가설을 세우고, 행동을 반복적으로 조정함으로써, 시스템이 무엇을 가치 있게 여기는지에 대해 놀라울 정도로 많은 것을 배울 수 있었습니다.

그것이 제가 리버스 엔지니어링 (Reverse Engineering)에서 가장 즐기는 요소 중 하나입니다:

관찰하고.

가설을 세우고.

테스트하고.

반복하는 것.

마치며

저는 다음과 같은 질문을 던지며 이 실험을 시작했습니다:

AI 에이전트가 인간처럼 행동할 수 있을까?

12시간이 지난 지금, 저는 더 흥미로운 질문은 다음과 같다고 생각합니다:

인간의 행동 중 어떤 부분이 기계가 재현하기 가장 어려운가?

적어도 이번 실험을 통해 얻은 답은, 단순히 마우스를 움직이거나 텍스트를 입력하는 것보다 훨씬 더 미묘한 차이가 있는 것으로 보입니다.

그리고 바로 그 점이 이 연습을 탐구할 가치가 있게 만들었습니다.

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0