DAST 버전 4 브라우저 기반 분석기에서 DAST 버전 5로 마이그레이션
- DAST 프록시 기반 분석기는 GitLab 16.6에서 사용 중단되었으며 17.0에서 제거되었습니다.
DAST 버전 5는 DAST 버전 4를 대체합니다. 이 문서는 DAST 버전 4 브라우저 기반 분석기에서 DAST 버전 5로 마이그레이션하는 가이드 역할을 합니다.
다음 모든 조건이 적용되는 경우 이 마이그레이션 가이드를 따르세요:
-
CI/CD 파이프라인에서 DAST 스캔을 실행하기 위해 GitLab DAST를 사용합니다.
-
DAST CI/CD 작업은
DAST.gitlab-ci.yml
또는DAST.latest.gitlab-ci.yml
중 하나를 포함하여 구성됩니다. -
CI/CD 변수
DAST_VERSION
이 설정되지 않거나4
또는 그 이하로 설정되어 있습니다. -
CI/CD 변수
DAST_BROWSER_SCAN
이true
로 설정되어 있습니다.
다음 섹션을 읽고 권장 변경 사항을 적용하여 DAST 버전 5로 마이그레이션하세요.
DAST 분석기 버전
DAST는 두 가지 주요 버전인 4와 5로 제공됩니다. GitLab 17.0의 세 번째 Breaking Change Window인 2024-05-06 09:00 UTC에서 2024-05-08 22:00 UTC부터 DAST 템플릿 DAST.gitlab-ci.yml
및 DAST.latest.gitlab-ci.yml
은 기본적으로 DAST 버전 5를 사용합니다. DAST 버전 4를 계속 사용할 수 있지만 DAST 버전 5로 마이그레이션하는 동안만 임시 조치로 사용하는 것이 좋습니다. 자세한 내용은 버전 4 계속 사용하기를 참조하세요.
각 DAST 주요 버전은 서로 다른 분석기를 실행합니다:
-
DAST 버전 4는 프록시 기반 또는 브라우저 기반 분석기를 실행할 수 있으며 기본적으로 프록시 기반 분석기를 사용합니다.
-
DAST 버전 5는 브라우저 기반 분석기만 실행합니다.
DAST 버전 5는 새로운 CI/CD 변수 세트를 사용합니다. DAST 버전 4 변수 이름에 대한 별칭이 생성되었습니다.
해야 할 변경 사항:
- GitLab 16.11 및 이전 버전에서 DAST 버전 5를 사용하여 DAST 스캔을 테스트하려면 CI/CD 변수
DAST_VERSION
을 5로 설정하세요.
버전 4 계속 사용하기
GitLab 18.0까지 DAST 버전 4 브라우저 기반 분석기를 사용할 수 있습니다. 이 레거시 분석기의 결함 및 취약점은 수정되지 않습니다.
해야 할 변경 사항:
- DAST 버전 4를 계속 사용하려면 CI/CD 변수
DAST_VERSION
을 4로 설정하세요.
아카이브
GitLab 17.0은 DAST 버전 5에서 생성된 아카이브를 DAST CI 작업으로 자동 게시합니다.
해야 할 변경 사항:
-
파일 로그, 크롤링 그래프 또는 인증 보고서에 대한 파일 로그를 노출하도록 재정의한 경우 CI 작업 정의에서
artifacts
를 제거하세요. -
CI/CD 변수
DAST_BROWSER_FILE_LOG_PATH
및DAST_FILE_LOG_PATH
는 더 이상 필요하지 않습니다.
취약성 검사 범위
브라우저 기반 DAST 버전 4는 브라우저 기반 분석기에 포함되지 않은 활성 검사를 위해 프록시 기반 분석기 검사를 사용합니다.
브라우저 기반 DAST 버전 5는 프록시 기반 분석기를 포함하지 않으므로 버전 5로 마이그레이션할 때 검사 범위에 차이가 있습니다.
브라우저 기반 분석기가 다루지 않는 세 가지 프록시 기반 활성 검사가 있습니다. 완전한 범위를 제공하기 위한 추가 검사 개발이 진행 중이며, 이들이 완료될 때까지 DAST 버전 4에 남아 있을 수 있습니다. 버전 4 계속 사용하기를 참조하세요.
남은 검사:
-
CWE-79: 크로스 사이트 스크립팅(XSS)
-
CWE-384: 세션 고정
-
CWE-16: TRACE HTTP
남은 검사의 진행 상황은 남은 활성 검사 for BBD에서 확인하세요.
CI/CD 변수 변경 사항
다음 표는 각 브라우저 기반 분석기 DAST 버전 4 CI/CD 변수에 필요한 마이그레이션 작업을 요약합니다.
브라우저 기반 분석기의 구성에 대한 자세한 정보는 구성을 참조하세요.
DAST 버전 4 CI/CD 변수 | 필요한 작업 | 비고 |
---|---|---|
DAST_ADVERTISE_SCAN |
이름 변경 | DAST_REQUEST_ADVERTISE_SCAN |
DAST_AFTER_LOGIN_ACTIONS |
이름 변경 | DAST_AUTH_AFTER_LOGIN_ACTIONS |
DAST_AUTH_COOKIES |
이름 변경 | DAST_AUTH_COOKIE_NAMES |
DAST_AUTH_DISABLE_CLEAR_FIELDS |
이름 변경 | DAST_AUTH_CLEAR_INPUT_FIELDS |
DAST_AUTH_REPORT |
작업 필요 없음 | |
DAST_AUTH_TYPE |
작업 필요 없음 | |
DAST_AUTH_URL |
작업 필요 없음 | |
DAST_AUTH_VERIFICATION_LOGIN_FORM |
이름 변경 | DAST_AUTH_SUCCESS_IF_NO_LOGIN_FORM |
DAST_AUTH_VERIFICATION_SELECTOR |
이름 변경 | DAST_AUTH_SUCCESS_IF_ELEMENT_FOUND |
DAST_AUTH_VERIFICATION_URL |
이름 변경 | DAST_AUTH_SUCCESS_IF_AT_URL |
DAST_BROWSER_PATH_TO_LOGIN_FORM |
이름 변경 | DAST_AUTH_BEFORE_LOGIN_ACTIONS |
DAST_BROWSER_ACTION_STABILITY_TIMEOUT |
교체 | DAST_PAGE_DOM_READY_TIMEOUT |
DAST_BROWSER_ACTION_TIMEOUT |
제거 | 지원되지 않음 |
DAST_BROWSER_ALLOWED_HOSTS |
이름 변경 | DAST_SCOPE_ALLOW_HOSTS |
DAST_BROWSER_CACHE |
이름 변경 | DAST_USE_CACHE |
DAST_BROWSER_COOKIES |
이름 변경 | DAST_REQUEST_COOKIES |
DAST_BROWSER_CRAWL_GRAPH |
이름 변경 | DAST_CRAWL_GRAPH |
DAST_BROWSER_CRAWL_TIMEOUT |
이름 변경 | DAST_CRAWL_TIMEOUT |
DAST_BROWSER_DEVTOOLS_LOG |
이름 변경 | DAST_LOG_DEVTOOLS_CONFIG |
DAST_BROWSER_DOM_READY_AFTER_TIMEOUT |
이름 변경 | DAST_PAGE_DOM_STABLE_WAIT |
DAST_BROWSER_ELEMENT_TIMEOUT |
이름 변경 | DAST_PAGE_ELEMENT_READY_TIMEOUT |
DAST_BROWSER_EXCLUDED_ELEMENTS |
이름 변경 | DAST_SCOPE_EXCLUDE_ELEMENTS |
DAST_BROWSER_EXCLUDED_HOSTS |
이름 변경 | DAST_SCOPE_EXCLUDE_HOSTS |
DAST_BROWSER_EXTRACT_ELEMENT_TIMEOUT |
이름 변경 | DAST_CRAWL_EXTRACT_ELEMENT_TIMEOUT |
DAST_BROWSER_FILE_LOG |
이름 변경 | DAST_LOG_FILE_CONFIG |
DAST_BROWSER_FILE_LOG_PATH |
제거 | 더 이상 필요 없음 |
DAST_BROWSER_IGNORED_HOSTS |
이름 변경 | DAST_SCOPE_IGNORE_HOSTS |
DAST_BROWSER_INCLUDE_ONLY_RULES |
이름 변경 | DAST_CHECKS_TO_RUN |
DAST_BROWSER_LOG |
이름 변경 | DAST_LOG_CONFIG |
DAST_BROWSER_LOG_CHROMIUM_OUTPUT |
이름 변경 | DAST_LOG_BROWSER_OUTPUT |
DAST_BROWSER_MAX_ACTIONS |
이름 변경 | DAST_CRAWL_MAX_ACTIONS |
DAST_BROWSER_MAX_DEPTH |
이름 변경 | DAST_CRAWL_MAX_DEPTH |
DAST_BROWSER_MAX_RESPONSE_SIZE_MB |
이름 변경 | DAST_PAGE_MAX_RESPONSE_SIZE_MB |
DAST_BROWSER_NAVIGATION_STABILITY_TIMEOUT |
이름 변경 | DAST_PAGE_DOM_READY_TIMEOUT |
DAST_BROWSER_NAVIGATION_TIMEOUT |
이름 변경 | DAST_PAGE_READY_AFTER_NAVIGATION_TIMEOUT |
DAST_BROWSER_NUMBER_OF_BROWSERS |
이름 변경 | DAST_CRAWL_WORKER_COUNT |
DAST_BROWSER_PAGE_LOADING_SELECTOR |
이름 변경 | DAST_PAGE_IS_LOADING_ELEMENT |
DAST_BROWSER_PAGE_READY_SELECTOR |
이름 변경 | DAST_PAGE_IS_READY_ELEMENT |
DAST_BROWSER_PASSIVE_CHECK_WORKERS |
이름 변경 | DAST_PASSIVE_SCAN_WORKER_COUNT |
DAST_BROWSER_SCAN |
제거 | 더 이상 필요 없음 |
DAST_BROWSER_SEARCH_ELEMENT_TIMEOUT |
이름 변경 | DAST_CRAWL_SEARCH_ELEMENT_TIMEOUT |
DAST_BROWSER_STABILITY_TIMEOUT |
이름 변경 | DAST_PAGE_READY_AFTER_ACTION_TIMEOUT |
DAST_EXCLUDE_RULES |
이름 변경 | DAST_CHECKS_TO_EXCLUDE |
DAST_EXCLUDE_URLS |
이름 변경 | DAST_SCOPE_EXCLUDE_URLS |
DAST_FF_ENABLE_BAS |
제거 | 지원되지 않음 |
DAST_FILE_LOG_PATH |
제거 | 더 이상 필요 없음 |
DAST_FIRST_SUBMIT_FIELD |
이름 변경 | DAST_AUTH_FIRST_SUBMIT_FIELD |
DAST_FULL_SCAN_ENABLED |
이름 변경 | DAST_FULL_SCAN |
DAST_PASSWORD |
이름 변경 | DAST_AUTH_PASSWORD |
DAST_PASSWORD_FIELD |
이름 변경 | DAST_AUTH_PASSWORD_FIELD |
DAST_PATHS |
이름 변경 | DAST_TARGET_PATHS |
DAST_PATHS_FILE |
이름 변경 | DAST_TARGET_PATHS_FROM_FILE |
DAST_PKCS12_CERTIFICATE_BASE64 |
작업 필요 없음 | |
DAST_PKCS12_PASSWORD |
작업 필요 없음 | |
DAST_REQUEST_HEADERS |
작업 필요 없음 | |
DAST_SKIP_TARGET_CHECK |
이름 변경 | DAST_TARGET_CHECK_SKIP |
DAST_SUBMIT_FIELD |
이름 변경 | DAST_AUTH_SUBMIT_FIELD |
DAST_TARGET_AVAILABILITY_TIMEOUT |
이름 변경 | DAST_TARGET_CHECK_TIMEOUT |
DAST_USERNAME |
이름 변경 | DAST_AUTH_USERNAME |
DAST_USERNAME_FIELD |
이름 변경 | DAST_AUTH_USERNAME_FIELD |
DAST_WEBSITE |
이름 변경 | DAST_TARGET_URL |