Amazon Web Services 한국 블로그

AWS Security Agent 출시: 설계부터 배포까지 앱 보안 (미리보기)

오늘 AWS Security Agent 를 미리보기로 출시합니다. AWS Security Agent는 개발 수명 주기 전반에 걸쳐 애플리케이션을 사전에 보호하는 프론티어 에이전트입니다. 조직의 요구 사항에 맞게 조정된 자동화된 애플리케이션 보안 검토를 수행하고 필요에 따라 컨텍스트 인식 침투 테스트를 제공합니다. 설계부터 배포까지 애플리케이션 보안을 지속적으로 검증함으로써 개발 초기 단계에서 취약점을 예방하는 데 도움이 됩니다.

정적 애플리케이션 보안 테스트(SAST) 도구는 런타임 컨텍스트 없이 코드를 검사하는 반면, 동적 애플리케이션 보안 테스트(DAST) 도구는 애플리케이션 수준의 컨텍스트 없이 실행 중인 애플리케이션을 평가합니다. 두 가지 유형의 도구는 모두 애플리케이션 컨텍스트를 이해하지 못하기 때문에 1차원적입니다. 애플리케이션의 설계 방식, 직면한 보안 위협, 실행 위치 및 방식을 이해하지 못합니다. 이로 인해 보안 팀은 모든 것을 수동으로 검토해야 하므로 지연이 발생합니다. 침투 테스트는 더욱 느립니다. 외부 공급업체나 내부 보안 팀이 시간을 확보하기까지 몇 주를 기다려야 합니다. 모든 애플리케이션에 수동 보안 검토 및 침투 테스트가 필요한 경우에는 백로그가 빠르게 증가합니다. 애플리케이션은 출시되기 전에 보안 검증을 위해 몇 주 또는 몇 달을 기다려야 합니다. 이로 인해 소프트웨어 출시 빈도와 보안 평가 빈도 사이에 격차가 발생합니다. 보안이 전체 애플리케이션 포트폴리오에 적용되지 않아 고객이 노출되고, 마감일을 맞추기 위해 의도적으로 취약한 코드를 배포하게 됩니다. 조직의 60% 이상이 웹 애플리케이션을 매주 또는 그보다 자주 업데이트하는 반면, 거의 75%는 매달 또는 그보다 덜 자주 웹 애플리케이션을 테스트합니다. Checkmarx의 2025년 보고서에 따르면 조직의 81%가 납품 마감일을 맞추기 위해 의도적으로 취약한 코드를 배포하는 것으로 나타났습니다.

AWS Security Agent는 컨텍스트 인식 기능을 갖추고 있어 전체 애플리케이션을 이해합니다. 애플리케이션 설계, 코드 및 특정 보안 요구 사항을 이해합니다. 보안 위반 사항을 지속적으로, 자동으로 검사하고, 예약 없이 필요에 따라 즉시 침투 테스트를 실행합니다. 침투 테스트 에이전트는 보안 요구 사항, 설계 문서, 소스 코드에서 학습한 컨텍스트를 기반으로 맞춤형 공격 계획을 수립하고, 엔드포인트, 상태 및 오류 코드, 자격 증명 등 발견된 내용을 기반으로 실행 중에 동적으로 조정합니다. 이를 통해 프로덕션 환경 전에 더 심층적이고 정교한 취약성을 발견하여 지연이나 예상치 못한 문제 없이 애플리케이션 출시 전에 보안을 유지할 수 있습니다.

“SmugMug는 자동화된 보안 포트폴리오에 AWS Security Agent를 추가하게 되어 매우 기쁩니다. AWS Security Agent는 며칠이 아닌 단 몇 시간 만에 완료되는 침투 테스트 평가를 가능하게 하여 보안 ROI를 획기적으로 개선하고 수동 테스트 비용의 극히 일부만 사용합니다. 이제 서비스를 더 자주 평가하여 소프트웨어 개발 수명 주기 초기에 문제를 식별하고 해결하는 데 걸리는 시간을 크게 줄일 수 있습니다.”라고 SmugMug의 제품 엔지니어링 담당 수석 이사인 Erik Giberti는 말합니다.

AWS Security Agent 시작하기
AWS Security Agent는 설계 보안 검토, 코드 보안 검토 및 온디맨드 침투 테스트 기능을 제공합니다. 설계 및 코드 검토는 사용자가 정의한 조직의 보안 요구 사항을 확인하고, 침투 테스트는 소스 코드 및 사양에서 애플리케이션 컨텍스트를 학습하여 취약성을 식별합니다. 시작하려면 AWS Security Agent 콘솔로 이동하세요. 콘솔 시작 페이지에는 AWS Security Agent가 개발 수명 주기 전반에 걸쳐 지속적인 보안 평가를 제공하는 방법에 대한 개요가 있습니다.

시작 페이지 오른쪽에 있는 AWS Security Agent 시작하기 패널은 초기 구성 과정을 안내합니다. AWS Security Agent 설정을 선택하여 첫 번째 에이전트 공간을 생성하고 애플리케이션에 대한 보안 검토를 시작하세요.

다양한 보안 평가에서 상호 작용하는 에이전트를 식별하기 위해 에이전트 공간 이름을 제공하세요. 에이전트 공간은 보안을 적용하려는 개별 애플리케이션 또는 프로젝트를 나타내는 조직화된 컨테이너입니다. 각 에이전트 공간에는 고유한 테스트 범위, 보안 구성 및 전용 웹 애플리케이션 도메인이 있습니다. 명확한 경계와 체계적인 보안 평가를 유지하기 위해 애플리케이션 또는 프로젝트당 하나의 에이전트 공간을 생성하는 것이 좋습니다. 선택적으로 설명을 추가하여 다른 관리자에게 에이전트 공간의 용도에 대한 컨텍스트를 제공할 수 있습니다.

AWS Management Console에서 첫 번째 에이전트 공간을 생성하면 AWS에서 보안 에이전트 웹 애플리케이션을 생성합니다. Security Agent 웹 애플리케이션은 사용자가 콘솔에서 관리자가 설정한 경계 내에서 설계 검토를 수행하고 침투 테스트를 실행하는 곳입니다. 사용자는 설계 검토를 수행하거나 침투 테스트를 실행할 때 작업할 에이전트 공간을 선택합니다.

설정 과정에서 AWS Security Agent는 Security Agent 웹 애플리케이션에 대한 사용자 액세스를 관리하는 두 가지 옵션을 제공합니다. 첫 번째로 IAM Identity Center를 통한 Single Sign-On(SSO)AWS IAM Identity Center와 통합하여 팀 전체의 SSO 액세스를 지원합니다. 두 번째로 IAM 사용자는 이 AWS 계정의 AWS Identity and Access Management(IAM) 사용자만 콘솔을 통해 Security Agent 웹 애플리케이션에 직접 액세스할 수 있도록 허용하며, SSO 구성 없이 빠르게 설정하거나 액세스하는 데 가장 적합합니다. SSO 옵션을 선택하면 AWS Security Agent는 IAM Identity Center 인스턴스를 생성하여 Security Agent 웹 애플리케이션을 통해 설계 검토, 코드 검토 및 침투 테스트 기능에 액세스하는 AppSec 팀원에게 중앙 집중식 인증 및 사용자 관리를 제공합니다.

권한 구성 섹션에서는 AWS Security Agent가 다른 AWS 서비스, API 및 계정에 액세스하는 방법을 제어할 수 있습니다. AWS Security Agent가 리소스에 액세스하는 데 사용할 기본 IAM 역할을 생성하거나 적절한 권한이 있는 기존 역할을 선택할 수 있습니다.

초기 구성을 완료한 후 AWS Security Agent 설정을 선택하여 에이전트를 생성합니다.

에이전트 공간을 생성하면 에이전트 구성 페이지에 설계 검토, 코드 검토, 침투 테스트라는 세 가지 기능 카드가 표시됩니다. 침투 테스트를 실행하는 데 필수는 아니지만, 설계 검토 또는 코드 검토 기능을 사용하려는 경우 해당 평가의 기준이 될 보안 요구 사항을 구성할 수 있습니다. AWS Security Agent에는 AWS 관리형 요구 사항이 포함되어 있으며 필요에 따라 조직에 맞는 사용자 지정 요구 사항을 정의할 수 있습니다. 또한 에이전트에 액세스할 수 있는 팀원을 관리할 수도 있습니다.

보안 요구 사항
AWS Security Agent는 애플리케이션이 팀의 정책 및 표준을 준수하도록 사용자가 정의한 조직 보안 요구 사항을 적용합니다. 보안 요구 사항은 애플리케이션이 설계 및 코드 검토 단계에서 따라야 하는 제어 및 정책을 지정합니다.

보안 요구 사항을 관리하려면 탐색 창에서 보안 요구 사항으로 이동하세요. 이러한 요구 사항은 모든 에이전트 공간에서 공유되며 설계 및 코드 검토 모두에 적용됩니다.

관리형 보안 요구 사항은 업계 표준 및 모범 사례를 기반으로 합니다. 이러한 요구 사항은 AWS에서 유지 관리되므로 바로 사용할 수 있으며, 구성 없이 즉시 활성화할 수 있습니다.

사용자 지정 보안 요구 사항을 생성할 때 정책을 정의하는 제어 이름과 설명을 지정합니다. 예를 들어, 네트워크 세분화 전략 정의라는 요구 사항을 생성할 수 있습니다. 이 요구 사항은 데이터 민감도에 따라 워크로드 구성 요소를 논리적 계층으로 분리하는 명확한 네트워크 세분화를 설계에 요구합니다. 또는 권한 및 PII 액세스에 대한 짧은 세션 제한 시간을 정의하여 관리 및 개인 식별 정보(PII) 액세스에 대한 특정 시간 초과 기간을 지정할 수 있습니다. 또 다른 예로, 고객 관리형 암호화 키 필요가 있습니다. 이 요구 사항은 민감한 저장 데이터 암호화를 위해 AWS 관리 키가 아닌 고객 관리 AWS Key Management Service(AWS KMS) 키를 설계에 지정하도록 요구합니다.록 설계해야 합니다. AWS Security Agent는 이러한 활성화된 요구 사항을 기준으로 설계 및 코드를 평가하여 정책 위반을 식별합니다.

설계 보안 검토
설계 검토 기능은 코드 작성 전에 아키텍처 문서와 제품 사양을 분석하여 보안 위험을 파악합니다. AppSec 팀은 AWS Security Agent 콘솔을 통해 설계 문서를 업로드하거나 S3 및 기타 연결된 서비스에서 이를 수집합니다. AWS Security Agent는 조직의 보안 요구 사항 준수를 평가하고 수정 지침을 제공합니다.

설계 검토를 수행하기 전에 AWS Security Agent에서 확인할 보안 요구 사항을 구성했는지 확인하세요. 보안 요구 사항 섹션에 설명된 대로 AWS 관리형 보안 요구 사항으로 시작하거나 조직에 맞는 사용자 지정 요구 사항을 정의할 수 있습니다.

설계 검토를 시작하려면 웹 앱 액세스에서 관리자 액세스를 선택하여 웹 앱 인터페이스에 액세스합니다. 로그인한 후 설계 검토 생성을 선택합니다. 평가를 식별하기 위해 설계 검토 이름을 입력하고(예: 애플리케이션을 확장하는 새로운 기능 설계를 평가하는 경우) 최대 5개의 설계 파일을 업로드합니다. 활성화된 보안 요구 사항에 대한 평가를 시작하려면 설계 검토 시작을 선택합니다.

설계 검토를 완료하면 설계 검토 세부 정보 페이지에 검토 상태, 완료 날짜, 검토된 파일이 세부 정보 섹션에 표시됩니다. 조사 결과 요약에는 네 가지 규정 준수 상태 범주에 걸친 조사 결과 수가 표시됩니다.

  • 규정 미준수 – 설계가 보안 요구 사항을 위반하거나 제대로 충족하지 못합니다.
  • 데이터 부족 – 업로드된 파일에 규정 준수 여부를 판단하기에 충분한 정보가 포함되어 있지 않습니다.
  • 규정 준수 – 업로드된 문서를 기반으로 설계가 보안 요구 사항을 충족합니다.
  • 해당 없음 – 보안 요구 사항의 관련성 기준에 따라 이 시스템 설계에는 적용되지 않습니다.

조사 결과 요약 섹션은 주의가 필요한 보안 요구 사항을 신속하게 평가하는 데 도움이 됩니다. 규정을 준수하지 않는 조사 결과의 경우 설계 문서를 업데이트해야 하지만, 불충분한 데이터 조사 결과는 AWS Security Agent가 평가를 완료하기 전에 보안 팀이 애플리케이션 팀과 협력하여 명확성을 더 확보해야 하는 문서의 차이를 나타냅니다.

파일 검토됨 섹션에는 업로드된 모든 문서가 표시되며 원본 파일을 검색하고 다운로드할 수 있는 옵션이 있습니다.

조사 결과 검토 섹션에는 검토 중에 평가된 각 보안 요구 사항과 해당 준수 상태가 나열됩니다. 이 예에서는 네트워크 세분화 전략 정의, 고객 관리 암호화 키 필요, 권한 및 PII 액세스에 대한 짧은 세션 제한 시간 등의 조사 결과를 확인할 수 있습니다. 이는 앞서 보안 요구 사항 섹션에서 정의한 사용자 지정 보안 요구 사항입니다. 특정 보안 요구 사항을 검색하거나 규정 준수 상태별로 결과를 필터링하여 조치가 필요한 항목에 집중할 수 있습니다.

특정 조사 결과를 선택하면 AWS Security Agent에서 규정 준수 상태를 설명하는 자세한 근거를 표시하고 권장되는 수정 단계를 제공합니다.
이러한 컨텍스트 인식 분석을 통해 일반적인 보안 지침이 아닌 설계와 관련된 보안 문제를 파악할 수 있습니다. 규정을 준수하지 않는 조사 결과가 나온 설계의 경우, 보안 요구 사항을 충족하도록 문서를 업데이트하고 새로운 설계 검토를 생성하여 개선 사항을 검증할 수 있습니다. 이 설계 검토 복제를 선택하여 현재 구성을 기반으로 새 평가를 생성하거나 보고서 다운로드를 선택하여 전체 조사 결과를 내보내 팀과 공유할 수도 있습니다.

애플리케이션 설계가 조직의 보안 요구 사항을 충족하는지 검증한 후, 다음 단계는 개발자가 코드를 작성할 때 동일한 요구 사항을 적용하는 것입니다.

코드 보안 검토
코드 검토 기능은 GitHub의 Pull 요청을 분석하여 보안 취약성과 조직 정책 위반을 식별합니다. AWS Security Agent는 SQL 삽입, 사이트 간 스크립팅, 부적절한 입력 검증과 같은 OWASP의 상위 10대 일반 취약성을 탐지합니다. 또한 설계 검토에 사용되는 것과 동일한 조직 보안 요구 사항을 적용하여 일반적인 취약성 외에도 팀의 정책을 준수하는 코드를 구현합니다.

애플리케이션이 새 코드를 체크인하면 AWS Security Agent는 일반적인 취약점을 넘어 조직의 보안 요구 사항 준수 여부를 확인합니다. 예를 들어, 조직에서 감사 로그를 90일 동안만 보관하도록 요구하는 경우, AWS Security Agent는 코드에서 365일 보관 기간을 설정하고 특정 위반 사항에 대한 Pull 요청 주석을 추가하는 시점을 파악합니다. 이렇게 하면 코드가 기술적으로 작동하고 안전하므로 기존 보안 도구에서는 발견하지 못하는 정책 위반 사항을 포착할 수 있습니다.

코드 검토를 활성화하려면 에이전트 구성 페이지에서 코드 검토 활성화를 선택하고 GitHub 리포지토리를 연결합니다. 특정 리포지토리에 대해 코드 검토를 활성화하거나, 침투 테스트 컨텍스트에 사용하려는 경우 코드 검토를 활성화하지 않고 리포지토리를 연결할 수 있습니다.

자세한 설정 지침은 AWS Security Agent 설명서를 참조하세요.

온디맨드 침투 테스트
온디맨드 침투 테스트 기능은 포괄적인 보안 테스트를 실행하여 다단계 공격 시나리오를 통해 취약성을 발견하고 검증합니다. AWS Security Agent는 정찰 및 엔드포인트 열거를 통해 애플리케이션의 공격 영역을 체계적으로 발견한 후, 인증, 권한 부여, 주입 공격을 포함한 13가지 위험 범주에 대한 보안 테스트를 실행하기 위해 전문 에이전트를 배포합니다. 소스 코드, API 사양, 비즈니스 문서가 제공되면 AWS Security Agent는 애플리케이션 아키텍처 및 비즈니스 규칙에 대한 심층적인 컨텍스트를 구축하여 더욱 구체적인 테스트 사례를 생성합니다. 애플리케이션 응답에 따라 테스트를 조정하고 평가 과정에서 새로운 정보를 발견하면 공격 전략을 조정합니다.

AWS Security Agent는 OWASP 상위 10대 취약성 유형에 따라 웹 애플리케이션과 API를 테스트하여 정적 분석 도구가 놓치는 악용 가능한 문제를 식별합니다. 예를 들어, 동적 애플리케이션 보안 테스트(DAST) 도구가 직접 서버 측 템플릿 주입(SSTI) 페이로드를 찾는 반면, AWS Security Agent는 SSTI 공격과 오류 강제 적용 및 디버그 출력 분석을 결합하여 더욱 복잡한 악용 사례를 실행할 수 있습니다. AppSec 팀은 인간 침투 테스터에게 브리핑하는 것과 동일한 방식으로 테스트 범위(대상 URL, 인증 세부 정보, 위협 모델 및 문서)를 정의합니다. AWS Security Agent는 이러한 이해를 바탕으로 애플리케이션 컨텍스트를 개발하고 정교한 공격 체인을 자율적으로 실행하여 취약성을 발견하고 검증합니다. 이를 통해 침투 테스트는 주기적인 병목 현상에서 지속적인 보안 활동으로 전환되어 위험 노출을 줄일 수 있습니다.

침투 테스트를 활성화하려면 에이전트 구성 페이지에서 침투 테스트 활성화를 선택합니다. 대상 도메인, 프라이빗 엔드포인트의 VPC 설정, 인증 자격 증명, 추가 컨텍스트 소스(예: GitHub 리포지토리 또는 S3 버킷)를 구성할 수 있습니다. AWS Security Agent가 침투 테스트를 실행하려면 먼저 각 도메인의 소유권을 확인해야 합니다.

기능을 활성화한 후 AWS Security Agent 웹 애플리케이션을 통해 침투 테스트를 생성하고 실행합니다. 자세한 설정 및 구성 지침은 AWS Security Agent 설명서를 참조하세요.

침투 테스트를 생성하고 실행한 후, 세부 정보 페이지에서 테스트 실행 및 결과 개요를 확인할 수 있습니다. 이 페이지에서 새 테스트를 실행하거나 구성을 수정할 수 있습니다. 이 페이지에는 시작 시간, 상태, 기간 및 심각도별로 분류된 발견된 취약성 요약을 포함하여 가장 최근 실행에 대한 정보가 표시됩니다. 또한 이전에 실행한 모든 테스트의 기록과 조사 결과 요약을 볼 수도 있습니다.

각 실행에 대해 세부 정보 페이지에는 세 개의 탭이 있습니다. 침투 테스트 실행 개요 탭에는 실행 기간 및 전체 상태를 포함하여 실행에 대한 간략한 정보가 표시됩니다. 침투 테스트 로그 탭에는 침투 테스트 중에 실행된 모든 작업이 나열되어 있어 AWS Security Agent가 취약성을 발견한 방식(수행된 보안 테스트 작업, 애플리케이션 응답, 각 테스트의 근거 등)을 파악할 수 있습니다. 조사 결과 탭에는 발견된 모든 취약성에 대한 설명, 공격 이유, 재현 단계, 영향 및 해결 지침을 비롯한 전체 세부 정보가 표시됩니다.

미리보기 참여하기
AWS Security Agent를 시작하려면 AWS Security Agent 콘솔로 이동해 첫 번째 에이전트를 생성하여 개발 수명 주기 전반에 걸쳐 설계 검토, 코드 검토 및 침투 테스트를 자동화하세요. 평가판 기간 동안에는 AWS Security Agent는 무료로 제공됩니다.

AWS Security Agent는 미국 동부(버지니아 북부) 리전에서 사용할 수 있습니다.

자세히 알아보려면 AWS Security Agent 제품 페이지기술 설명서를 참조하세요.

– Esra