AWS 기술 블로그
LLM 에 대한 OWASP Top 10을 사용하여 생성형 AI 애플리케이션을 위한 심층적인 방어 보안 설계
이 글은 AWS Machine Learning Blog에 게시된 Architect defense-in-depth security for generative AI applications using the OWASP Top 10 for LLMs을 한국어 번역 및 편집하였습니다.
대규모 언어 모델(LLM)을 기반으로 하여 구축된 생성형 인공 지능(Al) 애플리케이션은 비즈니스 측면에서 경제적 가치를 창출하고 가속화할 수 있다는 잠재력을 입증했습니다. 생성형 AI 기반 애플리케이션의 유형으로는 대화형 검색, 고객 대상 상담원 지원, 고객 지원 분석, 셀프 서비스 가상 비서, 챗봇, 리치 미디어 생성, 콘텐츠 조정, 안전한 고성능 소프트웨어 개발 가속화를 위한 코딩 도우미, 멀티모달 콘텐츠 소스에 대한 심층적인 분석, 조직의 보안 조사 및 완화 가속화 등 다양한 애플리케이션이 있습니다. 그리고 많은 고객들이 생성형 Al 기반 애플리케이션을 개발할 때 안전한 개발환경 제공을 위하여 보안, 개인정보 보호, 규정 준수를 관리하는 방법에 대한 지침을 찾고 있습니다. 설계 및 아키텍처 단계에서 LLM 취약성, 위협 및 위험을 이해하고 이 과정에서 식별된 위협들을 사전에 해결하면 여러 유관 부서들은 생성형 AI가 가져올 수 있는 경제적, 생산성 측면에서의 이점을 극대화하는 데 집중할 수 있습니다. 또한, 위험을 사전에 식별하게 되면 생성형 Al 애플리케이션의 투명성과 신뢰도가 향상되고, 관찰 가능성이 높아지며, 규정 준수 요건을 충족하는 데 도움이 되고, 리더가 정확한 정보를 기반으로 의사 결정을 내리는데 도움을 줄 수 있습니다.
이 글은 AI 및 머신러닝(ML) 엔지니어, 데이터 과학자, 솔루션 설계자, 보안팀, 기타 이해관계자가 보안 모범 사례를 적용할 수 있는 공통의 사고 모델과 프레임워크를 갖도록 지원하여 Al/ML 팀이 속도를 위해 보안을 희생하지 않고도 빠르게 움직일 수 있도록 하는 것에 목표를 두고 있습니다. 특히, 이 글에서는 이전에 보안 원칙을 접해본 적이 없는 AI/ML 및 데이터 과학자가 LLM을 사용하여 생성형 AI 애플리케이션을 개발하는 과정에 필요한 핵심 보안 및 개인정보 보호 모범 사례를 이해하는 데 도움을 주고자 합니다. 또한, LLM 애플리케이션에 대한 OWASP(Open Worldwide Application Security Project)의 상위 10가지 보안 문제에서 확인된 바와 같이 AI에 대한 신뢰를 약화시킬 수 있는 일반적인 보안 문제에 대해 논의하고, AWS를 사용하여 보안 태세와 AI 에 대한 신뢰를 강화하는 동시에 생성형 Al로 혁신할 수 있는 방법을 보여 드리고자 합니다.
이 글에서는 LLM을 사용하여 생성형 AI 애플리케이션을 개발하는 과정에 필요한 위험 관리 전략을 설계하기 위한 세 가지 단계를 안내합니다. 먼저 1) LLM 솔루션의 구현, 배포, 사용으로 인해 발생하는 취약점, 위협, 위험에 대해 살펴보고 보안을 기반으로 혁신을 시작하는 방법에 대한 가이드를 제공하고자 합니다. 2) 그런 다음 생성형 AI 를 안전한 환경위에서 구축하는 것이 왜 필수적인지 논의합니다. 마지막으로, 3) 이 두가지 내용을 샘플 LLM 워크로드와 맵핑 하여 신뢰 경계를 넘어 심층적인 보안을 갖춘 아키텍처를 구축하기 위한 접근 방식을 설명하도록 하겠습니다.
이 글이 마무리되면 AI/ML 엔지니어, 데이터 과학자, 보안에 관심이 있는 기술 관련 직군에 종사하는 분들은 생성형 Al애플리케이션을 위해 계층화 된 방어를 설계하는 전략을 파악하실 수 있게 됩니다. 이를 기반으로 LLM 의 보안 우려에 대한 OWASP Top 10 항목 들을 일부 보안 통제 항목에 맵핑 하는 방법을 이해하고, 애플리케이션에 대한 다음과 같은 AWS 의 주요 고객 질문에 답하기 위한 기초 지식을 쌓을 수 있을 것입니다:
- 이 가이드를 통해 가장 큰 영향을 받게 되는 “애플리케이션에서 LLM 기반의 생성형 AI를 사용할 때 발생하는 일반적인 보안 및 개인정보 보호 위험” 에는 어떤 것이 있나요?
- AWS에서 생성형 AI LLM 애플리케이션의 개발 수명 주기에 대한 보안 및 개인정보 보호 제어를 구현하는 방법에는 어떤 것이 있나요?
- 조직에서 LLM을 사용하는 생성형 AI 애플리케이션의 위험을 관리하고 신뢰도를 높이기 위해 생성형 AI LLM 애플리케이션을 구축하는 방식에 통합할 수 있는 운영 및 기술 모범 사례는 무엇인가요?
생성형AI를 개발과정에서 보안 결과 개선
LLM을 사용하여 생성형 AI를 혁신하려면 1)보안을 기반으로 한 조직의 복원력에 대한 개발, 2)안전한 기반 환경을 구축, 3)보안을 심층 방어 보안 접근 방식과 통합하는 것부터 시작해야 합니다. 보안은 AWS와 AWS 고객의 공동 책임입니다. 또한, AWS 공유 책임 모델의 모든 원칙은 생성형 AI 솔루션에도 적용됩니다. 따라서, LLM 솔루션을 구축하기 전에 인프라, 서비스, 데이터에 적용되는 AWS 공유 책임 모델에 대해 다시 한 번 살펴보고 이해를 새롭게 하시기 바랍니다.
보안을 기반으로 한 조직의 복원력 개발 시작
보안 및 규정 준수 목표를 충족하는 생성형 AI 애플리케이션을 개발하기 위한 조직 복원력을 개발하려면 보안을 먼저 우선 순위에 두고 시작하시기 바랍니다. 조직 복원력은 특정 중단 상황으로부터 복구할 수 있는 조직의 능력을 포함하고 이에 대비하기 위해 AWS Well-Architected Framework의 복원력 정의를 바탕으로 준비되고 확장되어야 합니다. LLM을 사용하여 생성형 AI를 개발하기 위한 전반적인 준비 상태와 잠재적인 영향에 대한 조직의 복원력을 평가할 때는 보안 상태, 거버넌스, 운영 우수성을 함께 고려하시기 바랍니다. 그리고 조직에서 생성형 Al 및 LLM과 같은 새로운 기술의 사용을 발전시킬 때는 의도하지 않은 결과로부터 자산과 비즈니스 라인을 보호하기 위한 계층화 된 방어 전략을 다지기 위하여 전반적인 조직 복원력을 고려해야 합니다.
조직 복원력은 LLM 애플리케이션에 매우 중요
모든 위험 관리 프로그램이 복원력의 이점을 누릴 수 있지만, 생성형 AI의 경우 조직의 복원력이 더욱 중요합니다. OWASP가 선정한 LLM 애플리케이션의 10대 위험 중 5개는 위험을 관리하기 위해 아키텍처 및 운영 제어를 정의하고 조직 규모에 맞게 시행하는 것과 연관되어 있습니다. 이 5가지 위험은 1)안전하지 않은 출력물 처리, 2)공급망 취약성, 3)민감한 정보 공개, 4)과도한 에이전시, 5)지나친 의존입니다. 아이디어 구상부터 연구, 애플리케이션 개발, 배포, 사용에 이르기까지 제품의 전체 수명 주기에 걸쳐 Al, ML, 생성형 AI 보안을 핵심 비즈니스 요구 사항이자 최우선 과제로 고려하도록 유관 부서들을 교육하여 조직의 복원력을 높이시기 바랍니다. 그리고 여러 유관 부서는 이와 같은 인식과 더불어 거버넌스, 보증 및 규정 준수 검증 업무에서 생성형 AI를 처리하기 위한 적절한 조치를 강구해야 합니다.
AI를 중심으로 조직 복원력 구축하기
조직은 조직 내에서 AI/ML 및 AI 보안을 위한 역량과 기능을 구축하는 방법을 채택할 수 있습니다. 먼저 생성형 AI 를 적절하게 처리하기 위해 기존의 보안, 보증, 규정 준수 및 개발 프로그램을 확장하는 것부터 시작해야 합니다.
다음은 조직의 Al, 머신러닝 및 생성형 Al 보안을 위한 5가지 주요 관심 분야입니다:
- AI/ML 보안 환경 이해
- 보안 전략에 다양한 관점 포함
- 연구 개발 활동 보안을 위한 선제적 조치 취하기
- 인센티브를 조직의 성과에 맞게 조정하기
- Al/ML 및 생성형 AI에 대한 현실적인 보안 시나리오 준비
생성형 AI 수명 주기 전반에 걸쳐 위협 모델 개발하기
생성형 Al로 서비스를 구축하는 조직은 해당 서비스에 대한 위험 제거보다는 위험 관리에 중점을 두어야 하며, 생성형 Al 워크로드의 계획, 개발, 운영과 관련하여 위협 모델링을 수행하고 비즈니스 연속성 계획을 포함해야 합니다. 이를 위해 기존의 보안 위험과 생성형 AI 관련 위험을 기반으로 하여 각 애플리케이션에 대한 위협 모델을 개발해야 합니다. 그리고 위협 모델링을 생성형 AI를 운영환경에서 사용하는 것부터 시작하여 위협 모델링의 순서를 역순으로 수행해야 합니다. 위협 모델링을 통해 도출된 일부 위험은 비즈니스 상황에 따라 수용될 수 있으며, 위협 모델링에 대한 훈련은 회사가 수용 가능한 위험 성향을 파악하는 데 도움이 될 수 있습니다. 예를 들어, 생성형 Al 애플리케이션에서 99.999%의 가동 시간이 필요하지 않을 수 있으므로, Amazon S3 Glacier가 포함된 AWS Backup을 사용한 복구와 관련된 추가 복구 시간은 수용 가능한 위험일 수 있습니다. 반대로, 모델의 데이터가 매우 민감하고 적용되는 규제가 엄격할 수 있으므로 AWS Key Management Service(AWS KMS) 의 Customer Managed Key(CMK) 교체 기능을 사용하지 않거나 데이터 유출을 방지하기 위해 수신 및 송신 트래픽에 대해 TLS(Transport Layer Security)를 강제하는데 도움을 줄 수 있는AWS Network Firewall 을 적용하지 않는 것과 같은 행위는 수용 불가능한 위험일 수 있습니다.
적절한 기본 통제와 어플리케이션 수준의 통제 항목을 식별하기 위해서 운영 환경의 생성형 AI 애플리케이션을 사용할 때의 위험(내재적 위험과 잔여적 위험)을 평가하시기 바랍니다. 프롬프트 주입, 학습 데이터 오염, 모델 서비스 거부, 모델 도난과 같은 운영환경의 보안 이벤트 및 서비스 중단으로부터의 롤백 및 복구를 조기에 계획하고 애플리케이션 요구 사항을 정의할 때에는 이와 관련하여 여러분이 사용할 예방 계획을 정의하시기 바랍니다. 또한, 생성형 AI 애플리케이션을 구축하기 위한 최적의 구현 방식을 정의하기 위해 필요한 위험과 통제 방안에 대해 학습하고 이해관계자와 의사 결정권자가 위험에 대해 해당 정보에 입각한 비즈니스 결정을 내릴 수 있는 적절하게 정보를 제공하셔야 합니다. 전반적인 AI 및 ML 워크플로에 익숙하지 않다면 머신러닝 워크로드의 보안을 개선하는 7가지 방법을 검토하여 기존 AI/ML 시스템에 필요한 보안 통제항목에 대한 이해도를 높이는 것부터 시작하시기 바랍니다. 다른 머신러닝 애플리케이션을 구축하는 것과 마찬가지로, 생성형 Al 애플리케이션을 구축하려면 일련의 연구 및 개발 수명 주기 단계를 거쳐야 합니다. 선택한 생성형 AI 솔루션에 따라 고려해야 하는 주요 보안 분야를 이해하는 데 도움이 되는 멘탈 모델을 구축하고자 하신다면 AWS 생성형 AI 보안 범위 매트릭스를 검토해보는 것을 권장 드립니다.
LLM을 사용하는 생성형 AI 애플리케이션은 일반적으로 아래와 같이 정해진 단계에 따라 개발 및 운영됩니다:
- 애플리케이션 요구 사항 – 비즈니스 목표 사용사례, 요구 사항 및 성공 기준 식별
- 모델 선택 – 사용 사례 요구 사항에 맞는 파운데이션 모델을 선택
- 모델 조정 및 파일 튜닝 – 데이터를 준비하고, 프롬프트를 엔지니어링하고, 모델을 파인 튜닝
- 모델 평가 – 사용 사례별 메트릭으로 파운데이션 모델을 평가하고 가장 성능이 좋은 모델을 선택
- 배포 및 통합 – 선택한 파운데이션 모델을 최적화된 인프라에 배포하고 생성형 AI 애플리케이션과 통합
- 애플리케이션 모니터링 – 근본 원인 분석이 가능하도록 애플리케이션 및 모델 성능을 모니터링
업무를 시작하는 단계에서부터 각 유관 부서들이 소프트웨어 개발 라이프사이클의 설계 및 아키텍처 단계의 일부로서 보안의 중요성에 대해 이해할 수 있도록 하시기 바랍니다. 즉, 스택과 수명주기의 각 계층에서 보안에 대해 논의하고 보안과 개인정보 보호를 비즈니스 목표 달성을 위한 원동력으로 삼아야 합니다. 또한, LLM 애플리케이션을 시작하기 전에 위협에 대한 통제 항목들을 설계해야 합니다. 그리고 모델 조정 및 파인 튜닝에 사용할 데이터와 정보가 연구, 개발 및 교육 환경에서 적절한 통제 항목의 구현을 보장하는지 고려해야 합니다. 품질 보증 테스트 과정에 복합적인 보안 위협(예: 훈련 데이터 포이즈닝 시도 또는 악의적인 프롬프트 엔지니어링을 통한 민감한 데이터 추출 시도)을 적용하여 정기적으로 방어 및 보안 태세를 테스트하시기 바랍니다.
또한, 이해관계자는 프로덕션 Al, 머신러닝, 생성형 AI 워크로드에 대한 일관된 검토 주기를 설정하고 서비스 출시 전에 사용자와 기계간의 제어와 오류에서 발생할 수 있는 트레이드오프를 이해하는데 조직의 우선순위를 설정해야 합니다. 배포된 LLM 애플리케이션에서 이러한 트레이드오프가 준수되는지 검증하고 보장하면 위험을 방어하는 성공 가능성을 높일 수 있습니다.
안전한 클라우드 기반에서 생성형 AI 애플리케이션 구축
AWS는 항상 보안을 최우선으로 생각합니다. AWS는 여러분의 애플리케이션과 워크로드를 구축하거나 마이그레이션, 관리할 수 있도록 가장 안전한 글로벌 클라우드 인프라로 설계되었습니다. 이는 300개가 넘는 클라우드 보안 도구와 정부, 의료, 금융 서비스 등 보안에 가장 민감한 조직을 포함한 수백만 고객들의 신뢰가 뒷받침하고 있습니다. 따라서, 여러분은 AWS에서 LLM을 사용하여 생성형 AI 애플리케이션을 빌드하시면 안전하고 신뢰할 수 있으며 유연한 AWS 클라우드 컴퓨팅 환경의 보안 이점을 누리실 수 있습니다.
보안, 개인정보보호 및 규정 준수를 위한 AWS 글로벌 인프라 사용
AWS환경에서 데이터 집약적인 애플리케이션을 개발하면 핵심 보안 및 규정 준수 요구 사항을 충족하는 기능을 제공하도록 설계된 AWS 글로벌 리전 인프라의 이점을 누리실 수 있습니다. 이와 같은 이점은 클라우드에서 사용할 수 있는 가장 진보된 주권 제어 및 기능을 제공하겠다는 약속인 AWS 디지털 주권 서약을 통해 더욱 강화됩니다. AWS는 AWS 클라우드의 성능, 혁신, 보안, 규모에 영향을 주지 않으면서도 디지털 주권 요구 사항을 충족할 수 있도록 기능을 개선하고 확장하기 위해 최선을 다하고 있습니다. AWS 환경에서의 보안 및 개인정보 보호 모범 사례의 구현을 쉽고 간단하게 하고 싶으시다면AWS 보안 참조 아키텍처(AWS SRA) 및 AWS 개인정보 보호 참조 아키텍처(AWS PRA)와 같은 아키텍처들을 참고하거나 Infrastructure as Code (IaC) 자원들을 이용하는 것을 고려하시기 바랍니다. 프라이버시 솔루션 설계, 소버린티 바이 디자인, AWS 에서의 컴플라이언스 준수 등에 대해 더 자세히 알고 싶으시다면 링크되어 있는 문서를 참고하시기 바라며, 개인정보보호, 규정준수, 감사 및 관측 가능성 등의 요구 사항에 대해서는 AWS Config, AWS Artifact, AWS Audit Manager 등과 같은 서비스를 사용하시기 바랍니다.
AWS Well Architected 및 클라우드 도입 프레임워크를 사용하여 보안 태세 이해하기
AWS는 수년간의 고객 지원 경험을 바탕으로 개발된 모범 사례 가이드를 통해 고객이 AWS Well-Architected Framework를 이용하여 클라우드 환경을 설계하고, AWS Cloud Adoption Framework(AWS CAF)를 통해 클라우드 기술에서 비즈니스 가치를 실현할 수 있도록 진화하는 데 도움을 드리고 있습니다. Well-Architected Framework Review를 수행하여 생성형 Al, 머신 러닝, 생성형 AI 워크로드에 대한 보안 태세를 파악하시기 바랍니다. Well-Architected Review 는 AWS Well-Architected 도구와 같은 도구를 사용하거나 AWS 엔터프라이즈 지원을 통해 AWS 팀의 도움을 받아 수행하실 수 있습니다. AWS Well-Architected 도구는 AWS Trusted Advisor 의 인사이트를 자동으로 통합하여 어떤 모범 사례가 적용되고 있는지, 기능 및 비용 최적화를 개선할 수 있는 기회가 있는지 등을 평가합니다. 또한 AWS Well-Architected 도구는 머신 러닝 렌즈와 같은 특정 모범 사례가 포함된 맞춤형 렌즈를 제공하여 여러분의 워크로드를 모범 사례와 비교하여 아키텍처를 정기적으로 측정하고 개선이 필요한 영역을 식별할 수 있도록 하고 있습니다. 그리고 인공 지능, 머신 러닝 및 생성형 AI를 위한 AWS Cloud Adoption Framework에서 AWS 고객이 조직 역량을 개발하기 위해 전략을 채택하는 방법에 대한 이해도를 높인 후 가치 실현 및 클라우드 성숙을 향한 여러분의 여정을 점검하시기 바랍니다. 또한, AWS 클라우드 준비도 평가에 참여하는 것도 여러분의 전반적인 클라우드 준비 상태를 파악하는 데 도움이 될 수 있습니다. AWS는 이외에도 여러가지 프레임워크와 프로그램을 제공하여 여러분에게 추가적인 참여 기회를 제공합니다. – AI 혁신 센터를 시작하는 방법에 대한 자세한 내용은 담당 AWS 어카운트팀에 문의하시기 바랍니다.
모범 사례 지침, 교육 및 인증을 통해 보안 및 AI/ML 학습 가속화
또한, AWS는 교육, 개발, 테스트 및 운영 환경을 보호하는 방법을 파악하는 데 도움이 되도록 보안, 신원 확인 및 규정 준수를 위한 모범 사례와 AWS 보안 문서에서 권장 사항을 선별하여 제공합니다. 이제 처음 AWS 서비스와 관련된 업무를 시작하여 보안 교육 및 인증에 대해 더 자세히 알아보고 싶다면, AWS 보안 기본 사항과 AWS 보안 학습 계획부터 시작해보시기 바랍니다. 또한 AWS 보안 성숙도 모델을 사용하여 빠른 성과부터 기초, 효율, 최적화 단계에 이르기까지 AWS의 다양한 성숙도 단계에서 가장 적합한 활동을 찾고 우선순위를 지정하는 데 도움을 받으실 수 있습니다. 여러분과 유관 분서에서 AWS의 보안에 대해 기본적으로 이해했다면 위협 모델링에 접근하는 방법을 검토한 다음, 빌더를 위한 위협 모델링 워크숍 교육 프로그램을 시작해서 유관 부서와 함께 위협 모델링 실습을 진행할 것을 강력히 권장드립니다. 이 외에도 다양한 AWS 보안 교육 및 인증 리소스를 이용하실 수 있습니다.
LLM 애플리케이션 보안을 위한 심층 방어 접근 방식 적용
여러분이 심층 방어 보안 접근 방식을 생성형 Al 워크로드, 데이터, 정보에 적용하면 비즈니스 목표를 달성할 수 있는 최상의 환경을 만들 수 있습니다. 심층 방어 보안 모범 사례들은 모든 워크로드가 직면하는 수 많은 일반적인 위험들을 방어하여 사용자와 유관 부서가 생성형 AI 혁신을 가속화할 수 있도록 지원 드립니다. 심층 방어 보안 전략은 여러 중복 방어를 사용하여 AWS 계정, 워크로드, 데이터 및 자산을 보호합니다. 하나의 보안 통제가 훼손되거나 실패할 경우 위협을 격리하고 보안 이벤트를 예방, 탐지, 대응 및 복구하는 데 도움이 되는 추가 계층이 존재하도록 구성합니다. 각 계층에서 AWS 서비스 및 솔루션을 비롯한 여러 전략을 조합하여 생성형 Al 워크로드의 보안과 복원력을 개선하실 수 있습니다.
많은 AWS 고객이 NIST 사이버 보안 프레임워크와 같은 업계 표준 프레임워크를 준수합니다. 이 프레임워크는 식별, 보호, 탐지, 대응, 복구, 그리고 가장 최근에 추가된 거버넌스(관리)와 같은 중요 핵심 사항에 걸쳐 보안 방어를 보장하는 데 도움이 됩니다. 이 프레임워크는 AWS 보안 서비스 및 통합된 타사의 서비스에 쉽게 매핑되어 조직에서 발생하는 모든 보안 이벤트에 대한 적절한 적용 범위와 정책을 검증하는 데 도움이 됩니다.
심층적인 방어: 보안 적용 후 다음 향상된 Al/ML 전용 보안 및 개인 정보 보호 기능 추가
심층 방어 전략은 먼저 계정과 조직을 보호하는 것부터 시작한 다음, Amazon Bedrock 및 Amazon SageMaker와 같은 서비스에 내정된 보안 및 개인정보 보호 강화 기능을 추가하는 방식으로 진행해야 합니다. Amazon은 보안, 아이덴터티 및 규정 준수 포트폴리오에 30개 이상의 서비스를 보유하고 있으며, 이 서비스들은 AWS Al/ML 서비스와 통합되어 워크로드, 계정, 조직을 보호하는 데 함께 사용하실 수 있습니다.
LLM에 대한 OWASP Top 10항목들을 적절히 방어하려면 이러한 보안과 관련된 서비스를 AWS Al/ML 서비스와 함께 사용해야 합니다. 먼저 최소 권한 정책을 구현하고, IAM Access Analyzer와 같은 서비스를 사용하여 지나치게 많은 권한을 허용한 계정, 역할 및 리소스를 탐지하여 단기 자격 증명을 이용한 접근을 제한하시기 바랍니다. 다음으로, CMK 를 기반으로 저장된 모든 데이터를 AWS KMS로 암호화하고, 모든 데이터와 모델을 Amazon Simple Storage Service(Amazon S3) 버전 관리를 사용하여 버전 관리 및 백업해야하며 Amazon S3 객체 잠금 기능으로 객체 수준의 불변성을 적용하시기 바랍니다. 또한, AWS Certificate Manager 및/또는 AWS Private CA를 사용하여 서비스 간에 전송되는 모든 데이터를 보호하고, AWS PrivateLink를 사용하여 서비스간 통신 트래픽을 VPC 내에서 처리할 수 있도록 구성하시기 바랍니다. 강력한 데이터 인그레스 및 이그레스 규칙을 정의하고 AWS Network Firewall 정책을 이용하여VPC를 통한 데이터 조작 및 유출을 차단하시기 바랍니다. 또한, 웹 애플리케이션과 API를 보호하기 위해 AWS Web Application Firewall(AWS WAF)을 구성하여 악성 봇, SQL 인젝션 공격, 크로스 사이트 스크립팅(XSS)을 차단하고 사기 제어를 통해 계정 탈취 방어를 고려하시기 바랍니다. AWS CloudTrail, Amazon Virtual Private Cloud(Amazon VPC) Flow Log, Amazon Elastic Kubernetes Service(Amazon EKS) 감사 로그와 같은 로깅은 Amazon Detective와 같은 서비스에서 사용할 수 있는 각 트랜잭션의 포렌식 검토를 제공하는 데 도움이 될 수 있습니다. Amazon Inspector를 사용하여 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스, 컨테이너, AWS Lambda 기능에 대한 취약성 검색 및 관리를 자동화하고 워크로드의 네트워크 도달 가능성을 식별할 수 있습니다. Amazon GuardDuty의 ML 기반 위협 모델과 인텔리전스 피드를 사용하여 의심스러운 활동으로부터 데이터와 모델을 보호하고, EKS 보호, ECS 보호, S3 보호, RDS 보호, 멀웨어 보호, 람다 보호 등을 위한 추가 보안 기능을 사용하도록 설정할 수 있습니다. AWS Security Hub와 같은 서비스를 사용하여 보안 검사를 중앙 집중화 및 자동화하여 보안 모범 사례에서 벗어난 것을 감지하고, 플레이북을 통해 분석을 가속화하고 보안 발견 사항을 자동으로 교정하실 수도 있습니다. 또한 AWS에서 제로 트러스트 아키텍처를 구현하여 사용자간 혹은 머신 투 머신 프로세스가 요청별로 접근할 수 있는 항목에 대한 세분화된 인증 및 권한 제어를 더욱 강화하는 것도 고려할 수 있습니다. 마지막으로, Amazon Security Lake를 사용하여 AWS 환경, SaaS 공급자, 온프레미스, 클라우드 소스의 보안 데이터를 계정에 저장된 전용 데이터 레이크로 자동 중앙 집중화하는 것도 고려해 보시기 바랍니다. Security Lake를 사용하면 조직 전체의 보안 데이터를 보다 완벽하게 파악할 수 있습니다.
생성형 Al 워크로드에 대한 안전한 환경이 확보된 후에는 데이터 준비 과정에서 잠재적인 편향을 식별하기 위한 Amazon SageMaker Data Wrangler, ML 데이터 및 모델의 편향을 감지하기 위한 Amazon SageMaker Clarify와 같은 Al/ML 관련 기능들을 계층화 하여 구성하실 수 있습니다. 또한 Amazon SageMaker Model Monitor를 사용하여 운영 환경에서 SageMaker ML 모델의 품질을 평가하고 데이터 품질, 모델 품질 및 기능 속성에 편차가 있을 때 알림을 받도록 구성하실 수 있습니다. 이러한 AWS AI/ML 서비스(Amazon Bedrock과 함께 작동하는 SageMaker 포함)와 AWS 보안 서비스를 함께 사용하면 자연적인 편향의 잠재적 원인을 식별하고 악의적인 데이터 변조로부터 보호하는데 도움이 될 수 있습니다. LLM 취약점에 대한 OWASP 상위 10개 취약점 각각에 대해 이 프로세스를 반복함으로써 AWS 서비스의 이용에 대한 가치를 극대화하고 데이터와 워크로드를 보호하기 위한 심층적인 방어 구조를 구현하시기 바랍니다.
AWS 엔터프라이즈 전략가 클라크 로저스(Clarke Rodgers)는 그의 블로그 ‘CISO 인사이트: 모든 AWS 서비스는 보안 서비스‘라는 글에서 “AWS 클라우드 내의 거의 모든 서비스는 그 자체로 보안 결과를 제공하거나 고객이 보안, 위험 또는 규정 준수 목표를 달성하기 위해 (단독으로 또는 하나 이상의 서비스와 함께) 사용할 수 있다고 주장하고 싶습니다.”라고 말합니다. 또한 “고객의 최고 정보 보안 책임자(CISO)(또는 관련 부서)는 ‘보안, 신원 확인 및 규정 준수’ 범주에 속하지 않는 서비스라도 충족할 수 있는 보안, 위험 또는 규정 준수 목표가 있을 수 있으므로 시간을 들여 모든AWS 서비스에 대해 잘 알고 있는지 확인하는 것이 좋다.” 라고 기술했습니다.
LLM 애플리케이션의 신뢰 경계에 대한 계층 방어
생성형 AI 기반 시스템과 애플리케이션을 개발할 때는 소프트웨어 및 데이터 구성 요소의 출처(오픈 소스 소프트웨어 감사 수행, 소프트웨어 자재 명세서(SBOM) 검토, 데이터 워크플로 분석 및 API 통합 등)를 염두에 두고LLM 공급망 위협에 대해 필요한 보호 조치를 구현하는 등 다른 ML 애플리케이션과 마찬가지로 MITRE ATLAS 머신러닝 위협 매트릭스에 언급된 것과 동일한 문제들을 고려해야 합니다. 기존 프레임워크에 포함되지 않은 새로운 Al, ML 및 생성형 AI 보안 위험에 대해 대응하기 위해 보안 방어체계를 조정하고 확장할 수 있도록 업계 프레임워크에서 얻은 인사이트를 포함하여 여러 위협 인텔리전스 및 위험 정보 소스를 사용하는 방법을 알고 있어야 합니다. 이 분야에서는 새로운 위협이 정기적으로 등장하고 진화하며 관련 프레임워크와 가이드가 자주 업데이트되므로 산업, 국방, 정부, 국제 및 학계 출처에서 Al 관련 위험에 대한 관련 정보를 찾아보시기 바랍니다. 예를 들어, 검색 증강 생성(RAG) 모델을 사용할 때 모델에 필요한 데이터가 포함되어 있지 않은 경우, 해당 모델은 추론 및 파인 튜닝 중에 사용하는 것을 목적으로 외부 데이터 소스에 데이터를 요청할 수도 있습니다. 이 때 모델이 쿼리하는 데이터 소스는 기업의 통제를 벗어날 수 있으며, 공급망에서 잠재적인 보안 침해의 원인이 될 수 있습니다. 심층 방어 접근 방식을 외부 소스로 확장하여 접근하는 데이터에 대한 신뢰 여부, 인증, 권한 부여, 접근, 보안, 개인정보 보호 및 접근하는 데이터의 정확성 등을 확립해야 합니다. 이와 관련한 더 자세한 사항이 궁금하시다면 “Amazon SageMaker JumpStart를 사용하여 생성형 AI 및 RAG로 안전한 엔터프라이즈 애플리케이션 구축하기“를 읽어보시기 바랍니다.
LLM 애플리케이션의 위험 분석 및 완화
이 섹션에서는 적절한 제어 범위와 위험 프로필이 유사한 워크로드 영역, 즉 신뢰 경계 및 상호 작용을 기반으로 하는 몇 가지 위험 완화 기술을 분석하고 논의하도록 하겠습니다. 이 챗봇 애플리케이션의 샘플 아키텍처에는 AWS 고객이 일반적으로 LLM 애플리케이션을 구축하는 방식에 따라 사용할 수 있는 신뢰 경계를 예로 들기 위한 5개의 신뢰 경계가 있습니다. 여러분이 실제로 사용하는LLM 애플리케이션에는 정의 가능한 신뢰 경계가 이보다 더 많거나 적을 수 있습니다.
다음 샘플 아키텍처에서는 이러한 신뢰 경계를 다음과 같이 정의합니다:
- 사용자 인터페이스 상호작용(요청 및 응답)
- 애플리케이션 상호 작용
- 모델 상호 작용
- 데이터 상호 작용
- 조직의 상호 작용 및 사용
사용자 인터페이스 상호 작용: 요청 및 응답 모니터링 개발
생성형 AI 애플리케이션의 입력 및 출력에서 발생하는 위험을 해결하기 위한 전략을 평가하여 생성형 AI와 관련된 사이버 보안 사고를 적시에 탐지하고 대응하시기 바랍니다. 예를 들어, LLM 애플리케이션에서 사용되는 경우 도메인 또는 조직 외부로 민감한 정보가 유출되는 것을 감지하기 위해 행동 기반 분석이나 데이터 유출에 대한 추가 모니터링이 필요할 수 있습니다.
생성형 Al 애플리케이션은 데이터 보호와 관련하여 표준 보안 모범 사례를 준수해야 합니다. 안전한 데이터 경계를 설정하시고 민감정보 데이터 저장소를 안전하게 보호하시기 바랍니다. LLM 애플리케이션에 사용되는 데이터와 정보는 저장 시, 전송 시에 암호화해야 합니다. 데이터 저장소에 접근할 수 있는 사용자, 프로세스, 역할은 물론 애플리케이션에서 데이터가 흐르는 방식을 파악 및 제어하고, 편향 편차를 모니터링하고, Amazon S3와 같은 스토리지 서비스에서 버전 관리 및 변경 불가능한 스토리지를 사용하여 모델 학습에 사용되는 데이터를 학습 데이터 오염으로부터 보호하시기 바랍니다. 의심스러운 입력과 데이터 유출 가능성을 방지하기 위해 AWS Network Firewall 및 AWS VPC와 같은 서비스를 이용하여 엄격한 인바운드 아웃바운드 데이터 통제 방안을 수립하시기 바랍니다.
또한 훈련, 재훈련 또는 파일 튜닝 과정에서 활용되는 민감한 데이터에 대해 인지하고 있어야 합니다. 이러한 프로세스 중 하나에서 데이터가 사용된 후에는 모델의 사용자가 갑자기 프롬프트 인젝션 기술을 활용하여 데이터 또는 정보를 다시 추출할 수 있는 상황에 대해서도 계획을 수립해야 합니다. 또한 모델과 추론에 민감한 데이터를 사용했을 때의 위험과 이점에 대해서도 확실하게 이해해야 합니다. 데이터 유출 방지를 LLM 애플리케이션 로직에 의존하지 않고 세분화된 접근 권한을 설정하고 관리할 수 있는 강력한 인증 및 권한 부여 메커니즘을 구현해야 합니다. 생성형 Al 애플리케이션에 대한 사용자 제어 입력은 일부 조건에서 모델 또는 입력의 비사용자 제어 부분에서 정보를 추출하는 벡터를 제공할 수 있음이 입증되었습니다. 이는 사용자가 모델이 원래 학습된 데이터 세트에 대한 단서를 제공하는 등 모델의 출력이 LLM 애플리케이션의 예상 가드레일에서 벗어나게 하는 입력을 제공하는 프롬프트 인젝션을 통해 발생할 수 있습니다.
모델에 입력을 제공하고 모델로부터 출력을 받는 사용자에 대해 사용자 수준 접근 할당량을 구현하시기 바랍니다. 모델 학습 데이터 및 정보가 민감한 경우 또는 공격자가 입력과 정렬된 모델 출력을 기반으로 모델 복제를 위해 학습할 위험이 있는 경우에는 익명 접근를 허용하지 않는 접근 방식을 고려해야 합니다. 일반적으로 모델에 대한 입력의 일부가 사용자가 제공한 임의의 텍스트로 구성된 경우, 해당 출력은 프롬프트 인젝션에 취약한 것으로 간주하여 안전하지 않은 출력 처리, 과도한 대행 및 과잉 의존을 완화하기 위한 기술적 및 조직적 대응 조치를 구현하여 사용해야 합니다. 앞서 예시한
AWS WAF를 사용한 악성 입력 필터링과 관련하여, 애플리케이션 앞에 이러한 잠재적인 프롬프트 오용에 대한 필터를 구축하고, 모델과 데이터가 증가했을 때 이를 처리하고 발전시키는 방법에 대한 정책을 개발하는 것을 고려하시기 바랍니다. 또한 품질, 정확성 또는 콘텐츠 기준을 충족하는지 확인하기 위해 사용자에게 반환되기 전에 출력을 필터링하여 검토하는 것도 고려하시기 바랍니다. 또한, 조직의 필요에 따라 의심스러운 트래픽 패턴을 차단하기 위해 모델 앞단에 입력 및 출력에 대한 추가 제어 계층을 추가하여 위에 언급된 기술 항목들을 고도화 하실 수도 있습니다.
애플리케이션 상호 작용: 애플리케이션 보안 및 통합 가시성
사용자가 모델을 활용하여 자신이 접근 권한이나 사용 권한이 없는 다운스트림 도구 또는 도구 체인에 대한 표준 인증을 우회할 수 있는 방법이 있는지 여부에 대해 주의 깊게 LLM 애플리케이션을 검토하시기 바랍니다. 이 계층의 또 다른 우려 사항은 방어되지 않은 기술적 또는 조직적 LLM 리스크를 사용하여 모델을 공격 메커니즘으로 사용한 후 외부 데이터 저장소에 접근하는 것과 관련이 있습니다. 예를 들어, 모델이 민감한 데이터를 포함할 수 있는 특정 데이터 저장소에 접근하도록 학습된 경우, 모델과 데이터 저장소 간에 적절한 권한 검사를 수행해야 합니다. 권한 검사를 수행할 때는 모델에서 가져오지 않은 속성을 사용하되 사용자에 대한 변경 불가능한 속성을 사용하시기 바랍니다. 안전하지 않은 출력 처리, 안전하지 않은 플러그인 설계, 과도한 에이전시 등은 위협 행위자가 모델을 악의적으로 이용하여 권한 부여 시스템을 속인 후 유효 권한을 상승시켜 다운스트림 컴포넌트에게 사용자가 데이터를 검색하거나 특정 작업을 수행할 수 있는 권한이 있다고 믿게 만드는 조건을 만들 수도 있습니다.
생성형 AI 플러그인이나 도구를 구현할 때는 부여되는 접근 수준을 검토하고 이해하는 것은 물론, 구성된 접근 제어를 면밀히 검토해야 합니다. 안전성이 검증되지 않은 생성형 AI 플러그인을 사용하면 시스템이 공급망 취약점 및 위협에 노출되어 원격 코드 실행과 같은 악의적인 행동으로 이어질 수 있습니다.
모델 상호 작용: 모델 공격 방지
공급망 취약성을 평가하고 방어하기 위해서는 사용하는 모델, 플러그인, 도구 또는 데이터의 출처를 정확하게 알고 있어야 합니다. 예를 들어, 일부 일반적인 모델 형식은 모델 자체에 임의의 실행 가능한 코드를 삽입할 수 있도록 허용합니다. 조직의 보안 목표에 따라 패키지 미러, 스캔 및 추가 검사를 사용하시기 바랍니다.
모델을 훈련하고 파인 튜닝에 사용하는 데이터 세트도 검토해야 합니다. 사용자 피드백(또는 기타 최종사용자가 제어할 수 있는 정보)을 기반으로 모델을 자동으로 파인 튜닝하는 경우, 악의적인 위협 행위자가 사용자의 반응을 조작하여 모델을 임의로 변경하고 학습 데이터 포이즈닝을 달성할 수 있는지 고려해야 합니다.
데이터 상호 작용: 데이터 품질 및 사용량 모니터링
LLM과 같은 생성형 Al 모델은 대량의 데이터로 학습되었기 때문에 일반적으로 좋은 성능을 보여줍니다. 이러한 대량의 데이터는 LLM이 복잡한 작업을 완료하는데 도움이 되지만, 훈련 데이터 세트에 부적절한 데이터가 포함되거나 누락되어 모델의 동작을 변경할 수 있는 경우, 훈련 데이터 포이즈닝의 위험에 시스템이 노출될 수도 있습니다. 이러한 위험을 방어하려면 공급망을 살펴보고 모델을 내부에서 사용하기 전에 시스템의 데이터 검토 프로세스를 이해해야 합니다. 학습 파이프라인은 데이터 포이즈닝의 주요 원인이지만, RAG 모델이나 데이터 레이크처럼 모델이 데이터를 가져오는 방식과 해당 데이터의 출처가 신뢰할 수 있고 보호되는지도 살펴봐야 합니다. AWS Security Hub, Amazon GuardDuty, Amazon Inspector와 같은 AWS 보안 서비스를 사용하여 새로운 보안 위협의 지표가 될 수 있는 Amazon EC2, Amazon EKS, Amazon S3, Amazon Relational Database Service(Amazon RDS) 및 네트워크 접근에서 의심스러운 활동을 지속적으로 모니터링하고, Amazon Detective를 사용하여 보안 조사를 시각화하시기 바랍니다. 또한 Amazon Security Lake와 같은 서비스를 사용하여 AI/ML 워크로드에 관련된 AWS 환경, Saas 제공업체, 온프레미스 및 클라우드 소스의 보안 데이터를 자동으로 중앙 집중화하기 위한 전용 데이터 레이크를 생성하여 보안 조사 속도를 가속화하는 것도 고려하시기 바랍니다.
조직 상호 작용: AI를 위한 엔터프라이즈 거버넌스 가드레일 구현하기
비즈니스에서 생성형 AI 사용과 관련된 위험을 파악하시기 바랍니다. 조직의 위험 분류 체계를 구축하고 위험 평가를 수행하여 생성형 AI 솔루션을 배포할 때 이와 같은 위험 정보에 입각한 결정을 내려야 합니다. LLM 애플리케이션이 기능적으로 영향을 받거나 전혀 동작하지 않는 상황에 대해 신속하게 대체하여 SLA를 충족할 수 있도록 AI,ML 및 생성형 Al 워크로드를 포함한 비즈니스 연속성 계획(BCP)을 개발하시기 바랍니다.
조직에서 프로세스 및 리소스 갭, 비효율성, 일관적이지 않은 문제점 등을 식별하고 비즈니스 전반에 걸쳐 구성원들의 보안에 대한 인식과 주인의식을 개선하시기 바랍니다. 모든 생성형 Al 워크로드를 위협 모델링하여 데이터에 대한 무단 접근, 서비스 거부 공격, 리소스 오남용 등 비즈니스에 영향을 미칠 수 있는 잠재적 보안 위협을 식별하고 방어하시기 바랍니다. 새로운 AWS 위협 컴포저 모델링 도구를 활용하시면 위협 모델링을 수행할 때 필요한 시간을 단축할 수 있습니다. 개발 주기 후반에는 여러분의 시스템이 알려지지 않은 상황에 어떻게 반응하는지 이해하고 시스템의 복원력과 보안에 대한 역량을 키우기 위해 실제 상황과 같은 조건을 만들 수 있는 보안 카오스 엔지니어링 결함 주입 실험을 도입하는 것을 고려하시기 바랍니다.
보안 전략과 위험 관리 메커니즘을 개발할 때 다양한 관점을 반영하여 모든 직무와 기능에 걸쳐 AI/ML 및 생산적인 보안을 준수하고 적용할 수 있도록 합니다. 그리고 조직의 요구 사항에 맞출 수 있도록 모든 생성형 AI 애플리케이션의 시작과 연구 단계부터 보안 마인드를 도입하시기 바랍니다. 만일, AWS의 추가 지원이 필요하다면 AWS 어카운트 매니저에게 요청하여 AWS의 보안 및 AI/ML 담당 AWS 솔루션 아키텍트에게 지원을 받을 수 있도록 하시기 바랍니다.
보안 조직이 제품 관리자, 소프트웨어 개발자, 데이터 과학자, 경영진과 같은 생성형 Al 이해관계자 간의 위험 인식과 위험 관리 이해에 대한 커뮤니케이션을 촉진하기 위한 조치를 일상적으로 수행하여 위협 인텔리전스 및 보안 통제항목에 대한 가이드의 영향을 받을 수 있는 팀에 필요한 내용들이 잘 전달되도록 하시기 바랍니다. 보안 조직은 토론에 참여하고 비즈니스 목표와 관련된 새로운 아이디어와 정보를 생성형 AI 의 이해관계자에게 제공함으로써 책임감 있는 정보 공개와 반복적인 개선이 가능한 문화를 지원할 수 있습니다. 보다 자세한 사항은 책임감 있는 AI에 대한 AWS의 노력과 고객을 지원하기 위한 추가적인 책임감 있는 AI 리소스를 방문하여 확인 해 보시기 바랍니다.
조직의 기존 보안 프로세스에서 가치 실현 시간을 방해하는 요소를 제거하여 생성형 AI를 위한 더 나은 조직적 태세를 구축하시기 바랍니다. 조직에서 생성형 AI 보안 상황을 고려할 때 지나치게 부담스러운 프로세스가 필요한 부분을 사전에 평가하고 이를 개선하여 개발자와 과학자들이 서비스를 런치하기 위한 방안을 정확한 통제 방안에 기반하여 제공하시기 바랍니다.
조직에서 인센티브와 위험을 조정하고 원하는 결과에 대한 명확한 가시성을 제공할 수 있는 기회가 어디에 있는지 평가해야 합니다. Al/ML 및 생성형 AI 애플리케이션 개발의 진화하는 요구 사항을 충족하도록 통제 방안 가이드 및 방어 기능을 업데이트하여 개발 시간, 위험 증가, 영향력 확대를 초래할 수 있는 혼란과 불확실성을 줄이시기 바랍니다.
보안 전문가가 아닌 이해관계자가 조직의 거버넌스, 정책, 위험 관리 단계가 자신의 워크로드에 어떻게 적용되는지 이해하고 이에 대해 위험 관리 메커니즘을 적용할 수 있도록 하시기 바랍니다. 조직이 생성형 Al애플리케이션에서 발생할 수 있는 현실적인 이벤트와 시나리오에 대응할 수 있도록 준비하고, 생성형AI 빌더 역할과 대응 팀이 의심스러운 활동을 식별한 경우 이에 대한 에스컬레이션 방법과 조치 방안을 잘 숙지하도록 하시기 바랍니다.
결론
새로운 신기술로 혁신을 성공적으로 상용화하려면 보안 우선 사고방식으로 시작하여 안전한 인프라 기반을 구축하고, 심층 방어 보안 접근 방식을 통해 기술 스택의 각 수준에서 보안을 더욱 통합하는 방법을 조기에 고려해야 합니다. 여기에는 조직의 복원력을 보장하기 위해 기술 스택의 여러 계층과 디지털 공급망 내 통합 지점에서의 상호 작용이 포함됩니다. 생성형 AI는 몇 가지 새로운 보안 및 개인정보 보호 문제를 야기할 수도 있지만, 심층 방어와 계층화 된 보안 서비스를 사용하는 것과 같은 기본적인 보안 모범 사례를 따르면 여러 가지 일반적인 문제와 진화하는 위협으로부터 조직을 보호하는 데 도움이 될 수 있습니다. 여러분은 생성형 Al 워크로드와 대규모 조직 전반에 걸쳐 계층화 된 AWS 보안 서비스를 구현하고, 디지털 공급망의 통합 지점에 집중하여 클라우드 환경을 보호해야 합니다. 그런 다음 Amazon SageMaker 및 Amazon Bedrock과 같은 AWS AI/ML 서비스의 향상된 보안 및 개인정보 보호 기능을 사용하여 생성형 Al 애플리케이션에 향상된 보안 및 개인정보 보호 제어 계층을 더 추가하실 수 있습니다. 처음부터 보안을 고려하면 규정 준수 과정을 간소화하는 동시에 생성형 AI로 더 빠르고, 쉽고, 비용 효율적으로 혁신할 수 있습니다. 이는 결과적으로 직원, 고객, 파트너, 규제 기관 및 기타 관련 이해관계자들이 갖는 여러분들의 생성형 Al 애플리케이션에 대한 통제력, 신뢰도 및 관찰 가능성을 높일 수 있습니다.