티스토리 뷰

반응형

인증은 사용자나 서비스의 신원을 확인하는 과정입니다. RAG 기반 LLM 애플리케이션에서는 최종 사용자, 내부 마이크로서비스, 외부 API 호출 등 다양한 주체에 대한 강력한 인증이 필수입니다. 제로 트러스트 원칙에 따라 모든 주체를 사전에 신뢰하지 않고, 모든 접근 요청마다 엄격한 신원 확인이 이루어져야 합니다 .

 

위협 (STRIDE)

  • 스푸핑(Spoofing): 공격자가 합법적 사용자나 서비스를 가장하여 LLM 애플리케이션에 접근할 수 있습니다. 예를 들어, 피싱이나 크리덴셜 탈취를 통해 토큰이나 세션을 가로챔으로써 공격자가 사용자로 위장할 수 있습니다.
  • 변조(Tampering): 인증 토큰이나 세션 ID가 탈취·위조되어 무단으로 사용될 수 있습니다. 전송 중 토큰이 노출되거나 위변조되면 인증 체계를 우회당할 위험이 있습니다.
  • 부인(Repudiation): 인증 로그가 부실하면 사용자는 자신의 행동을 부인할 수 있습니다. 누가 언제 인증했는지 기록되지 않으면 사후 추적과 책임소재 규명이 어려워집니다.
  • 정보 노출(Information Disclosure): 인증 과정에서 암호나 키와 같은 민감정보가 평문으로 저장 또는 전송되면 공격자에게 노출될 수 있습니다. 예를 들어 소스 코드나 설정에 하드코딩된 비밀번호, AWS 키 등이 유출 위험입니다 .
  • 서비스 거부(Denial of Service): 인증 엔드포인트에 대한 무차별 대입 공격이나 과도한 인증 시도로 서비스가 붕괴되거나 계정이 잠길 수 있습니다.
  • 권한 상승(Elevation of Privilege): 취약한 인증을 통해 낮은 권한의 사용자가 관리자 계정으로 가장하거나, 다중 요소 인증을 우회하여 상위 권한을 획득할 수 있습니다.

 

보안 요구사항 및 대응

  • 강력한 신원 확인: 모든 사용자와 서비스는 신뢰할 수 있는 IdP(Idenity Provider)를 통해 인증되어야 합니다. OAuth 2.0/OpenID Connect와 같은 표준 프로토콜을 활용하고, SSO를 위해 AWS IAM Identity Center(이전 AWS SSO) 등의 서비스와 연동하여 중앙집중식 인증을 구현합니다. 임시 세션 토큰 등을 사용하여 장기 자격증명 노출을 최소화합니다.
  • 다중 요소 인증(MFA): 중요 리소스에 대한 접근은 MFA를 필수로 적용합니다. NIST SP 800-207에서도 엔터프라이즈 자원 접근 시 MFA 사용을 권고하고 있으며, AWS IAM 사용자나 역할에도 MFA를 적용하여 크리덴셜 탈취 위험을 낮춰야 합니다 .
  • 자격증명 관리: 하드코딩된 비밀번호나 액세스 키를 코드나 설정 파일에 두지 않습니다. 대신 AWS Secrets Manager, Parameter Store 등의 안전한 저장소를 사용하고, 애플리케이션은 실행 시 필요에 따라 불러쓰도록 합니다. AWS 리소스 간 통신에는 IAM 역할 연동을 활용하여, 애플리케이션 코드에 비밀키를 가지고 있지 않게 설계합니다.
  • 짧은 세션 수명 및 회수: 발급되는 액세스 토큰/쿠키의 수명은 최소화하고, 재사용 공격을 방지하기 위해 한 세션에 한해 사용하거나 주기적으로 재인증합니다. Zero Trust 원칙상 인증과 인가를 동적으로 지속 검증해야 하며, 필요시 재인증을 트리거하는 정책을 운영합니다. 또한 사용자 로그아웃이나 비정상 활동 탐지 시 토큰을 즉시 무효화하고 회수합니다.
  • 안전한 전송: 인증 자격 증명은 항상 암호화된 채널(예: HTTPS/TLS)로 주고받아야 합니다. 모든 연결을 인증하고 모든 트래픽을 암호화하는 것은 제로 트러스트의 기본 전제이며, 토큰 탈취를 막기 위해 전송 중 기밀성이 유지되어야 합니다 .
  • 계정 잠금 및 Throttling: 무차별 크리덴셜 시도가 탐지되면 계정 잠금이나 지연 응답 등으로 대응해 서비스 거부 공격을 완화합니다. AWS WAF의 레이트 리미팅 또는 API Gateway 사용 시 IP/사용자별 Rate Limit을 설정하여 과도한 인증 시도를 차단하고 , 의심스러운 활동은 추가 검증(MFA 재확인 등)을 요구합니다.

 

OWASP LLM Top 10 대응

LLM07 (취약한 플러그인 설계)

  • LLM 애플리케이션에 연동되는 MCP, 플러그인, 또는 서드파티 모듈이 적절한 인증을 거치지 않고 과도한 권한으로 동작하면, 공격자가 플러그인을 악용해 원격 코드 실행(RCE) 등의 공격을 실시할 수 있습니다 . 
  • 대응: 플러그인 또는 API 통합 지점마다 인증 토큰 검증과 최소 권한(least privilege) 원칙을 적용합니다 . 예를 들어 플러그인별로 별도 인증 키를 두고, 해당 플러그인이 접근 가능한 리소스 범위를 IAM 정책 등으로 제한합니다.

LLM10 (모델 탈취)

  • 인증이 미흡하면 공격자가 LLM 모델이나 프롬프트 입력 인터페이스에 무단 접근하여, 사유 모델이나 데이터 자산을 탈취할 위험이 있습니다 . 
  • 대응: 모델 엔드포인트나 프롬프트 입력 API는 사전에 인증된 주체만 호출할 수 있도록 보호해야 합니다. 예를 들어 내부적으로 Amazon Bedrock 등의 모델 API를 호출할 때도 VPC 엔드포인트와 IAM 권한으로 제한하고, 결과적으로 인가된 요청만 모델을 사용할 수 있도록 구성합니다. NIST AI RMF에서도 무단 접근과 사용을 방지하여 AI 시스템의 기밀성과 무결성을 유지할 것을 강조하고 있습니다 .

 

NIST SP 800-207 지침

제로 트러스트 아키텍처에 따르면 “모든 리소스에 대한 인증과 인가는 액세스 전에 동적으로 엄격히 적용되어야 한다”고 명시합니다. 이를 위해 조직은 ICAM(Identity, Credential and Access Management) 체계를 갖추고 MFA 도입을 권장하며, 사용자와 기기의 신원을 계속 평가하여 세션 중에도 필요시 재인증을 수행합니다 . 또한 주기적 위협 모니터링과 정책에 따른 접근 제어로 세션 중에도 끊임없이 신뢰를 재평가할 것을 요구합니다. 이처럼 인증 단계부터 암묵적 신뢰를 두지 않고 항상 검증하는 것이 제로 트러스트의 핵심입니다.

 

NIST AI RMF 지침

NIST의 AI 위험관리 프레임워크에서도 안전하고 신뢰성 있는 AI 구현을 위해 접근 통제와 보안을 강조합니다. 특히 “AI 시스템의 기밀성, 무결성, 가용성을 유지하며 무단 접근과 사용을 방지”해야 안전한 AI라고 정의하고 있으며 , 인증 체계 약화를 노린 사회공학 공격이나 크리덴셜 탈취 시나리오에 대비한 통제가 필요함을 시사합니다. 이는 LLM 애플리케이션에서도 기본 인증이 뚫릴 경우 모델 악용이나 데이터 유출로 이어질 수 있으므로, AI RMF의 Secure and Resilient 특성 관점에서 강력한 인증은 필수 요소입니다

 

체크 항목 보안 요구사항 및 모범 사례
인증 방식 표준 프로토콜(OAuth 2.0/OIDC) 및 신뢰할 수 있는 IdP를 사용하고 있는가? 자체 구현보다는 검증된 프레임워크 사용 여부 확인.
자격증명 저장 및 관리 비밀번호, 액세스 키 등이 소스코드나 설정에 하드코딩되어 있지 않은가? Secrets Manager 등 안전한 저장소 활용 여부.
다중 요소 인증(MFA) 관리자나 고권한 사용자 계정, 민감 자원 접근에 MFA가 적용되어 있는가 ? MFA 백업코드/장치에 대한 관리도 검토.
세션 관리 토큰의 수명(Time-to-Live)이 최소화되어 있는가? 로그아웃/세션만료 처리와 재인증 정책이 존재하는가?
전송 구간 보호 로그인 폼, 토큰 교환 등 모든 인증 트래픽이 TLS 등으로 암호화되고 있는가 ? HSTS 등 적용 여부.
인증 시도 제한 무작위 대입 공격 대비 계정 잠금 또는 Rate Limiting이 구현되어 있는가 ? 비정상 다수 로그인 시도에 대한 경보 처리 여부.
로그인 감사 로그 모든 인증/인가 시도(성공, 실패)에 대해 감사 로그가 수집되고 있는가? 해당 로그에 사용자ID, 시간, 소스 IP 등이 포함되어 부인 방지에 활용되는지

 

반응형
댓글
반응형
최근에 올라온 글
Total
Today
Yesterday