엔비디아의 새로운 도구, 에이전트 기술의 한계를 해결하다

AAI LABS
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00지금 AI 에이전트 스킬은 어디에나 있습니다. 모든 에이전트가 이를 실행하고 여러분은 검사 없이
00:00:05신뢰하죠. 하지만 무서운 점이 있습니다. 연구원들이 이러한 스킬 3만 개 이상을 조사한 결과,
00:00:104분의 1 이상에서 보안 취약점이 발견되었습니다. 그래서 NVIDIA는 Skill Spectre라는 도구를 만들었는데,
00:00:15스킬을 설치하기 전에 스캔하여 얼마나 위험한지 정확히 알려줍니다. 하지만 여기서
00:00:20흥미로운 점이 있습니다. 한 가지 공격 유형은 이를 그냥 통과해 버리는데,
00:00:24실제로 이를 잡아내는 설정이 기본적으로 꺼져 있어서 대부분의 사람들은 그 존재조차 모릅니다.
00:00:29이를 켜는 건 보통 비용이 들지만, 우회하는 방법을 찾았습니다. 결국 스킬을 단순히 스캔하는 것뿐만 아니라,
00:00:34스킬을 찾고 설치하는 방식을 완전히 바꾸는 워크플로우를 구축했습니다. 이제 전체 워크플로우를
00:00:39살펴보기 전에, 이 도구에 대한 간단한 소개와 무엇이 필요한지 알아보겠습니다. GitHub 저장소에 있는
00:00:44설치 명령어들입니다. 그냥 복사해서 Claude Code에 입력하면 기본적으로
00:00:49전체 과정을 설치하고 설정해 줍니다. Claude Code가 필요한 모든 종속성을 설치하고,
00:00:54보시는 것처럼 완료되면 Skill Spectre를 사용할 수 있습니다. GitHub 저장소 안에는
00:00:59테스트 폴더가 있고 그 안에는 실제로 도구가 작동하는지 확인해 볼 수 있는 위험한 스킬들이 있습니다.
00:01:04그래서 이 스킬들에 대해 실행해 보았고, 하나하나 모두 설치하지 말라고 알려줍니다.
00:01:09점수가 높을수록 더 위험한 스킬입니다. 그리고 각 테스트마다 단순히 점수만 주는 것이 아니라,
00:01:14정확한 줄 번호, 정확한 위치, 파일명을 보여주어 무엇 때문에 점수가 높아졌는지 알려줍니다.
00:01:19이제 이게 이 도구를 사용하는 유일한 방법은 아니며, 다른 모드도 있습니다.
00:01:24두 번째 모드가 필요한 이유를 이해하려면 먼저 두 가지를 알아야 합니다. 스킬이 어떻게
00:01:30공격하는지와 이 도구가 그 공격을 어떻게 잡아내는지 말이죠. 14가지 범주가 있지만,
00:01:34단순하게 하기 위해 6가지 유사한 범주로 묶었습니다. 첫 번째 공격 방식은
00:01:39숨겨진 지시 사항입니다. 스킬은 단지 지시 사항이 가득 담긴 텍스트 파일이며 에이전트는
00:01:45전체 내용을 읽고 명령으로 처리합니다. 문제는 악성 스킬이 그 안에 여러분은 절대 볼 수 없는
00:01:50추가 지시 사항을 숨길 수 있다는 것입니다. 하지만 에이전트는 이를 읽습니다. 주석 안에 숨기거나,
00:01:55보이지 않는 문자를 사용하거나, 여러분에게는 무의미해 보이는 코드로 텍스트를 난독화하는데, AI는 잘 읽어냅니다.
00:02:01그래서 스캐너는 특별히 이러한 숨겨진 지시 사항을 찾아내도록 제작되었습니다. 두 번째 방식은
00:02:06사칭입니다. 에이전트는 이름으로 신뢰하고 사용하는 도구들이 있습니다. 예를 들어 파일을 읽는 “read”라는
00:02:12도구가 있다면, 악성 스킬은 자신의 도구에 정확히 같은 이름을 붙여서,
00:02:17에이전트가 안전한 줄 알고 악성 도구를 가져가게 만듭니다. 이들은 아주 교묘하게
00:02:22다른 알파벳에서 비슷하게 생긴 문자로 교체합니다. 예를 들어 “read”라고 이름을 짓는데,
00:02:27“A”는 사실 우리 글자와 똑같이 생긴 러시아 문자입니다. 언뜻 보기에는 똑같지만
00:02:33내부적으로는 완전히 다른 도구입니다. 스캐너는 모든 문자의 실제 ID를 확인하여 이를 잡아내는데,
00:02:38그 가짜 문자를 찾아내어 플래그를 표시합니다. 세 번째 방식은 스킬이 무엇을 하는지 거짓말하는 경우입니다.
00:02:43설명은 하나지만 코드는 다른 일을 합니다. 간단한 포맷터라고 해놓고
00:02:48백그라운드에서 조용히 인터넷에 연결합니다. 또는 파일 읽기 권한만 필요하다고 해놓고
00:02:53실제로는 파일을 작성하고 명령을 실행하기도 합니다. 이건 잡아내기가 훨씬 더 어렵습니다.
00:02:58그래서 두 번째 모드가 필요한 건데, 나중에 다시 다루겠습니다. 네 번째는 스킬이 인증 정보를 훔치는 경우입니다.
00:03:03API 키나 비밀번호가 될 수 있습니다. 스킬이 기기에 저장된 모든 키를 훑어서
00:03:08가져간 뒤 서버로 전송합니다. 다섯 번째는 단순히 악성 코드를 직접 실행하는 경우입니다.
00:03:13리버스 셸 같은 것이 포함되는데, 기본적으로 낯선 사람에게 컴퓨터 전체의 원격 제어권을
00:03:18넘겨주는 것이죠. 이런 종류의 악성 코드는 알려진 지문이 있기 때문에
00:03:23스캐너가 지문 라이브러리와 대조하여 잡아냅니다. 여섯 번째 방식은
00:03:28종속성을 오염시키는 것입니다. 스킬은 작업의 일부를 처리하기 위해 터미널에서 실행되는
00:03:32CLI 도구 같은 외부 프로그램을 자주 사용합니다. 악성 스킬은 실제로는 악성인 요소를 가져옵니다.
00:03:39어쩌면 유명한 패키지와 이름이 한 글자 다른 가짜 패키지일 수도 있습니다. 잘못된 것을
00:03:44가져와서 마지막 유형처럼 악성 코드를 실행하게 됩니다. 그래서 스캐너는 스킬이 가져오는 모든 패키지를
00:03:49알려진 악성 패키지 데이터베이스와 대조합니다. 가짜 이름이나 다운로드 및 실행 명령을
00:03:54찾아내어 시스템을 안전하게 보호합니다. 첫 번째 모드에서는 컨텍스트 없이 패턴만 일치시키므로
00:03:59문제가 없는 것을 위험하다고 표시하기도 합니다. 이것이 이른바 오탐지입니다.
00:04:05여기서 두 번째 모드인 AI 스캔이 필요한데, 켜는 것은 간단합니다.
00:04:09no LLM 플래그를 지우면 두 번째 스캔이 수행됩니다. 하지만 코드를 보면
00:04:14스킬에 대해 AI 검사를 실행하려면 OpenAI 키를 넣어야 한다는 것을 알 수 있습니다. 그래서 그 비용을
00:04:20피하기 위해 Claude Code 자체를 사용하여 AI 검사를 실행합니다. Claude Code의 메인 에이전트가
00:04:26직접 하는 것은 아닙니다. 채팅 창 없이 백그라운드에서 실행되는 Claude Code인
00:04:32헤드리스 모드를 사용합니다. 스스로 명령을 실행하는 것이죠. 대부분 유료라는 건 아시겠지만,
00:04:38Anthropic 플랜에 따라 매월 크레딧이 제공됩니다. Claude Code에게
00:04:43방금 말한 변경을 하라고 요청하면 알아서 해줍니다. 물론 버그가 있을 수도 있지만,
00:04:48간단한 프롬프트로 Claude가 설정할 수 있습니다. 영상이 재밌으셨다면,
00:04:52채널 구독과 좋아요 버튼을 눌러주세요. 작은 응원이 큰 힘이 됩니다.
00:04:57그들은 테스트 폴더에 AI 검사가 필요한 위험한 스킬들도 가지고 있습니다. 실행했을 때
00:05:03no LLM 검사를 실행하면 점수가 0으로 나와서 완전히 안전하다는 뜻이죠.
00:05:07하지만 AI 검사를 실행하는 즉시 점수가 100으로 뛰고 설치하지 말라고 나옵니다.
00:05:12이유도 정확히 설명해주고요. 하지만 스킬의 문제를 탐지하는 것에서 그치지 않고
00:05:17수정까지 도와준다면 어떨까요? 그래서 스캐너를 하나의 스킬로 만들었습니다.
00:05:22이름이 왜 Discover Skills냐고요? 우리는 단순히 별도의 스킬 하나를 만든 게 아니기 때문입니다.
00:05:27더 많은 스킬을 발견하고 설치하기 전에 안전한지 확인하는 전체 과정을 만든 것입니다.
00:05:31한동안 skills.sh를 사용하여 새 스킬을 찾아왔습니다. 기본적으로 스킬 전용 git 저장소입니다.
00:05:36하나의 거대한 공유 라이브러리인 셈이죠. 최근 CLI 업데이트가 배포된 것 같은데,
00:05:42Claude가 명령줄을 통해 직접 검색 쿼리를 실행하고 필요한 최고의 스킬을 가져올 수 있게 되었습니다.
00:05:47그리고 우리 스캐너가 그 위에서 실행되길 바랐습니다. scan.sh는 Skill Spectre를 실행하는
00:05:53스크립트입니다. CLI 도구라서 명령어로 실행되어야 하므로,
00:05:57전체 스크립트를 만들고 Claude 헤드리스 모드 수정을 포함했습니다.
00:06:02기본적으로는 일반 검사를 실행하지만, 원하면 AI 검사도 실행할 수 있습니다.
00:06:08skill.md를 열어보면 기본 단계를 확인할 수 있습니다. 대상을 식별하고 스캔한 뒤
00:06:13결과를 보여줍니다. 문제를 파악한 후에는 수정하고 전체 루프를 다시 실행하여 모든 것이 깨끗한지 확인합니다.
00:06:19예를 들어, 지금 보여드리는 이 폴더는 AI 랩 설계 폴더입니다.
00:06:24전체 디자인 프로세스를 하나의 폴더에 압축하고 여러 스킬이 들어있습니다.
00:06:28이에 관한 영상도 있습니다. 게다가 전체 시스템은 커뮤니티인 AI 랩 프로에서 이용 가능합니다.
00:06:34채널을 지원하고 이 전체 디자인 시스템을 가져가고 싶다면, 확인해 보세요.
00:06:39이 검색 스킬도 거기에 업로드될 것입니다. 링크는 설명란에 있겠지만, 우리는
00:06:44그 위에 빌드하고 있습니다. 새로운 make design.md 스킬을 추가하고 있는데,
00:06:49이미 빌드한 앱에서 디자인 토큰(색상, 폰트, 간격 규칙)을 추출하여 design.md 파일로 병합하는
00:06:54가장 빠른 방법입니다. design.md 파일을 만들고 싶어서
00:06:59개선하고 싶다고 말했고 다른 도구들을 찾으라고 했습니다.
00:07:04skills.sh를 사용했고, 발견 스킬을 로드하여 몇 가지 스킬을 가져왔습니다.
00:07:10이 스킬들이 돌아왔고 처음 두 개가 흥미로워 보였습니다. 그래서 깊이 파고들었죠.
00:07:15설치하고 테스트하라고 요청했습니다. 발견 스킬 워크플로우에 명시된 대로,
00:07:21스캔 없이는 설치하지 않습니다. 그래서 설치하고 읽어본 결과
00:07:26어느 것도 make design.md 스킬에 도움이 되지 않는다고 했습니다. 하지만 보안 관점에서
00:07:31첫 번째 스킬은 안전 점수 10점으로 안전했고, 두 번째는
00:07:36100점으로 설치하지 말라고 했습니다. 그래서 두 번째 스킬에 AI 검사를 실행하라고 했습니다.
00:07:41Claude의 헤드리스 모드로 다시 실행했고 이번에는 점수가 0으로 돌아왔습니다.
00:07:46이 스킬은 사용하기에 안전했다는 뜻이죠. 이것이 이 시스템의 핵심입니다. 인터넷에서 맹목적으로
00:07:52스킬을 가져오는 것이 아닙니다. 스킬을 사용하여 시작할 수 있는 전체 프로세스가 있는 것이죠.
00:07:56이제 스폰서인 Nimblist에 대해 들어보겠습니다. Claude Code나 Codex를 사용한다면,
00:08:01문제는 아실 겁니다. 여러 세션이 실행 중이고 파일은 어디서나 변경되며,
00:08:06에이전트가 무엇을 하는지 추적하려고 터미널, 브라우저, 편집기를 계속 오가죠.
00:08:12Nimblist는 모든 것을 한곳에 모아두는 오픈 소스 시각적 워크스페이스입니다.
00:08:17동시에 여러 프로젝트 작업을 하는 3개의 에이전트가 있었는데, 창을 넘나드는 대신,
00:08:23칸반 보드에서 모두 확인하고, 세션에 뛰어들어, 코드 변경 사항을 빨간색과 초록색 diff로 검토하고,
00:08:28개별적으로 승인하거나 거부할 수 있었습니다. 마크다운 문서, UI 목업, 아키텍처 다이어그램을
00:08:33에이전트와 나란히 시각적으로 편집했죠. 완료 후에는 커밋 메시지를 자동으로 생성해 주기 때문에
00:08:38수동으로 깔끔하게 정리할 필요가 없었습니다. 작업은 실제 세션과 계속 연결되어 있고,
00:08:45책상에서 멀어져 있을 때도 세션을 이어갈 수 있는 모바일 앱도 있습니다. Nimblist는
00:08:50완전히 무료이며 오픈 소스이므로 고정 댓글의 링크를 사용해 확인해 보세요.
00:08:56이 영상이 끝났습니다. 채널을 지원하고 이런 영상을 계속 만드는 데 도움을 주고 싶다면,
00:09:00아래의 슈퍼 땡스 버튼을 사용해 보세요. 언제나 시청해 주셔서 감사하며,
00:09:05이번 영상이 도움 되셨다면 채널 후원을 통해 앞으로도 이런 영상을 계속 만들 수 있도록
00:09:10아래에 있는 슈퍼 땡스 버튼으로 지원해 주실 수 있습니다. 늘 시청해 주셔서 감사드리고, 다음 영상에서 뵙겠습니다.

Key Takeaway

Skill Spectre와 Claude Code 헤드리스 모드를 결합한 스캔 워크플로우를 사용하면 AI 에이전트 스킬 설치 시 보안 위험을 탐지하고 차단할 수 있습니다.

Highlights

  • AI 에이전트 스킬의 25% 이상에서 보안 취약점이 발견되었습니다.

  • Skill Spectre 도구는 스킬 설치 전 위험 요소를 스캔하여 줄 번호와 파일명을 포함한 정확한 위치를 알려줍니다.

  • 악성 스킬은 숨겨진 지시 사항, 사칭, 악성 코드 직접 실행, 종속성 오염 등의 방식으로 공격을 수행합니다.

  • Skill Spectre의 두 번째 모드인 AI 스캔은 Claude Code 헤드리스 모드를 활용하여 비용 효율적으로 정밀 검사를 수행합니다.

  • 검색된 스킬을 설치하기 전 스캔하고 수정하는 워크플로우를 통해 안전한 에이전트 환경을 구축할 수 있습니다.

Timeline

AI 에이전트 스킬의 보안 위협과 Skill Spectre

  • 연구 결과 AI 에이전트 스킬의 4분의 1 이상에서 보안 취약점이 발견되었습니다.
  • Skill Spectre는 설치 전 스킬의 위험도를 평가하여 알려주는 도구입니다.
  • 이 도구는 위험한 스킬을 설치하지 말라고 경고하며, 문제가 되는 정확한 파일과 코드 위치를 식별합니다.

AI 에이전트 사용이 증가함에 따라 보안 검사 없는 스킬 설치는 위험을 초래합니다. NVIDIA가 제작한 Skill Spectre는 이러한 스킬을 분석하여 점수를 매깁니다. 위험 점수가 높을수록 스킬이 더 위험함을 의미하며, 문제가 되는 구체적인 줄 번호와 파일 경로를 제공하여 사용자에게 명확한 판단 근거를 제시합니다.

6가지 주요 공격 방식과 탐지 원리

  • 악성 스킬은 주석이나 난독화를 통해 에이전트만 읽을 수 있는 지시 사항을 숨깁니다.
  • 비슷한 문자를 사용하여 기존 도구를 사칭함으로써 에이전트가 악성 도구를 선택하도록 유도합니다.
  • 스캐너는 패키지 데이터베이스와의 대조를 통해 오염된 종속성을 잡아냅니다.
  • 인증 정보 탈취나 원격 제어권을 넘겨주는 악성 코드는 알려진 지문 라이브러리를 통해 식별합니다.

공격 방식은 크게 숨겨진 지시 사항, 사칭, 거짓 정보, 인증 정보 탈취, 직접적인 악성 코드 실행, 종속성 오염 등 6가지로 분류됩니다. 스캐너는 각 유형에 최적화된 방어 기제를 갖추고 있습니다. 예를 들어, 문자의 실제 ID를 확인하여 교묘한 사칭을 잡아내거나, 외부 프로그램 호출 시 알려진 악성 데이터베이스와 대조하여 시스템 안전을 보호합니다.

AI 스캔 모드와 워크플로우 통합

  • 일반 스캔의 오탐지를 해결하기 위해 Claude Code 헤드리스 모드를 이용한 AI 심층 스캔을 수행합니다.
  • 사용자는 no LLM 플래그를 수정하여 Claude Code를 통한 정밀한 AI 검사를 실행할 수 있습니다.
  • 단순한 스캔을 넘어, 발견한 스킬을 안전하게 검증하고 설치하는 전체 워크플로우를 구축해야 합니다.

패턴 매칭 기반의 첫 번째 모드는 오탐지 가능성이 있어 AI를 활용한 두 번째 스캔 모드가 필요합니다. 별도의 OpenAI 비용을 지출하는 대신, 사용 가능한 Claude Code 헤드리스 모드를 백그라운드에서 활용해 비용을 절감합니다. 최종적으로 스킬을 가져오고 스캔하여 문제가 있으면 수정하고, 안전한 경우에만 설치하는 순환 워크플로우를 적용합니다.

Community Posts

View all posts