00:00:00이것은 코드 분석과 실행을 수행하는 오픈 소스
00:00:05자율 AI 모의 해킹 도구인 Shannon입니다. 브라우저 자동화를 통해
00:00:11서버 측 요청 위조(SSRF)부터 교차 사이트 스크립팅(XSS), SQL 인젝션 등 온갖 보안 취약점을 찾아내며
00:00:17오탐 없는 상세하고 포괄적인 보안 보고서를 제공합니다. 하지만 Claude
00:00:22Code Security의 발표와 Shannon이 Claude SDK를 기반으로 구축되었다는 점 때문에
00:00:27기존 구독을 사용할 수 없는데, 과연 오래가지 못할 수도 있는 이 도구를 배울 가치가 있을까요?
00:00:31구독 버튼을 누르시고 바로 알아보겠습니다.
00:00:32이전 직장 중 한 곳에서는 주요 릴리스를 앞두고 외부 모의 해커들에게 수천 달러를 지불하곤 했습니다.
00:00:38하지만 수정해야 할 버그들을 발견하고 나면 다시 테스트를 받아야 했고,
00:00:43그로 인해 많은 시간과 비용이 낭비되었습니다. Shannon은 바로 이 문제를 해결하기 위해 존재합니다.
00:00:48Shannon은 원하는 만큼 반복해서 실행할 수 있습니다. CI/CD 파이프라인에 넣어
00:00:53자동으로 실행할 수도 있죠. 오픈 소스라 완전 무료이기도 합니다. 물론 유료 버전도 있는데,
00:00:58그건 나중에 이야기하죠. 보안 전문가가 아닌 입장에서는 Kali Linux를 부팅하는 것보다
00:01:03Shannon으로 프로젝트를 돌려보는 게 훨씬 편합니다. 실제로 Shannon이 작동하는 모습을 보시죠.
00:01:08Shannon은 Anthropic Agent SDK로 제작되었으므로 Claude API 키가 필요합니다.
00:01:13아쉽게도 일반 구독은 사용할 수 없지만, 저는 VPS에 비루트(non-root) 사용자로 설치했고
00:01:20테스트용 취약점이 가득하도록 설계된 앱인 'OWASP Juice Shop'을 대상으로 실행해 보겠습니다.
00:01:25이미 Shannon 레포지토리를 클론해 두었는데, 실행하시려면 여러분도 필요합니다.
00:01:30그리고 테스트하려는 저장소가 Shannon의
00:01:34repos 디렉토리 안에 있어야 합니다. 여기 Juice Shop을 넣어두었고요.
00:01:39Juice Shop 프로젝트를 실행한 상태에서 이 명령어를 실행하면, 브라우저 테스트를 위해 로컬 앱에 연결하고
00:01:44코드 스캔을 위해 repos 디렉토리 내부의 저장소에 연결합니다.
00:01:50Shannon을 처음 실행하는 경우, Docker Compose를 사용하기 때문에
00:01:54Docker Hub에서 여러 이미지를 먼저 가져와야 합니다. 저는 이미 완료했기에 바로 넘어갑니다.
00:01:58Temporal 워크플로 링크가 생성되면 웹 UI를 통해 볼 수 있는데,
00:02:03진행되어야 할 모든 단계가 이렇게 표시됩니다. 아니면 실시간 로그를 보기 위해
00:02:07이 명령어를 실행할 수도 있는데, 웹 UI가 가끔 정보를 다 보여주지 않아 이쪽을 선호하기도 합니다.
00:02:12그런데 Temporal이 뭘까요? Shannon 이야기를 하고 있었는데 말이죠.
00:02:16Shannon의 모의 해킹은 프로젝트 규모에 따라 한 시간 또는 여러 시간이 걸릴 수 있는데,
00:02:21Temporal은 어떤 상황에서도 실행의 지속성을 보장합니다. 모의 해킹 도중에 컴퓨터가 충돌하거나
00:02:26Claude 크레딧이 떨어져서 충전해야 하더라도 진행 상황을 잃지 않습니다.
00:02:32Temporal은 정확히 중단된 지점을 기억하고 해당 체크포인트부터 Shannon을 재시작합니다.
00:02:36Temporal에 대한 전용 영상을 원하시면 댓글로 알려주세요. 어쨌든 Shannon의 모든 단계와 활동을 조율합니다.
00:02:42단계는 5개뿐이지만 그 안에서 정말 많은 일이 일어납니다.
00:02:47보여드리죠. 먼저 API 자격 증명이 유효한지 확인하는 'Pre-flight' 단계부터 시작합니다.
00:02:53Docker 컨테이너가 준비되었고 레포가 존재하는지 확인하죠. 다음은 'Pre-recon' 단계로,
00:03:00앱이 어떻게 작동하는지 이해하기 위해 코드를 분석합니다. 아키텍처, 진입점 매핑, 보안 패턴 등을 파악하죠.
00:03:05다음은 실제 'Recon' 단계인데, Pre-recon과는 매우 다릅니다. 여기서는
00:03:12Playwright를 사용해 앱을 실제로 탐색합니다. 버튼을 클릭하고 폼을 채우며
00:03:18네트워크 요청 관찰, 스크린샷 캡처, 쿠키 확인 등을 통해 앱의 모든 기능을 매핑합니다.
00:03:24그다음 4단계에서는 5개의 파이프라인을 병렬로 실행합니다. 여기에는
00:03:31인젝션 관련 취약점 및 익스플로잇, 그리고 교차 사이트 스크립팅(XSS) 취약점 및 익스플로잇,
00:03:38인증, 서버 측 요청 위조(SSRF)가 포함됩니다. 마지막으로 권한 부여가 있습니다.
00:03:45즉, 특권 데이터나 타인의 정보에 접근하는 것을 테스트하죠. 이 모든 과정이
00:03:52취약점 진단용 에이전트 5개, 익스플로잇용 에이전트 5개에서 병렬로 진행됩니다.
00:03:59마지막으로 5단계는 이전의 5가지 체크 항목을 결합하여
00:04:07포괄적인 모의 해킹 보고서를 작성합니다. 보고서 이야기가 나와서 말인데, 테스트 진행 상황을 볼까요?
00:04:12약 2시간 반이 지난 후 모든 프로세스가 완료되었습니다. Pre-flight 검증으로 시작해서
00:04:17Pre-recon과 Recon 에이전트로 이동한 것을 볼 수 있습니다. 그리고 여기서
00:04:25모든 취약점 점검을 실행합니다. 인젝션, XSS, 권한 부여, SSRF 에이전트들이 있죠.
00:04:31일부 항목은 녹색 선이 실선이 아닌 것을 볼 수 있습니다. 제가 Claude 크레딧이
00:04:36다 떨어져서 다시 시도해야 했기 때문입니다. 여기 숫자 2가 보이시죠? 다른 것들은
00:04:40재시도가 없었습니다. 재시도가 없었다면 2시간 반보다는 빨랐겠지만,
00:04:46그래도 2시간 미만은 아니었을 것 같네요. 아무튼 5가지 취약점 점검이 끝나면
00:04:515가지 익스플로잇 점검으로 넘어갑니다. 여기 SSRF, 인증 익스플로잇,
00:04:56인젝션 등이 보입니다. 그리고 이 모든 과정이 끝나면,
00:05:02인증 익스플로잇이 가장 오래 걸린 걸 알 수 있는데, 그 후 Report 에이전트가 모든 것을 마무리합니다.
00:05:07물론 원한다면 이 모든 항목을 확장해서 각 단계의 상세 정보를 볼 수 있습니다.
00:05:13제가 Temporal 전문가는 아니지만, 문서를 살펴보면 플랫폼 사용법에 대해
00:05:17더 많은 내용이 있을 겁니다. 이제 Shannon이 생성한 최종 보고서를 살펴보겠습니다.
00:05:22Juice Shop 프로젝트의 deliverables 디렉토리를 보면 생성된
00:05:28보고서 목록이 나옵니다. 생각보다 훨씬 많네요. 우선 인증 분석(auth analysis)
00:05:33보고서를 보시죠. 상단에 요약이 있고, 이쪽을 보면
00:05:3711개의 심각한 취약점이 식별된 것을 알 수 있습니다. 어떤 것들인지 확인해 보죠.
00:05:436개의 인증 엔드포인트 중 HTTPS를 강제하는 곳이 하나도 없는데, 제가 로컬에서
00:05:47실행 중이었기 때문에 당연한 결과입니다. 또한 적절한 CORS 제어도 누락되어 있었고,
00:05:52인증 엔드포인트에 적절한 속도 제한(Rate Limit)도 없었습니다. 정말 상세합니다.
00:05:56스크롤을 내려보면 정확히 무엇이 문제였는지, 어디에 문제가 있는지,
00:06:01문제를 일으킨 엔드포인트가 어디인지 정확히 보여줍니다. 모든 보고서를 다 훑어서
00:06:05여러분을 지루하게 하진 않겠지만, '포괄적 보안 평가 보고서'라는 요약본을 보시죠.
00:06:10여기에는 사용된 모델과 프로젝트 범위에 대한 세부 정보가 들어있습니다. 이제
00:06:15스크롤을 내리면 완전히 익스플로잇된 4개의 심각한 인증 취약점을 찾았다고
00:06:21목록에 표시해 줍니다. 정말 철저하네요. 이것 좀 보세요.
00:06:26더 내리면 보고서의 요약이 나옵니다. 이것은 첫 번째 IDOR 취약점이고,
00:06:31더 내려보면 공격자가 이를 어떻게 악용할 수 있는지 정확히 보여줍니다. 실행 가능한
00:06:38정확한 curl 명령어와 세부 사항, 그리고 추출할 수 있는 정보의 유형까지 나옵니다.
00:06:43이 정도 수준의 세부 정보가 모든 취약점에 대해 제공되는데, 이는 평가에
00:06:48얼마나 많은 공이 들어갔는지 보여줍니다. 관심 있는 분들을 위해 영상 설명란에
00:06:54모든 보고서 링크를 남겨두겠습니다. 그런데 Claude Sonnet으로 레포 하나를 스캔하는 데 2시간 반은 꽤 기네요.
00:06:59Shannon Pro가 도움이 될 만한 부분이 있을까요? 속도 면에서는
00:07:04도움이 되지 않는 것 같지만, 기본 또는 무료 버전에는 없는
00:07:09CVSS 점수 산정 같은 다른 기능들을 제공합니다. CI/CD 파이프라인 지원과 API 액세스도 있죠.
00:07:16더 중요한 건, 엔터프라이즈 사용자의 경우 OWASP
00:07:22컴플라이언스 보고서뿐만 아니라 SOC 2, PCI DSS 등 기대하는 모든 기능을 지원한다는 점입니다.
00:07:272시간 반이 긴 시간이긴 하지만, 조사해 보니 Shannon의 첫 번째 실행이 가장 오래 걸리고
00:07:32그 이후의 실행은 훨씬 빠르다고 합니다. 여러분이 무슨 생각을 하시는지 압니다.
00:07:37단 한 번의 모의 해킹에 Claude Sonnet 3.5를 2시간 반 동안 돌리면 크레딧이 얼마나 들까요? 그냥 아주 많이 듭니다.
00:07:43약 66달러를 충전했는데 이만큼 남았습니다. 즉, 이 모의 해킹 한 번에
00:07:50약 60달러의 Claude 크레딧을 쓴 셈이죠. 사람 테스터를 고용하는 것보다 싸긴 해도 여전히
00:07:55큰돈입니다. Claude Pro나 Max 구독을 사용할 수 있었다면 훨씬 저렴했을 텐데,
00:08:00나중에 정식 출시될 Claude Code Security가 그런 방식을 지원하기를 바랍니다.
00:08:05아니면 Keygraph 팀이 Shannon을 OpenAI Agent SDK나 더 많은 모델을 쓸 수 있는
00:08:10Vercel AI SDK 같은 것으로 다시 작성해 주길 기대해야죠. 하지만 전반적으로,
00:08:16사람 모의 해커에게 큰돈을 쓰고 싶지 않은 스타트업이라면 Shannon은 좋은 대안입니다.
00:08:21돈이 더 없는 인디 해커라면 일단 출시부터 해서 사람들이 실제로 사용하는지 확인하는 게 나을 수도 있습니다.
00:08:26AI와 보안에 대해 이야기한 김에, OpenClaw를 VPS에 안전하게
00:08:30설치하는 방법이 궁금하시다면,
00:08:34단계별로 자세히 설명하는 다음 영상을 확인해 보세요.