기술

AI로 만든 앱 38만 개를 훑었더니, 수천 개에 인증 자체가 없었다

Susan Hill

“누구나 앱을 만들 수 있다.” 바이브 코딩(vibe-coding)이 2023년 이래 줄곧 외쳐 온 슬로건이다. RedAccess의 새 스캔이 그 슬로건에 처음으로 제대로 된 영수증을 끊었다. AI 코딩 도구로 만들어 Netlify 같은 서비스를 통해 배포된 약 38만 개의 웹 애플리케이션 가운데, 약 5,000개가 어떤 형태의 인증도 갖추지 않은 채로 돌아가고 있었다. 그 무방비 상태의 앱들 가운데 약 40퍼센트가 사용자 정보, 대화 로그, 결제 정보, 내부 자격 증명 같은 민감 데이터를 보관하고 있었다. 이번 주 WIRED, Axios, Security Boulevard에 동시에 떨어진 이 숫자들은, 업계가 2년 동안 조용히 쌓아 온 한 가지 종류의 실패를 정확히 그려 보인다.

거명된 생성 도구들은 비개발자도 이미 이름을 아는 플랫폼이다. Lovable, Replit, Base44, 그리고 더 넓은 “프롬프트로 짓기” 도구 생태계는 같은 암묵적 약속을 팔아 왔다. AI는 코드 타이핑만 대체하는 게 아니라, 그 자리에 있어야 할 엔지니어 자체를 대체한다는 약속이다. 프롬프트를 고르고, 앱이 떠오르는 걸 지켜보고, Netlify나 Vercel로 배포하고, 링크를 공유한다. RedAccess의 스캔이 기록한 것은, 그 흐름 안의 누구도 “이 앱에 자물쇠가 필요한가”라고 묻지 않은 채 조용히 운영 환경으로 흘러간 코드의 무리다.

취약점은 정교하지 않다. 무방비 상태의 앱들은 영리한 공격자를 요구하지 않았다. 브라우저면 충분했다. 상당수는 Supabase나 Firebase 키를 클라이언트 번들에 그대로 박아 넣은 채로 배포돼 있었고, 그 말은 관심 있는 누구든 그 데이터베이스를 읽을 수 있다는 뜻이다. 일부는 같은 데이터베이스에 쓰기 권한까지 열려 있어, 낯선 사람이 사용자의 레코드를 수정할 수도 있다. 관리자용 엔드포인트가 그대로 노출된 경우도 몇 건 있었다. 이 결함의 카테고리는 제로데이도, 설정이 잘못된 엣지 케이스도 아니다. 보안 계층 그 자체의 부재다.

회의가 필요하다. 모든 책임을 도구에 떠넘기고 싶은 유혹은 크고, 또 절반만 맞다. 감독 없이 처음부터 같은 앱을 짜는 주니어 개발자라도 비슷한 결과물을 내놨을 것이다. 차이는 부피다. 바이브 코딩 도구가 진입장벽을 충분히 낮춘 결과, 인증에 대해 스스로 사고할 수 없는 사람들이 배포하는 앱의 총량이 폭발적으로 늘었다. 도구가 기술적으로 인증 스캐폴딩을 제시할 수 있는 건 사실이지만, 기본 흐름은 그것을 강제하지 않는다. 그리고 이 도구로부터 가장 큰 혜택을 받는 사용자가, 인증이 빠졌다는 사실을 알아챌 장비가 가장 부족한 사용자이기도 하다. Lovable은 기본값으로 인증 스캐폴딩을 켜는 작업을 진행 중이라고 밝혔다. Replit은 이미 존재하는 보안 기본 설정을 가리키면서도 사용자가 그것을 비활성화할 수 있음을 인정했다. Base44는 공식적으로 답하지 않았다. 플랫폼들은 반응하고 있다. 질문은, 그 반응이 배포 곡선보다 빨리 갈 수 있느냐다.

구조적으로 읽으면 더 삼키기 어렵다. 업계는 지난 2년간, 배포 파이프라인에서 전문가의 검토를 제거하는 일을 비용이 아닌 기능으로 팔아 왔다. RedAccess의 데이터는 그 제거가 규모로 펼쳐졌을 때 어떤 모양인지를 보여 준다. 앱은 그것을 만든 당사자에게도 잘 작동하고, 그 URL을 우연히 발견한 누구에게도 마찬가지로 잘 작동한다. 앞으로 2년은 비슷한 사건이 천천히 쌓이는 시간이 될 가능성이 높다. 플랫폼이 프레임워크 단에서 인증을 기본값으로 강제하든지, 규제 당국이 그렇게 하라고 강제하든지 둘 중 하나가 일어나기 전까지는 그렇다. 둘 다 일어날 수도 있다. 유럽연합의 제조물 책임 제도는 이미 AI 생성 소프트웨어를 포섭하는 방향으로 다시 읽히고 있고, 미국 주(州) 법무장관들도 이 사안 주변을 돌기 시작했다.

이 플랫폼들의 사용자가 지금 당장 할 수 있는 일은 좁다. RedAccess는 거명된 네 도구에 대해 가이드를 공개했다. 앱이 데이터에 접근하기 전에 로그인을 요구하는지 확인할 것, 클라이언트 번들에 함께 실려 나간 키를 감사할 것, 그리고 한 번 공유된 URL은 이미 누군가에게 스캔당하고 있다고 가정할 것이 그 골자다. 플랫폼들은 개선을 약속했다. 이 기사를 만든 스캔은 며칠이 걸렸다. 다음 스캔은 이미 준비 중이다.

토론

댓글 0개가 있습니다.