← 최신 논문
📄 other

Hardening vibe-coded web applications with an automated security-audit skill: a controlled comparison of two builds of the same app

이 논문은 자동화된 보안 감사 기술을 "바이브 코딩(vibe coding)" 프로세스에 통합하는 것이 AI가 생성한 웹 애플리케이션의 보안을 획기적으로 향려시켜, 동일한 이커머스 데모의 두 빌드를 통제된 비교를 통해 분석한 결과 완화되지 않은 위험을 99% 줄이고 모든 고위험 취약점을 제거함을 입증한다.

원저자: Piyush Omanwar

게시일 2026-07-25
📖 4 분 읽기☕ 가벼운 읽기

원저자: Piyush Omanwar

원본 논문은 CC BY 4.0 (https://creativecommons.org/licenses/by/4.0/) 라이선스로 제공됩니다. 이것은 아래 논문에 대한 AI 생성 설명입니다. 저자가 작성하거나 승인한 것이 아닙니다. 기술적 정확성을 위해서는 원본 논문을 참조하세요. 전체 면책 조항 읽기

당신이 직접 벽돌을 쌓는 대신, 매우 빠르고 믿기지 않을 정도로 재능 있는 로봇에게 부탁하여 집을 짓고 있다고 상상해 보세요. 당신은 로봇에게 "빨간 문이 있는 아늑한 오두막을 지어줘"라는 간단한 문장을 건네고, 몇 초 만에 로봇은 완벽해 보이는 집을 당신의 손에 쥐여줍니다. 이것이 바로 인공지능(AI)이 짧은 프롬프트만으로 작동하는 전체 앱을 작성하는 "바이브 코딩(vibe coding)"의 세계입니다. 마치 마법 같습니다. 순식간에 완성된 제품을 얻게 되니까요. 하지만 여기에는 함정이 있습니다. 로봇은 무언가를 멋지게 보이게 만들고 빠르게 작동하게 하는 데는 뛰어나지만, 종종 지루하고 눈에 보이지 않는 안전 관련 작업들을 잊어버리곤 합니다. 로봇은 빠른 투어 중에 집을 예쁘게 보이게 만드는 데 집중하느라, 현관문을 잠그는 것을 잊거나, 연기 감지기를 설치하는 것을 깜빡하거나, 뒷문 게이트를 활짝 열어둔 채로 둘 수도 있습니다.

컴퓨터 보안의 세계에서 이러한 보이지 않는 틈은 '취약점(vulnerabilities)'이라고 불립니다. 이를 기초의 숨겨진 균열이나 잠기지 않는 창문이라고 생각하면 됩니다. 전문 팀의 경우, 사람들이 입주하기 전에 이러한 것들을 점검하는 보안 요원(인간 전문가)이 있습니다. 하지만 AI를 사용하는 개인 개발자에게는 점검해 줄 다른 사람이 없습니다. 로봇은 그저 열쇠를 건네줄 뿐이며, 개발자는 자신의 집이 안전하지 않다는 사실조차 모를 수 있습니다. 이 논문은 아주 단순하고도 결정적인 질문을 던집니다. 만약 우리가 똑같은 집을 두 번 짓는다면—한 번은 로봇만 사용해서, 또 한 번은 로봇에 '보안 검사기' 기능을 추가해서—두 번째로 지은 집은 얼마나 더 안전해질까요? 연구진은 단순한 자동화된 점검을 추가하는 것이, 즐겁고 빠른 빌딩의 재미를 해치지 않으면서도 흔들리고 불안정한 앱을 어떻게 요새로 바꿀 수 있는지 확인하고 싶었습니다.

실험: 두 개의 앱, 하나의 큰 차이점

연구진은 "Northwind"라는 가짜 온라인 상점을 사용하여 통제된 실험을 설정했습니다. 그들은 AI에게 이 상점을 두 번 만들도록 요청했습니다. 첫 번째 버전, 즉 앱 A는 로봇 단독으로 구축되었습니다. 두 번째 버전인 앱 B는 동일한 로봇을 사용했지만, 이번에는 로봇에게 특별한 "보안 감사 기술(security audit skill)"이 부여되었습니다. 이 기술은 지치지 않는 검사관과 같아서 5단계 루프를 실행합니다. 코드를 스캔하고, 문제를 찾아내고, 수정하고, 그다음 수정이 실제로 작동했는지 확인하기 위해 다시 스캔하는 과정입니다.

이 실험의 핵심은 두 앱의 유일한 차이점이 바로 이 보안 기술이었다는 점입니다. AI에게 주어진 프롬프트는 동일했으며, 핵심 기능(제품, 쇼핑카트, 결제)도 정확히 같았습니다. 이를 통해 어떤 차이점이 발생하더라도 그것이 AI가 운이 좋았거나 설계를 변경했기 때문이 아니라, 순수하게 보안 검사기 때문임을 보장했습니다.

결과: 엄청난 안전성 향상

결과는 극적이었습니다. 연구진은 16가지 보안 규칙(예를 들어, 브라우저가 실행할 수 있는 스크립트를 지정하는 규칙인 '콘텐츠 보안 정책(CSP)'이나, 앱이 브라우징 기록을 다른 사이트에 유출하는 것을 방지하는 '리퍼러 정책(Referrer Policy)')을 기준으로 두 앱의 점수를 100점 만점으로 산정했습니다.

  • 앱 A (보안 기술 없음): 100점 만점에 58점을 받았습니다. 16개의 보안 문제가 있었으며, 그중 4개는 "높은 심각도"의 결함이었습니다. 이는 현관문에 잠금장치가 없는 것과 같은 위험한 구멍들이었습니다. 총 "리스크(위험도)"는 100 유닛으로 측정되었습니다.
  • 앱 B (보안 기술 포함): 100점 만점에 99점을 받았습니다. 보안 기술이 거의 모든 것을 고쳐 놓았습니다. 4개의 높은 심각도의 결함을 모두 제거했으며, 문제의 총 개수를 16개에서 단 1개로 줄였습니다. 총 리스크는 100 유닛에서 1 유닛으로 떨어졌습니다.

숫자로 보면, 보안 기술은 미조치 리스크를 **99.0%**나 절감했습니다. 남은 단 하나의 리스크는 실제 백엔드 서버가 필요한 특정 체크 항목이었는데, 기술은 이를 억지로 고친 척하는 대신 여전히 인간의 주의가 필요하다고 정직하게 표시했습니다.

이것이 중요한 이유: "글리치(Glitch)" 보너스

가장 흥-미로운 발견 중 하나는 단순히 해커를 막는 것뿐만 아니라, 앱이 스스로 망가지는 것을 방지하는 것에 관한 것이었습니다. 연구진은 만약 지저체한 앱에 엄격한 보안 규칙을 그냥 추가하기만 한다면, 앱이 종종 고장 난다는 사실을 발견했습니다. 예를 들어, 브라우저에 "외부 스크립트 금지"라고 명령했는데 앱의 코드가 외부 스크립트를 사용하려고 시도한다면, 앱은 작동을 멈춥니다.

보안 기술은 이를 인지할 만큼 똑똑했습니다. 엄격한 규칙을 추가하기 전에, 기술은 코드를 거슬러 올라가 스타일과 스크립트를 적절한 위치로 옮김으로써 앱이 여전히 완벽하게 보이고 작동하도록 정리했습니다. 이는 인간 제작자가 너무 늦기 전까지는 알아차리지 못할 수도 있는 "글리치(오작동)"를 방지했습니다. 단순히 구멍을 메우는 것에 그치지 않고, 보안 규칙 때문에 집이 무너지지 않도록 구조 전체를 보강한 것입니다.

논문의 내용 (그리고 명시하지 않은 것)

이 논문은 자신들이 무엇을 증명하지 않는지에 대해서도 매우 명확하게 밝히고 있습니다. 이 앱이 이제 "무적"이라거나 보안에 대해 완전히 걱정하지 않아도 된다고 주장하는 것이 아닙니다. 저자들은 이것이 정적 데모(가짜 결제가 이루어지는 가짜 상점)임을 강조하며, 실제 돈과 실제 사용자 데이터를 다루는 실제 앱에는 심층적인 침투 테스트를 수행할 전문적인 인간 보안 전문가가 여전히 필요하다고 강조합니다. 99%의 개선은 이 기술이 자동화할 수 있는 유형의 컨트롤에 국한된 것입니다.

하지만 이 논문은 취미 활동가나 개인 개발자들이 사용하는 수백만 개의 소규모 앱에 있어, 이러한 종류의 자동화된 내장형 감사가 게임 체인저가 될 수 있음을 강력하게 시사합니다. 이는 보안 점검을 AI의 워크플로우에 직접 녹여냄으로써, 과거에 "바이브 코딩"의 위험한 습관이었던 것을 훨씬 더 신뢰할 수 있는 것으로 바꾸어 소프트웨어의 "안전 하한선"을 대폭 높일 수 있음을 보여줍니다. 연구는 이 접근 방식이 저렴하면서도 영향력이 큰 단계이며, 안전한 경로를 기본 경로로 설정함으로써 AI 생성 소프트웨어를 약 두 자릿수(two orders of magnitude) 더 안전하게 만든다고 결론짓습니다.

연구 분야의 논문에 파묻히고 계신가요?

연구 키워드에 맞는 최신 논문의 일일 다이제스트를 받아보세요 — 기술 요약 포함, 당신의 언어로.

Digest 사용해 보기 →