DAST(Dynamic Application Security Testing)는 응용 프로그램이 완전히 작동할 때만 발생하는 다양한 런타임 취약성에 대해 응용 프로그램을 테스트하는 것과 관련된 테스트 접근 방식입니다. 이러한 문제는 런타임, 코드, 종속성 등과 관련될 수 있습니다.
블랙박스 테스트의 한 유형(애플리케이션 내부에서 무엇이 실행되고 있는지 악용하려고 할 때 알지 못함을 의미)인 DAST는 아웃사이드-인 접근 방식을 취하고 SQL 삽입, 교차 사이트 스크립팅 및 인증 문제와 같은 실제 공격 시나리오를 시뮬레이션합니다.
CI/CD Pipeline Security Best Practices [Cheat Sheet]
In this 13 page cheat sheet we'll cover best practices in the following areas of the CI/CD pipeline: Infrastructure security, code security, secrets management, access and authentication, monitoring and response.
Download Cheat SheetDAST는 실제로 어떻게 작동하나요?
DAST는 애플리케이션의 테스트 단계에 가장 적합합니다. DAST는 일반적으로 파이프라인의 다른 코드 보안 및 코드 품질 검사 후에 발생합니다. 사스트.
DAST에는 다음과 같은 여러 단계가 포함됩니다.
1. 발견
이 단계에서는 사용자가 응용 프로그램과 상호 작용할 수 있는 진입점 또는 인터페이스를 찾기 위해 응용 프로그램을 검사합니다. API, 양식, UI 또는 URL을 생각해 보세요. 이러한 모든 진입점은 다음 단계에서 테스트됩니다.
2. 시뮬레이션
검색 단계에서 애플리케이션 인터페이스가 식별되면 애플리케이션은 SQL 삽입과 같은 다양한 종류의 공격에 노출됩니다. 교차 사이트 스크립팅(XSS), 런타임 메모리 누수, 교차 사이트 요청 위조(CSRF), 권한 상승, 서버 구성 및 TLS 문제. DAST 도구는 이러한 공격을 실행하고 응용 프로그램의 중요한 부분에 액세스하기 위해 노력합니다.
3. 분석
시뮬레이션이 수행되면 이러한 공격 시뮬레이션의 결과를 분석하여 취약점이 있는지 여부를 확인합니다.
4. 보고
보고 단계에서 DAST 도구는 식별된 취약성을 제시하고 도구 및 잠재적 수정 사항을 제안합니다. 보고 기능은 조직의 커뮤니케이션 채널과 통합되어 취약성이 발견되는 즉시 팀에 경고할 수 있습니다.
이러한 모든 단계를 통해 완전한 DAST 스캔을 수행할 수 있으며, 보고서는 조사 및 수정을 위한 출발점이 되어 팀이 시스템의 보안 태세를 강화할 수 있도록 합니다.
SAST와 DAST 비교
요약하자면, 동적 애플리케이션 보안 테스트(DAST)는 애플리케이션을 평가하는 침투 테스트 기술입니다'기본 코드를 분석하지 않고 보안 태세를 유지할 수 있습니다. 코드베이스를 검사하는 대신 DAST는 알려진 공격 벡터를 사용하여 소프트웨어를 실행하고 상호 작용하는 데 중점을 둡니다.
예를 들어, DAST는 애플리케이션이 취약한지 확인하기 위해 잠재적인 익스플로잇이 포함된 요청을 전송하여 HTTP 서버를 테스트합니다. DAST는'코드 자체를 검사하면's 언어에 구애받지 않으며 사용되는 프로그래밍 언어나 기술에 관계없이 효과적이므로 다양한 플랫폼에서 다재다능합니다.
DAST는 정적 애플리케이션 보안 테스트(SAST)보다 느린 경향이 있지만 프로덕션 환경에서 발생하는 런타임 취약성과 같이 SAST에 명백하지 않은 더 광범위한 취약성을 감지할 수 있습니다. (분산 서비스 거부 취약성, 민감한 내부 데이터의 노출 또는 타사 서비스의 잘못된 구성과 같은 취약성)
다른 한편으로는 SAST는 DAST보다 우선합니다. 개발 및 CI/CD 파이프라인 중. SAST는 소스 코드 자체를 분석하며 DevSecOps 파이프라인에서 매우 초기에 실행할 수 있습니다. SAST를 사용하면 코드를 분석하여 잠재적인 문제가 될 수 있는 패턴을 찾습니다. SAST는 보다 포괄적인 결과를 위해 퍼징과 함께 사용할 수도 있습니다.
DAST와 IAST 비교
IAST(대화형 애플리케이션 보안 테스트)는 보안 테스트에 더 많은 가치를 추가할 수 있는 SAST와 DAST 방법론의 조합입니다. IAST는 소스 코드의 취약점을 분석하고 코드의 일부를 실행하여 문제를 식별하고 실시간으로 동작을 모니터링합니다. IAST는 서로 다른 코드 포인트에서 중요한 메트릭을 측정하기 위해 계측을 추가하여 런타임을 분석함으로써 보안 문제를 식별하고 문제의 심각도를 나타내는 데 도움을 줍니다.
DAST의 이점
동적 애플리케이션 보안 테스트는 실시간 공격 상황에 매우 가깝기 때문에 실제로 발견되는 익스플로잇을 포착하는 데 도움이 될 수 있습니다. 다음은 DAST가 제공하는 다른 이점에 대한 요약입니다.
런타임 취약성 및 광범위한 취약성 탐지: 코드 외에도 런타임(런타임에만 해당)에서 심각한 문제를 찾을 수 있습니다. 런타임 취약성 스캔이 DAST의 전문 분야이기 때문에 DAST는 매우 유용합니다. DAST는 또한 외부 관점에서 코드를 넘어 세션 관리 오류, 교차 사이트 요청 위조, 열린 리디렉션과 같은 문제를 테스트할 수 있습니다. 로그4쉘, 그리고 더.
언어에 구애받지 않는 테스트: DAST 도구는 애플리케이션을 구축하는 데 사용한 코딩 언어를 이해할 필요가 없으며, 어떤 상황에서도 취약점을 식별하고 악용할 수 있습니다. 이를 통해 DAST를 더 쉽게 구현할 수 있어 테스트 워크플로우가 간소화됩니다.
제3자 테스트: DAST 도구를 통해 모든 문제에 대한 종속성을 테스트할 수 있습니다. (내부 작업을 이해할 필요가 없고 평가를 시작하는 데 인터페이스만 필요하기 때문에 타사 도구에서 DAST를 쉽게 사용할 수 있습니다!)
실제 공격 동작: DAST의 가장 큰 강점은 "공격"의 특성입니다. DAST 도구가 수행하는 시뮬레이션은 공격자의 실제 행동에 매우 가깝습니다.
DAST의 한계
DAST는 테스트를 위한 훌륭한 옵션이지만 다음과 같은 몇 가지 단점이 있습니다.
보안 테스트의 오탐: DAST는 많은 오탐을 트리거할 수 있으며, 모든 경고를 살펴보고 주의해야 할 경고를 결정해야 하는 팀에 많은 작업을 생성할 수 있습니다.
느린 감지: DAST는 SAST에 비해 속도가 매우 느리고 문제를 감지하는 데 많은 시간이 걸릴 수 있으므로 배포 주기가 길어질 수 있습니다.
시프트 왼쪽의 반대: SAST의 시프트 레프트 접근 방식은 많은 시간을 절약하지만 DAST는 기본적으로 그 반대입니다. DAST 분석만 시작할 수 있습니다 후 응용 프로그램 코드가 완성되고, 빌드되고, 배포됩니다. 배포 후에 발생하기 때문에 문제를 식별하고 관련 개발 소유자에게 문제를 해결하는 것은 긴 프로세스입니다.
코드 인사이트 없음: DAST는 코드 자체에 대한 가시성이 없기 때문에 DAST가 놓칠 수 있는 문제가 있을 수 있습니다. 그렇기 때문에 SAST도 매우 중요하며 하나에만 의존하지 말고 둘 다 사용하는 것이 좋습니다.
DevOps Security Best Practices [Cheat Sheet]
In this 12 page cheat sheet we'll cover best practices in the following areas of DevOps: secure coding practices, infrastructure security, monitoring and response.
Download Cheat Sheet인기 있는 오픈 소스 DAST 도구
DAST 분석에 활용할 수 있는 인기 있는 오픈 소스 도구가 많이 있습니다. 다음은 지속적으로 개발 중인 몇 가지입니다.
Tool | Description |
---|---|
OWASP ZAP | ZAP, or Zed Attack Proxy, is one of the most popular DAST tools. It can be easily integrated into your CI/CD security pipeline to analyze the behavior of your application. ZAP has a major community backing it, can perform other security testing like SAST, and can carry out code reviews as well. |
Wapiti | Wapiti is another very popular open-source tool for scanning web applications. It covers a wide array of attacks, including some advanced attacks like TLS misconfigurations and Shellshock. (Note that Wapiti doesn’t have a GUI and is more suited to scheduled scans than real-time testing.) |
Vega | Vega is also a free, open-source tool for dynamic application testing. Vega has APIs and GUI, which makes it user friendly. The downsides? Vega has limited support for modem JavaScript applications and can struggle with CI/CD integration. |
w3af | w3af is billed as a complete ecosystem for auditing web applications. It comes with a lot of helpful features—from notification channels to reporting and alerting. w3af’s drawbacks are a lack of a GUI and limited support for C/CD. |
Burp Suite | Burp Suite is used widely for security scanning and testing. Burp Suite is available as a community offering as well as a paid version. (With the paid version, you can get some extra automated scanning features.) For better control and ease of use, Burp Suite offers a GUI. Burp Suite boasts a vast number of features and attacks that it can analyze and perform. |
Wiz Code로 애플리케이션 및 SDLC 보안 강화
DAST 스캔은 시간이 많이 소요될 수 있지만 공격자 위협에 대한 애플리케이션 보안 태세를 강화하는 데 많은 가치를 더합니다. 민첩한 배포 주기의 속도와 생산성을 유지하기 위해 DAST 스캔은 배포 후 직접 실행된 다음 연속적인 비동기 방식으로 반복되어 발생할 수 있는 런타임 취약성을 보고할 수 있습니다.
DAST가 앱을 배포한 후 보안 태세를 강화하는 데 도움이 될 수 있다는 것은 의심의 여지가 없지만 DAST만으로는 충분하지 않습니다. 보안에 대한 사전 예방적 접근 방식을 구현하고 빌드 시간 동안 포괄적인 검사 세트(자사 코드, 타사 코드, 인프라 및 파이프라인 보안 설정)를 수행하여 시스템이 위협 행위자에게 노출되지 않도록 하는 것이 가장 좋습니다 위즈 코드 들어온다.
Wiz Code는 클라우드 인사이트로 강화된 실시간 보안 피드백을 IDE 및 풀 리퀘스트에서 직접 제공합니다. 이를 통해 개발자는 코드가 배포된 후 취약성 및 노출된 비밀의 영향을 예측하고 코드에서 가장 영향력 있는 애플리케이션 보안 문제를 사전에 해결할 수 있습니다.
Wiz Code는 또한 코드 리포지토리 및 CI/CD 파이프라인에 연결하여 타사 코드 종속성 및 라이선스 규정 준수 문제에서 컨테이너 이미지, IaC 템플릿, VCS 및 CI/CD 파이프라인 자체의 설정에 이르기까지 전체 애플리케이션 스택 및 SDLC 보안 상태를 스캔하여 취약성, 구성 오류, 규정 준수 문제, 민감한 데이터, 노출된 비밀 등을 탐지할 수 있습니다. 그리고 맬웨어.
Wiz Code를 Wiz 코드와 함께 사용 SAST 통합 파트너같은 체크마르크스, Cycode 또는 Jit는 보안 팀이 사일로화된 툴링이나 적용 범위의 격차 없이 빌드 시간에서 런타임에 이르기까지 애플리케이션 보안 태세에 대한 완벽한 가시성과 제어를 제공합니다.
Wiz Code가 코드에서 클라우드에 이르기까지 빌드하고 실행하는 모든 것을 어떻게 보호할 수 있는지 직접 확인하고 싶으신가요? 지금 데모 예약하기.
Secure your cloud from code to production
Learn why CISOs at the fastest growing companies trust Wiz to accelerate secure cloud development.