Meta AI 챗봇 악용으로 Instagram 계정 20,000개 이상 해킹 확인
Meta confirms 1000s of Instagram accounts were hacked by abusing its AI chatbot
TL;DR Highlight
Meta의 AI 챗봇에 있던 이메일 검증 버그로 인해 2FA(2단계 인증)를 사용하지 않던 Instagram 계정 2만 개 이상이 약 2개월간 해킹됐다. AI를 계정 복구 시스템에 통합할 때 발생할 수 있는 보안 취약점의 실제 사례다.
Who Should Read
AI 챗봇을 사용자 인증이나 계정 복구 플로우에 통합하려는 백엔드/풀스택 개발자, 또는 서비스 보안 아키텍처를 담당하는 개발자.
Core Mechanics
- Meta가 Maine 주 법무장관실에 제출한 데이터 유출 신고서에 따르면, 최소 20,225개의 Instagram 계정이 이번 해킹으로 피해를 입었고 Maine 주민만 30명이 포함됐다.
- 해킹 캠페인은 2026년 4월 17일경 시작해 Meta가 이 사실을 확인한 이번 주까지 약 2개월간 지속됐다.
- 버그의 핵심은 비밀번호 재설정 시 이메일 주소 검증 로직 누락이다. 챗봇이 비밀번호 재설정을 요청할 때 요청자가 제공한 이메일이 해당 계정에 등록된 이메일과 일치하는지 확인하지 않았다.
- 공격자는 챗봇에게 단순히 자신이 제어하는 이메일 주소로 인증 코드를 보내달라고 요청하기만 하면 됐고, 챗봇은 이를 그대로 수행했다. 2FA가 없는 계정은 이 단계만으로 완전히 탈취가 가능했다.
- 계정이 탈취되면 공격자는 연락처 정보, 생년월일, 프로필 정보, 게시물, 다이렉트 메시지, 계정 활동 기록, 그리고 연동된 다른 계정까지 접근할 수 있었다.
- Meta는 공식 입장에서 '챗봇 도구 자체는 의도대로 정상 작동했으나, 별도 코드 경로(code path)의 버그로 인해 이메일 검증이 제대로 이루어지지 않았다'고 설명했다. 커뮤니티에서는 이 표현이 책임을 희석하려는 것 아니냐는 비판을 받았다.
- Meta는 현재 해당 AI 챗봇을 비활성화하고 계정 재설정을 허용하던 코드 경로를 완전히 제거했으며, 자사 플랫폼 전체의 다른 챗봇들도 유사한 취약점이 있는지 점검 중이라고 밝혔다.
- 피해 사용자들에게는 비밀번호를 재설정하고 안전한 검증 채널을 통해 재인증하도록 안내했으나, Meta 측은 해킹 기간 동안 어떤 개인정보가 실제로 접근/탈취됐는지는 '파악하지 못하고 있다'고 밝혔다.
Evidence
- Meta의 공식 해명 '챗봇은 의도대로 정상 작동했다'는 표현에 대해 커뮤니티에서는 강한 비판이 쏟아졌다. '정상 작동'과 '의도대로'가 이 상황을 제대로 묘사하는 표현이 맞냐는 반응이 대다수였다.
- '비밀번호 재설정 API가 왜 이메일 주소와 계정 ID를 별도 파라미터로 받으면서 두 값이 일치하는지 검증하지 않느냐'는 지적이 있었다. 한 댓글에서는 챗봇이 아니라 API 자체가 근본 원인일 수 있으며, AI가 작성한 코드 문제일 수도 있다는 추측도 나왔다.
- 실제로 Meta로부터 의심스러운 비밀번호 재설정 이메일을 받았다는 사용자가 댓글을 남겼다. 본인은 MFA를 설정해 두었고 Instagram 감사 로그를 확인한 결과 실제 침해는 없었다고 전하며, MFA 설정의 중요성을 간접적으로 강조했다.
- '왜 사용자가 다른 이메일을 요청할 수 있는지 여부가 이런 시스템을 만들 때 가장 먼저 떠올리는 테스트 케이스가 아니냐'는 비판도 있었다. 규모가 너무 크다 보니 기본적인 QA도 제대로 하지 않는 것 아니냐는 의문이 제기됐다.
- 이번 사건을 '열린 문을 통해 들어간 것을 악용이라고 부르는 것'에 비유하는 댓글도 있었다. 'abusing(악용)'이라는 표현 자체가 Meta가 책임을 사용자나 공격자에게 전가하는 방식이라는 비판이었으며, 소송으로 이어지길 바란다는 반응도 있었다.
How to Apply
- AI 챗봇을 계정 복구나 비밀번호 재설정 플로우에 연동하는 경우, 챗봇이 내부 API를 호출할 때 요청자가 제공한 값(이메일, 전화번호 등)이 실제 계정에 등록된 값과 일치하는지를 챗봇 레이어가 아닌 API/백엔드 레이어에서 반드시 검증해야 한다. 챗봇이 '의도대로 작동'하더라도 별도 코드 경로에서 검증이 누락되면 이번 사례처럼 전체 시스템이 뚫린다.
- AI 에이전트(자율적으로 외부 시스템을 호출하는 AI)가 민감한 작업(계정 변경, 결제, 권한 수정 등)을 수행하는 경우, '요청자가 실제로 해당 리소스의 소유자인가'를 반드시 별도 인증 단계로 분리해야 한다. 챗봇 자체의 로직과 무관하게 서버 측에서 독립적으로 소유권을 재확인하는 구조가 필수다.
- 서비스에 2FA(2단계 인증)를 선택이 아닌 기본값으로 활성화하거나 강력히 권장하는 UI를 적용하면, 이번처럼 단일 코드 경로 버그가 터졌을 때 피해 범위를 대폭 줄일 수 있다. Meta의 경우 2FA 미사용 계정만 피해를 입었다는 점이 이를 잘 보여준다.
- AI 챗봇에 계정 관련 API 접근 권한을 부여할 때는 최소 권한 원칙(principle of least privilege)을 적용해서, 챗봇이 호출할 수 있는 API 범위를 필요한 것만으로 제한해야 한다. 계정 복구 기능이 비활성화됐을 때 Meta가 '코드 경로를 완전히 제거'한 방식처럼, 기능별로 권한을 분리해두면 문제 발생 시 영향 범위를 통제할 수 있다.
Terminology
관련 논문
프로덕션 AI 에이전트를 GPT-5.6으로 마이그레이션: 2.2배 빠르고 27% 저렴
마케팅 웹사이트를 자동 생성하는 프로덕션 AI 에이전트를 Claude Opus 4.8에서 GPT-5.6 Sol로 전환한 실전 경험담으로, 단순 모델 교체가 아니라 eval 하네스, 툴 스키마, 캐싱, 추론 리플레이까지 손봐야 했던 과정을 구체적인 수치와 함께 정리했다.
xAI Grok Build CLI가 xAI 서버로 전송하는 데이터: 네트워크 레벨 분석
xAI의 공식 코딩 CLI 도구 Grok Build가 사용자 동의 없이 전체 Git 저장소와 .env 시크릿 파일을 xAI 서버로 업로드한다는 사실이 네트워크 트래픽 분석으로 밝혀졌다.
중요할 때 기억하라: Long-Horizon 에이전트를 위한 Proactive Memory Agent
LLM 에이전트가 긴 작업 중 중요한 정보를 잊어버리는 문제를 별도의 메모리 에이전트가 '적절한 타이밍에' 끼어들어 해결하는 방법
WebSwarm: 깊고 넓은 웹 검색을 위한 재귀적 Multi-Agent Orchestration
복잡한 웹 검색을 재귀적으로 분해하고 각 노드에 적합한 검색 모드를 동적으로 할당하는 멀티에이전트 프레임워크
웹 앱을 리버스 엔지니어링해서 AI Agent 도구로 자동 변환하기
로그인된 웹 앱의 API 호출을 브라우저에서 감시해 자동으로 MCP 도구로 변환하는 에이전트를 만들었다. 소스 코드나 공식 API 문서 없이도 Jira, Spotify 같은 서비스에 AI 어시스턴트를 붙일 수 있다.
FableCut – AI 에이전트가 조작할 수 있는 브라우저 기반 비디오 에디터 (zero deps)
타임라인 전체를 JSON 파일 하나로 표현하고 MCP/REST로 AI 에이전트가 직접 편집할 수 있는 브라우저 비디오 에디터로, Claude 같은 AI가 프롬프트 하나로 영상을 자동 컷편집하고 결과를 실시간으로 UI에 반영해준다.