깃허브가 내부 저장소 3,800개를 털렸다
전 세계 개발자가 코드를 맡기는 깃허브가,
자기 내부 저장소 3,800여 개를 털렸다.
입구는 직원 PC에 깔려 있던 코드 에디터 확장 프로그램 하나였다.
깃허브가 수요일에 공식 확인한 내용은 이렇다.
침해의 시작은 한 직원의 PC였다.
그 PC에 깔려 있던 'Nx 콘솔'이라는
VS Code 확장 프로그램의 변조된 버전이 입구가 됐다.
이 확장 프로그램은 왜 변조됐나.
지난주 'TanStack' npm 공급망 공격에 오염됐기 때문이다.
npm은 개발자들이 공용 코드 패키지를 받아 쓰는 창고이고,
공급망 공격은 그 신뢰받는 패키지 안에 악성코드를 몰래 심는 수법이다.
공격자는 TeamPCP라는 알려진 위협 그룹이다.
이들은 깃허브 소스코드와 내부 조직 정보를 범죄 포럼에 매물로 올렸다.
같은 npm 공격은 그라파나도 건드렸다.
거기서는 인증 열쇠 역할을 하는 토큰 하나가 교체 과정에서 빠져나갔다.
보안 업계에서는 공급망 공격을 두고
"한 번 뚫어 다수를 턴다"고 말한다.
이번 건은 그 사슬이 깃허브 본사까지 닿은 사례다.
이번 사건이 보여준 건, 내가 매일 쓰는 개발 도구가 나도 모르게 공격의 운반책이 된다는 사실이다.
확장 프로그램과 패키지는 '신뢰'를 전제로 자동 업데이트된다.
그 자동화된 신뢰가 곧 공격의 입구다.
앞으로 점검할 곳은 내가 짠 코드가 아니라,
내 코드가 딛고 선 수백 개의 의존성일 수 있다.