X가 Nitter를 닫았다 - 스크래핑이 아니라 세션 토큰이 걸린 자리
X Corp가 2026년 8월 24일 오후 8시(EST) Nitter와 공개 인스턴스 운영자들에게 내용증명을 보냈습니다. 서비스와 저장소를 영구히 내리라는 요구였고, 이행 기한은 다음 날 오후 5시였습니다. nitter.net은 기한 안에 내려갔고 GitHub 저장소는 8월 25일 아카이브됐습니다. 개발자 zedeus는 "법률 자문을 구하는 중이며 당분간 구체적인 내용은 언급하지 않겠다"고만 적었습니다.
보도는 대부분 "스크래핑을 이유로 오픈소스 프로젝트를 닫았다"로 정리했습니다. 그런데 편지에 적힌 혐의는 스크래핑만이 아닙니다. X는 Nitter가 데이터를 긁었다는 것과 함께 X 계정과 세션 토큰에 접근했다는 점을 들었습니다. 이 두 번째 항목이 왜 거기 있는지는 Nitter가 지난 2년 동안 어떻게 살아남았는지를 봐야 보입니다.
게스트 토큰이 죽은 다음
Nitter는 원래 로그인 없이 도는 프론트엔드였습니다. 계정 없이 X 글을 읽고, 자바스크립트도 광고도 없고, IP 추적도 안 붙는다는 게 존재 이유였습니다.
이게 가능했던 건 게스트 계정 때문입니다. 구버전 X 모바일 앱을 처음 켜면 한 달짜리 익명 계정이 발급되는데, 2023년 8월 zedeus가 프록시로 이걸 대량 생성하는 경로를 찾았습니다. 몇 분 만에 수천 개를 만들 수 있었고, 한 IP에서 전부 써도 속도 제한에 안 걸렸습니다. 만료되면 새로 받는 식으로 돌렸습니다.
X는 2024년 1월 이 발급을 끊었습니다. 남아 있던 토큰이 2월 26일 전부 만료되면서 공개 인스턴스가 일제히 죽었고, zedeus는 프로젝트가 끝났다고 선언했습니다.
그런데 2025년 2월 6일 개발이 재개됩니다. 이때 바뀐 게 핵심입니다. 게스트 계정을 못 만드니 등록된 실제 계정의 세션 토큰을 쓰는 방식으로 갈아탔습니다. 인스턴스를 돌리려면 진짜 X 계정이 있어야 하고, 그 계정의 인증 토큰으로 요청을 보냅니다. zedeus 본인이 당시에 "자기 계정을 써서 셀프 호스팅할 수 있지만 계정이 정지될 위험이 있다"고 못을 박아 뒀습니다.
2025년 이후의 Nitter는 익명 프론트엔드가 아니었습니다. 로그인한 클라이언트였습니다.
문구가 겨냥한 곳
이 변화가 법적 지형을 통째로 바꿉니다.
게스트 토큰 시절의 Nitter에는 방어선이 있었습니다. hiQ Labs v. LinkedIn 이후로 인증 없이 공개된 데이터를 긁는 행위는 미국 연방 컴퓨터사기남용법(CFAA)의 "권한 없는 접근"으로 보기 어렵다는 게 자리를 잡았습니다. 담장이 없는 마당에 들어간 것을 무단침입이라 부를 수 없다는 논리입니다. 로그인 없이 읽히는 트윗은 그 마당에 해당했습니다.
계정 토큰으로 갈아탄 순간 이 방어선이 사라집니다. 인증을 거친 접근은 정의상 담장 안이고, 담장 안의 규칙은 그 계정이 동의한 이용약관입니다. hiQ가 지켜주는 범위 밖으로 스스로 걸어 나간 셈입니다.
편지가 인용한 법령이 이 해석과 맞습니다. Texas Harmful Access by Computer Act의 § 33.02는 텍사스 형법의 무단 컴퓨터 접근 조항이고, § 143.001은 그 위반에 대해 민사 소송을 걸 수 있게 하는 근거 조항입니다. CFAA를 쓰지 않고 주법의 무단접근 조항을 든 것도, 굳이 텍사스인 것도 우연이 아닙니다. X Corp는 2024년 본사를 텍사스로 옮겼습니다.
같이 인용된 Lanham Act(15 U.S.C. §§ 1114, 1125)는 결이 다릅니다. 이건 상표법입니다. 스크래핑 분쟁에서 상표를 드는 건 흔치 않은데, 이유는 이 청구가 접근 권한 문제와 무관하게 따로 서기 때문입니다. 무단접근 주장이 다투어지더라도 상표 청구는 별도로 남습니다. 게다가 상표 침해와 출처 오인 주장은 제기 비용이 낮고, 자원봉사로 굴러가는 프로젝트가 방어하기엔 부담이 큽니다.
정리하면 이 편지는 문구가 헐거운 게 아니라 정확합니다. 2025년에 바뀐 지점을 알고 쓴 문장입니다.
같이 죽은 것들
Nitter는 웹사이트 하나가 아니었습니다. 다른 서비스들의 백엔드였습니다. XCancel이 대표적인데, X 링크를 그대로 볼 수 있게 해 주던 이 서비스는 Nitter 인스턴스 위에 얹혀 있어서 함께 내려갔습니다. RSS 브리지, 아카이빙 도구, 연구용 수집 스크립트도 같은 층에 있었습니다.
2024년의 죽음과 2026년의 죽음은 성격이 다릅니다. 2024년은 기술적 차단이었습니다. 토큰이 만료됐고, 커뮤니티는 13개월 만에 우회로를 찾아 돌아왔습니다. 2026년은 법적 차단입니다. 우회할 코드가 없습니다. 저장소를 내리라는 요구까지 포함돼 있어서 포크로 이어가는 경로도 막혔습니다.
오픈소스 의존의 단일 장애점을 이야기할 때 보통 유지보수자 이탈이나 공급망 사고를 떠올립니다. 여기서는 법률 문서 한 통이 같은 일을 했고, 위에 얹혀 있던 것들이 하루 만에 함께 사라졌습니다. 기술 위험은 분산할 수 있어도 법률 위험은 프로젝트가 하나면 분산되지 않습니다.
남는 것
이 사건에서 자주 지적되는 모순이 있습니다. X는 자사 데이터를 긁는 것을 막으면서 Grok 학습에는 공개 X 데이터를 씁니다. 일론 머스크가 표방하는 개방성과도 어긋나 보입니다. 타당한 지적이지만 이 편지를 설명하지는 못합니다. 편지는 콘텐츠 보호가 아니라 접근 경로 통제를 다루고 있고, 그 통제의 근거로 Nitter가 2025년에 스스로 만든 약점을 짚었습니다.
Nitter의 선택지가 좁았다는 점도 사실입니다. 게스트 계정이 사라진 뒤 로그인 없이 X를 읽을 방법은 남아 있지 않았습니다. 익명 프론트엔드를 유지하려면 익명이 아닌 수단을 써야 하는 상황이었고, 그 모순이 2년 뒤에 청구서로 돌아왔습니다. 앞으로 비슷한 프론트엔드가 나온다면 같은 벽을 만납니다. 플랫폼이 로그아웃 상태 접근을 닫아 두는 한, 프론트엔드는 인증된 클라이언트가 될 수밖에 없고 그 순간 hiQ 밖으로 나갑니다.
참고: X sends cease-and-desist to open source project Nitter over alleged scraping (TechCrunch) · Nitter no more? X sends in the lawyers to shut down open source project (The Register) · Nitter's Developer Says X Sent a Cease and Desist (Pixel Envy) · XCancel gets taken down as X Corp sends cease-and-desist letter to Nitter (Notebookcheck) · Nitter (Wikipedia) · Replace tokens with guest accounts, swap endpoints (zedeus/nitter PR #985)