00:00:00한 사람이 로블록스 핵을 설치하다가 Vercel이 해킹당하게 만들었고, 잠재적으로
00:00:04귀하의 모든 프로젝트 환경 변수가 노출될 위기에 처했으며, 해커들은 탈취한
00:00:09데이터에 대해 200만 달러를 요구하고 있습니다.
00:00:10네, 정말 미친 듯이 무서운 이야기네요. 바로 시작해보죠.
00:00:17이것은 Vercel 측의 해킹 발표문으로, 그들이 보안 사고를 식별했으며
00:00:21일부 Vercel 내부 시스템에 대한 무단 액세스가 포함되었다는 내용입니다.
00:00:25이 시스템들은 귀하의 민감하지 않은 환경 변수에 접근할 수 있었는데, 참고로
00:00:29대부분의 환경 변수는 기본적으로 그렇습니다. 또한 엄청난 양의 내부 기업 데이터도 있었죠.
00:00:33이것은 또한 공격자가 해당 데이터를 판매하는 모습입니다. 수백만 명을 감염시킬 수 있는
00:00:37악성 NPM 패키지를 배포할 수 있다고 주장하고 있죠.
00:00:38하지만 공격자들은 어떻게 이 정보를 알아냈을까요?
00:00:40그걸 알기 위해서는 한 Vercel 직원의 이야기를 따라가 봐야 합니다.
00:00:44그 직원은 업무에 도움을 받으려 했고, AI에 일을 떠넘길 수 있는 옵션을
00:00:47찾아보다가 Context.ai라는 제품을 발견하게 됩니다. 특히
00:00:52AI 오피스 스위트라는 레거시 제품이었는데, 이것은 프레젠테이션, 문서,
00:00:57스프레드시트를 만들고 사용자를 대신해 이메일을 작성해 주는 도구였습니다.
00:01:00Vercel 직원은 이를 사용해 보기로 결정하고, 자신의 Vercel 구글
00:01:04워크스페이스 계정으로 가입한 뒤 모든 권한을 허용하여 구글 드라이브와
00:01:09지메일에 대한 전체 액세스 권한을 부여합니다.
00:01:10이제 여러분은 회사 계정을 사용해서 모든 권한을 허용한다는 게 좀
00:01:13무모했다고 생각할 수도 있습니다.
00:01:14네, 확실히 좀 그랬죠.
00:01:16하지만 Context.ai는 합법적인 회사입니다.
00:01:19이때가 그의 구글 계정이 탈취된 시점은 아닙니다.
00:01:21그걸 알아내려면 더 깊이 파고들어야 합니다.
00:01:23Context.ai의 권한이 높은 직원을 찾아가야 하죠.
00:01:27이 직원은 Context.ai를 구축하느라 바쁘고, 빠르게 변하는 AI 세계를 따라잡으려 노력하며,
00:01:32잠시 쉬면서 로블록스를 좀 즐기고 싶어 합니다.
00:01:35문제는 그가 하던 게임을 잘하지 못했는지, 지름길을 택하고 싶어서
00:01:39로블록스 핵, 특히 자동 파밍 스크립트를 찾기 시작했다는 겁니다.
00:01:44그리고 결국 하나를 찾아서 다운로드했죠. 전부 회사 노트북에서 말입니다.
00:01:49이런 일이 벌어졌다는 게 정말 믿기지가 않네요. 너무 멍청한 짓입니다.
00:01:53더 뻔하게도 그가 다운로드한 로블록스 핵에는 정보 탈취기가 들어 있었습니다.
00:01:57LumaStealer라고 알려진 녀석이죠.
00:01:592022년에 처음 발견된 아주 유명한 정보 탈취기입니다.
00:02:03일단 기기에 침투하면 실시간 세션 쿠키와 기업 자격 증명을 긁어갑니다.
00:02:07우리 Context.ai 직원의 경우, 노트북 로그를 보면 그의 구글 워크스페이스 자격 증명,
00:02:11그리고 수파베이스(Supabase), 데이터독(Datadog), AuthKit 같은 서비스의 키와 로그인 정보까지
00:02:15접근 권한을 획득했다는 사실을 알 수 있습니다.
00:02:16그가 브라우저에서 로그인했던 모든 정보가 탈취당한 것이죠.
00:02:19공격자들은 이 자격 증명을 이용해 Context.ai의 내부 AWS 환경에 접속했고,
00:02:25그 안을 둘러보다가 대박을 터뜨렸습니다.
00:02:27그들은 레거시 AI 오피스 스위트 사용자의 OAuth 토큰이 포함된 데이터베이스를 찾아내 탈취했습니다.
00:02:32그 안에 뭐가 있었을까요?
00:02:33바로 우리 Vercel 직원의 토큰이 그대로 놓여 있었던 겁니다.
00:02:36이 토큰으로 공격자들은 이제 Context.ai에서 Vercel로 피벗하여,
00:02:37비밀번호도 필요 없고 다중 인증 프롬프트조차 트리거하지 않은 채
00:02:41Vercel 직원의 구글 워크스페이스 계정을 장악할 수 있게 되었습니다.
00:02:46이 계정을 통해 공격자들은 리니어(Linear)와 같은 Vercel의 내부 시스템,
00:02:48그리고 Vercel 사용자 프로젝트의 민감하지 않은 환경 변수에 접근할 수 있는
00:02:51백엔드에도 접근할 수 있었습니다.
00:02:55이전에 Vercel에서 환경 변수를 설정해 본 적이 없다면, 수동으로 체크박스를
00:02:56확인해서 변수를 민감하게 표시했어야 합니다.
00:03:00만약 그렇게 했다면, 강력하게 암호화되어 내부 시스템에서 마스킹되었을 텐데,
00:03:02기본 설정은 민감하지 않음이었고, 이것들은 평문으로 복호화되어 내부적으로 접근이 가능했습니다.
00:03:06이 모든 일이 4월 19일로 이어지는데, Shiny Hunters라는 이름의 공격자들이
00:03:10브리치 포럼에 탈취한 데이터에 대해 200만 달러를 요구하는 글을 올렸습니다.
00:03:15그들은 소스 코드, NPM 토큰, GitHub 토큰, 직원 기록을 가지고 있다고 주장하며,
00:03:19접근 권한이 있다는 증거로 내부 Vercel 엔터프라이즈 대시보드 스크린샷까지 게시했죠.
00:03:23흥미로운 점은, 실제 Shiny Hunter 그룹의 멤버들은 이번 사건과 아무 관련이 없다고 부인했다는 것입니다.
00:03:27즉, 브랜드 가치를 이용해 한몫 챙기려는 제휴자나 사칭범일 수도 있지만,
00:03:31그건 어쨌든 간에 이 모든 사건이 빌어먹을 로블록스 핵에서 시작되었다는 사실입니다.
00:03:36Vercel은 해킹 사실을 인지하자마자 사고 대응에 착수했고,
00:03:40Next.js나 Turbo Pack 같은 핵심 오픈소스 프로젝트들은 완전히 안전하다는 것을 확인했습니다.
00:03:43또한 이제 모든 새로운 환경 변수는 기본적으로 민감하게 설정되도록 변경했죠.
00:03:48자, 여기까지가 해킹에 대한 개요입니다. 하지만 저처럼 Vercel 사용자라면,
00:03:52앞으로 할 일이 꽤 많으실 겁니다.
00:03:55Vercel에 가지고 있던 민감하지 않은 환경 변수가 모두
00:03:56침해당했다고 가정해야 하며, 소스에서 해당 키들을 적극적으로 교체해야 합니다.
00:04:00그냥 프로젝트를 삭제하고 Vercel을 떠난다고 해결될 문제가 아니니까요.
00:04:03또한, 직원이 Context.ai를 사용했을까 봐 걱정되는 회사라면,
00:04:06구글 워크스페이스에 들어가서 승인된 OAuth 앱을 감사해 보세요. 특히 침해된
00:04:10Context.ai 앱 ID를 찾아보시고, 제가 대응 방법에 대한 정보 탈취기 블로그 게시물 링크를 남겨두겠습니다.
00:04:14결국 이 이야기의 교훈은, 권한이 지나치게 부여된 AI 도구 하나와
00:04:19로블록스에서 치트 좀 써보려는 무작위 직원 하나가,
00:04:20웹에서 가장 큰 인프라 플랫폼 중 하나를 해킹당하게 만들 수 있다는 것입니다.
00:04:24회사 노트북에 게임 핵을 다운로드하지 마세요. 아니, 솔직히 말씀드리면
00:04:28신뢰할 수 없는 건 무엇이든 다운로드하지 마시기 바랍니다.
00:04:29이번 일에 대해 어떻게 생각하시는지 아래 댓글로 알려주시고, 보시는 김에
00:04:33구독도 부탁드립니다. 그럼 항상 그렇듯, 다음 영상에서 뵙겠습니다.
00:04:34[음악]
00:04:37구독도 부탁드립니다. 그럼 항상 그렇듯, 다음 영상에서 뵙겠습니다.
00:04:40[음악]