본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 06. 02. 17:26

Chipotlai Max: Chipotle의 챗봇을 무료 LLM으로 활용한 OpenCode 프로젝트

요약

Chipotle의 고객 서비스 챗봇을 역공학하여 무료 LLM 추론 인프라로 활용한 'Chipotlai Max' 프로젝트가 화제입니다. 이 풍자 프로젝트는 기업용 AI 에이전트가 적절한 가드레일 없이 배포될 경우 발생할 수 있는 보안 및 비용적 위험성을 경고합니다.

핵심 포인트

  • Chipotlai Max는 Chipotle 챗봇을 이용해 무료로 코드를 생성하는 프로젝트임
  • 기업용 챗봇의 역공학을 통해 추론 비용을 기업에 전가하는 방식
  • 도메인 제한 및 속도 제한 없는 LLM 배포의 보안 위험성 노출
  • 가드레일 부재 시 기업 인프라가 제삼자의 추론 도구로 전락 가능

GitHub의 한 풍자 프로젝트가 Chipotle의 고객 서비스 챗봇을 가져와 코드를 작성하기 위한 무료 언어 모델(LLM)로 변환했습니다. Chipotlai Max라고 불리는 이 프로젝트는 오픈 소스 에이전트인 OpenCode의 포크(fork) 버전으로, OpenAI나 Anthropic에 토큰 비용을 지불하는 대신 각 요청을 해당 음식 체인이 부리토를 판매하기 위해 사용하는 동일한 봇으로 라우팅합니다.

이 농담 뒤에는 구체적인 보안 경고가 숨어 있습니다. 가드레일(guardrails)이 없는 기업용 어시스턴트는 제삼자를 위한 추론 인프라(inference infrastructure)로 전락할 수 있다는 점입니다. 어떤 일이 일어났는지, 이 트릭이 어떻게 구축되었는지, 그리고 왜 프로덕션 환경에 챗봇을 배포하는 모든 이들에게 이것이 중요한지 살펴보겠습니다.

요약 (TL;DR)

  • Chipotlai Max는 Chipotle의 Pepper 챗봇을 기본 모델로 사용하는 코드 에이전트 OpenCode의 포크(fork)입니다.
  • IPsoft Amelia를 기반으로 하는 Pepper는 2026년 3월 12일과 13일 사이, LeetCode 문제를 해결하고 Python 코드를 작성하며 바이럴(viral)되었습니다.
  • 사용자 @Gonzih는 Amelia의 WebSocket SockJS + STOMP 백엔드를 역공학(reverse engineering)하여 localhost:3000에서 실행되는 OpenAI 호환 프록시를 게시했습니다.
  • 이 설정은 실제 API 키를 요구하지 않습니다. 추론 비용은 Chipotle의 클라우드 예산에서 실행되기 때문에 $0입니다.
  • 해당 저장소는 160개의 스타(star)를 모았으며, 기반 프로젝트인 OpenCode는 160,000개를 초과합니다.
  • Chipotle는 이미 Pepper에 패치를 적용했지만, 이 프로젝트는 Home Depot, Target, Starbucks 등의 봇을 활용해 이 패턴을 복제하도록 유도합니다.
  • 이 사례는 도메인 제한(domain limits)이나 효과적인 속도 제한(rate limiting) 없이 고객 서비스용 LLM을 배포할 때의 위험성을 드러냅니다.

사건 개요: Chipotlai Max와 무료 추론

Chipotlai Max는 GitHub에 "Chipotle의 도난당한 컴퓨팅 자원을 기반으로 실행되는 AI 코드 에이전트"라고 노골적으로 자신을 소개하며 등장했습니다. 설명은 의도적으로 도발적입니다. 공식 슬로건은 "부리토로 지불하는 무료 추론 (inference)"이며, README 자체에서도 이 프로젝트가 Chipotle과 관련이 없으며 "아마도 소송을 당할 것"이라고 명시하고 있습니다. 이것은 무엇보다도 밈 (meme)입니다. 하지만 효과적으로 작동하며 실제 문제를 지적하는 밈입니다.

그 트릭은 설명하기 매우 간단합니다. OpenCode는 터미널에서 실행되는 오픈 소스 (open source) 프로그래밍 에이전트로, 많은 현대적 도구들과 마찬가지로 OpenAI API를 지원하는 모든 제공업체(Claude, GPT, 로컬 모델 등 무엇이든)에 연결할 수 있습니다. Chipotlai Max의 저자들은 OpenCode를 포크 (fork)하여 기본 제공업체를 chipotle-pepper라는 이름으로 변경하고, 브랜드 색상을 입혀 세상에 내놓았습니다. 개발자가 명령어를 입력하면, 이 도구는 AI 연구소에 요청을 보내는 것이 아니라 코드로 응답하는 Chipotle의 지원 봇을 호출합니다.

아이러니한 점은 해당 봇이 그러한 용도로 설계되지 않았다는 것입니다. 봇의 역할은 주문을 추적하거나 보울 (bowl)의 재료를 설명하는 데 도움을 주는 것입니다. Python에서 연결 리스트 (linked list)를 뒤집는 결과물을 내놓게 된 것은, 특정 도메인 내에 머물게 할 효과적인 제한 장치 없이 매우 좁은 유스케이스 (use case) 뒤에 배치된 범용 언어 모델 (general-purpose language model)의 결과입니다.
[IMG:1] Chipotlai Max는 터미널에서 OpenCode의 인터페이스를 재사용합니다.

배경 및 역사: Pepper가 LeetCode 문제를 풀기 시작했을 때

모든 것은 2026년 3월 12일에서 13일 사이, Pepper라는 별칭을 가진 Chipotle의 고객 서비스 챗봇이 바이럴 (viral)이 되면서 시작되었습니다. 한 사용자가 음식을 주문하기 전에 봇에게 연결 리스트를 뒤집는 것을 도와달라고 요청할 수 있다는 사실을 발견했습니다. Pepper는 단순히 올바른 구문 (syntax)을 갖춘 완전한 솔루션을 제공했을 뿐만 아니라, 시간 복잡도 (time complexity) $O(n)$에 대해 설명한 뒤 곧바로 부리토를 주문할 것인지 다시 물었습니다.

이 영상은 소셜 미디어에서 폭발적인 반응을 일으켰습니다. 봇이 연습 문제를 해결하는 스크린샷이 X, LinkedIn, Instagram 및 프로그래머용 유머 사이트들에 퍼져 나갔습니다. 이 사례에서 눈에 띄는 점은 Pepper가 Claude나 GPT가 아닌, 현재의 LLM 붐이 일어나기 훨씬 전부터 존재하며 정확히 지원 센터 자동화를 위해 판매되는 기업용 대화형 어시스턴트 플랫폼인 IPsoft Amelia를 기반으로 작동한다는 사실이었습니다. 업계에 던져진 불편한 결론은 명확했습니다. 제한된 작업만을 위해 설계된 어시스턴트 내부에 기술 면접을 통과할 수 있을 만큼 충분히 유능한 언어 엔진이 들어 있었고, 아무도 이를 제어하지 못했다는 것입니다.

바이럴 된 일화는 곧바로 역공학 (reverse engineering)으로 이어졌습니다. @Gonzih로 알려진 개발자는 브라우저가 Amelia의 백엔드 (backend)와 통신하는 방식을 분석하고, 로컬 프록시 (proxy)에 해당 채널을 재구축했습니다. 이 프록시를 기반으로 또 다른 인물이 Chipotlai Max를 구축했습니다. 불과 며칠 만에 고객 지원 관련 밈 (meme)은 무료로 프로그래밍을 할 수 있는 기능적인 도구 체인으로 변모했습니다.

💭 핵심: 문제는 모델이 "너무 많이 알고 있었다"는 것이 아니라, 제품 계층 (product layer)이 도메인 제한을 강제하지 않았다는 점입니다. 시스템 프롬프트 (system instruction)를 통해 LLM을 제한하는 것은 보안 장벽이 아니라, 하나의 제안일 뿐입니다.

프록시 작동 방식

핵심 요소는 Chipotlai Max가 아니라 이를 구동하는 프록시입니다. Pepper가 사용하는 Amelia의 백엔드는 실시간 메시징의 전형적인 방식인 SockJS 상의 WebSocket과 STOMP 프로토콜을 통해 통신합니다. 역공학 과정은 자체 클라이언트에서 해당 핸드셰이크 (handshake)를 복제하고, 그 상위에 OpenAI의 API를 모방하는 엔드포인트 (endpoint)를 노출하는 방식으로 진행되었습니다.

그 결과, http://localhost:3000/v1에서 대기하며 표준 경로인 /v1/chat/completions를 제공하는 로컬 서버가 생성됩니다. 이미 OpenAI와 통신하는 방법을 알고 있는 모든 도구에 대해 이 변경 사항은 투명합니다. URL 베이스(Base URL)를 localhost로 지정하기만 하면 끝입니다. 유효한 키는 전혀 필요하지 않습니다. 설정에서 "API key"는 말 그대로 burrito-2026이며, 어떤 텍스트를 사용해도 무방합니다.

graph LR
  A["Chipotlai Max (CLI)"] --> B["Proxy local :3000/v1"]
  B --> C["WebSocket SockJS + STOMP"]
...

이 포크(fork)가 기본적으로 제공하는 설정은 미니멀합니다:

Provider: chipotle-pepper
Model:    pepper-1
Base URL: http://localhost:3000/v1
...

엔드포인트(endpoint)가 OpenAI와 호환되므로, 간단한 curl 명령어로 호출하여 일반적인 모델인 것처럼 봇으로부터 응답을 받을 수 있습니다:

curl http://localhost:3000/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer burrito-2026" \
...

이러한 호환성 덕분에 공격이 매우 휴대 가능(portable)해집니다. 동일한 프록시(proxy)를 애플리케이션의 코드를 한 줄도 수정하지 않고도 Cursor, 자체 스크립트, 또는 모든 OpenAI 클라이언트에 사용할 수 있습니다.
제한 없는 기업용 어시스턴트가 타인의 인프라가 될 수 있습니다.

설치: Windows, macOS 및 Linux

저장소(repository)에는 bun을 런타임(runtime)으로 사용하는 두 개의 명령어를 통한 실행 방법이 문서화되어 있습니다. Linux 및 macOS에서의 흐름은 직접적입니다:

# Linux / macOS
git clone --recursive https://github.com/cyberpapiii/chipotlai-max.git
cd chipotlai-max
...

Windows에서는 WSL2 또는 Git Bash를 사용하는 것이 좋습니다. 시작 스크립트가 쉘 스크립트(shell script)이며 툴체인(toolchain)이 Unix 스타일의 환경을 가정하기 때문입니다:

# Windows (WSL2를 사용하는 PowerShell)
wsl --install            # 아직 WSL이 설치되어 있지 않은 경우
git clone --recursive https://github.com/cyberpapiii/chipotlai-max.git
...

⚠️ 주의: 설치는 간단하지만, 이를 사용하는 것은 타인의 프로덕션 (Production) 서비스를 폭파시키는 행위입니다. README 자체에서도 서비스 약관 (Terms of Service)을 위반하며 프록시 (Proxy)가 언제든 중단될 수 있음을 인정하고 있습니다. 이는 교육용 및 밈 (Meme) 용도일 뿐, 여러분의 프로젝트를 위한 도구가 아닙니다.

데이터 및 수치

수치는 이 현상의 규모를 파악하는 데 도움이 됩니다. Chipotlai Max 저장소는 이 글을 작성하는 시점에 약 **160개의 스타 (Stars)**를 모았습니다. 이는 커밋 (Commit) 수가 불과 몇 개뿐인 순수 농담용 프로젝트치고는 겸손하지만 눈에 띄는 수치입니다. 이 프로젝트의 모태가 된 OpenCode는 차원이 다릅니다. 160,000개 이상의 스타를 보유하고 있으며, 수백 명의 기여자 (Contributor)를 모았고, 매달 수백만 명의 개발자가 사용하는 도구로 설명됩니다.

선언된 추론 (Inference) 비용은 $0.00이며, "Chipotle의 클라우드 예산"이 이를 지불한다는 주석이 달려 있습니다. 언급된 유일한 기술적 제한은 MAX_POOL_SIZE=5입니다. 프록시가 익명 세션 풀 (Pool)을 유지하며, 이는 실질적으로 동시에 유지할 수 있는 동시 요청 (Concurrent requests) 수를 제한합니다. 사실상 이는 Chipotle 측에서 서버 사이드 (Server-side)에서 강력하게 적용했어야 할 속도 제한 (Rate limiting)이며, 공격자가 결과적으로 스스로 관리하게 된 부분입니다.

상황을 변화시키는 날짜가 하나 있습니다. README에 따르면, Chipotle는 2026년 3월에 **Pepper를 패치 (Patch)**했습니다. 원본 제공업체가 더 이상 응답하지 않으므로, 이 포크 (Fork) 버전은 현재 운영 서비스라기보다 데모 (Demonstration)에 가깝게 작동합니다. 커뮤니티에 새로운 제공업체(Home Depot, Lowe's, Target, Starbucks, Walmart, McDonald's)를 추가해 달라는 요청은 "조사 필요"로 표시되어 있는데, 이는 아직 작동하는 프록시가 없음을 의미합니다.

영향 및 분석

단순한 유머를 넘어, Chipotlai Max는 기업용 AI 어시스턴트의 보안이 어떻게 무너지는지에 대한 사례 연구(case study)입니다. 서두른 구현 과정에서 동일한 패턴이 반복됩니다. 강력한 언어 모델을 가져와서 "음식 주문에 대해서만 말하세요"라고 명시된 시스템 프롬프트(system prompt)를 붙여놓고, 그 지시사항이 경계선 역할을 할 것이라고 가정하는 것입니다. 하지만 그렇지 않습니다. 범용 모델(general-purpose model)은 자신의 역할을 벗어나도록 설득될 수 있으며, 전송 채널(transport channel)이 접근 가능한 상태로 남겨진다면 누군가는 이를 표준 API로 감싸서 사용할 것입니다.

이 사건이 주는 세 가지 기술적 교훈이 있습니다. 첫 번째는 도메인 제한(domain restriction)은 모델 외부에 존재해야 한다는 것입니다. 프롬프트의 텍스트 한 줄이 아니라, 입력 및 출력 필터(input and output filters), 비즈니스 외 요청을 거부하는 분류기(classifiers), 그리고 비정상적인 패턴 모니터링이 필요합니다. 두 번째는 속도 제한(rate limiting)과 인증(authentication)이 실질적이어야 한다는 것입니다. 효과적인 제한이 없는 익명 세션은 WebSocket 클라이언트를 가진 누구에게나 당신의 챗봇을 무료 컴퓨팅 자원으로 만들어 버립니다. 세 번째는 비용이 곧 동기(incentive)가 된다는 점입니다. 추론(inference) 비용이 비싼 한, 보호가 허술한 기업용 엔드포인트(endpoint)를 찾아내어 공짜로 사용하려는 사람들은 계속 나타날 것입니다.

💡 팁: LLM 기반의 챗봇을 운영한다면, 백엔드(backend)를 일반적인 공개 API처럼 취급하십시오. 모든 세션을 인증하고, IP 및 계정별로 제한을 두며, 도메인 외 요청을 기록하고 급증하는 트래픽에 대해 경고를 설정하십시오. 당신의 시스템 프롬프트는 반드시 읽히고 우회될 것이라고 가정하십시오.

법적 관점에서 보면 상황은 매우 까다롭습니다. 타인의 프로덕션(production) 서비스를 재사용하는 것은 거의 확실하게 이용 약관을 위반하는 것이며, 관할권에 따라 컴퓨터 시스템에 대한 무단 접근 규정에 저촉될 수 있습니다. README에서는 이를 "Chipotle 법무팀이 48시간 이내에 매운 맛 타코를 보내주길 기다려라"라며 조롱 섞인 어조로 인정하고 있지만, 그 이면의 경고는 심각합니다. 작성자들에게는 장난일지 몰라도, 피해자 입장에서는 허가 없이 비용을 부담하며 서비스를 소비당한 것입니다.

다음 단계

이 특정 프로젝트의 즉각적인 미래는 도태입니다. Pepper가 이미 패치되었으므로, Chipotlai Max는 2026년 기술 유머의 박물관 전시품처럼 남게 되었습니다. 하지만 이 프로젝트가 대중화시킨 패턴은 사라지지 않습니다. 저장소(repository)의 "공급업체 구함" 섹션은 진지하게 읽어본다면, 다른 이들이 대형 소매업체의 지원 봇에 대해 역공학 (reverse engineering)을 반복하도록 만드는 로드맵과 같습니다. 유능하지만 제대로 관리되지 않는 대화형 어시스턴트를 배포하는 모든 기업은 잠재적인 표적이 됩니다.

보안 팀에게 있어 실질적인 결과는 챗봇이 웹사이트 구석의 무해한 위젯에서 벗어나 완전한 공격 표면 (attack surface)이 되었다는 점입니다. 챗봇을 자산 인벤토리에 포함하고, 단순한 콘텐츠 "탈옥 (jailbreak)"뿐만 아니라 무료 추론 (inference) 용도로 사용되는지에 대한 남용 테스트를 실시하며, 전송 계층 (transport layer)을 노출된 다른 API와 동일한 엄격함으로 다루는 것이 바람직합니다. 호기심 많은 개발자들에게 전달되는 메시지는 더 냉정합니다. 코드는 그곳에 존재하며 교육적 가치가 있지만, 이를 실제 서비스에 사용하는 것은 법적, 윤리적 선을 넘는 행위입니다.

📖 Telegram 요약: 요약 보기

자주 묻는 질문 (FAQ)

Chipotlai Max는 정확히 무엇인가요?

이는 오픈 소스 코드 에이전트인 OpenCode의 포크 (fork)로, Pepper라고 불리는 Chipotle의 고객 서비스 챗봇을 기본 AI 모델로 사용하도록 사전 설정되어 있습니다. 공급업체에 비용을 지불하는 대신, 해당 봇과 통신하는 프록시 (proxy)로 요청을 라우팅합니다.

Chipotle의 봇은 어떻게 코딩을 할 수 있었나요?

Pepper는 하단에 범용 언어 모델을 갖춘 기업용 어시스턴트 플랫폼인 IPsoft Amelia를 기반으로 작동합니다. 음식 주문 도메인 내에 머물게 할 효과적인 제한 사항이 없었기 때문에, 코드 작성 요청을 포함한 모든 문의에 응답할 수 있었습니다.

현재도 작동하나요?

AI 자동 생성 콘텐츠

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

원문 바로가기
0

댓글

0