DAST 스캔 문제 해결
DAST 스캔 문제 해결에 대해 설명합니다.
다음 문제 해결 시나리오는 고객 지원 사례에서 수집한 것입니다. 여기에서 다루지 않는 문제가 발생하거나 여기의 정보로 문제가 해결되지 않으면 지원 티켓을 생성합니다. 자세한 내용은 GitLab 지원 페이지를 참고합니다. 문제가 발생했을 때 # DAST 스캔에 문제가 발생한 경우: DAST를 처음 설정하는 경우 DAST 설정 을 확인합니다. 특정 오류 메시지가 표시되는 경우 알려진 문제 를 확인합니다. 그 외의 경우에는 다음 항목을 확인하며 문제를 찾아봅니다: 예상 결과 사람이 달성할 수 있는 결과인지 확인 DAST가 작동하지 않는 원인 애플리케이션의 작동 방식 DAST가 수행하는 작업 DAST 설정 # DAST를 처음 설정할 때 다음과 같은 문제가 발생할 수 있습니다. 구성 유효성 검사 실패: 필수 필드 URL이 설정되지 않음 # 대상 URL을 정의하지 않고 DAST 템플릿을 포함하면 구성 유효성 검사 단계에서 파이프라인이 다음 오류와 함께 실패합니다: ERR MAIN configuration validation failed error="the required field URL was not set" 이 오류는 DAST가 어떤 URL을 스캔해야 하는지 모른다는 뜻입니다. 이 문제를 해결하려면 다음 방법 중 하나로 대상 URL을 정의합니다: .gitlab-ci.yml 파일에 DAST_TARGET_URL CI/CD 변수를 설정합니다: stages: - dast include: - template: Security/DAST.gitlab-ci.yml dast: variables: DAST_TARGET_URL: "https://example.com" 프로젝트 루트에 environment_url.txt 파일을 생성하고 대상 URL을 추가합니다. 동적 환경의 애플리케이션을 테스트할 때 이 방법을 사용합니다. 러너가 대상 애플리케이션에 연결할 수 없음 # 러너가 대상 애플리케이션에 도달할 수 없으면 DAST 스캔이 연결 오류와 함께 실패합니다. 이는 주로 네트워크 구성이나 방화벽 문제로 발생합니다. DAST는 지정한 URL을 사용해 애플리케이션에 연결해야 합니다: DAST_TARGET_URL 또는 DAST_AUTH_URL 에 포트 번호가 포함된 경우, 러너가 해당 포트에 액세스할 수 있어야 합니다. URL에 포트를 지정하지 않으면 DAST는 표준 포트를 사용합니다: HTTP URL에는 80 포트(예: http://example.com ). HTTPS URL에는 443 포트(예: https://example.com ). 연결 문제의 일반적인 원인은 다음과 같습니다: HTTP와 HTTPS 콘텐츠 혼용. 애플리케이션이 HTTP와 HTTPS를 모두 사용할 수 있습니다. 예를 들어 대상 URL이 http://example.com 인데 사이트가 https://example.com 에서 리소스를 로드하는 경우, 러너가 두 포트에 모두 액세스할 수 있어야 합니다. 사용자 지정 포트. 애플리케이션이 비표준 포트에서 실행되는 경우 DAST_TARGET_URL 에 포트를