사용 가능한 CI/CD 변수
이 CI/CD 변수는 브라우저 기반 DAST 분석기에 특화되어 있습니다. DAST의 동작을 사용자 요구에 맞게 조정하는 데 사용할 수 있습니다.
인증 CI/CD 변수에 대한 내용은 인증을 참조하세요.
CI/CD 변수 | 유형 | 예시 | 설명 |
---|---|---|---|
DAST_ACTIVE_SCAN_TIMEOUT |
Duration string | 3h |
스캔의 활성 스캔 단계가 완료될 때까지 대기하는 최대 시간입니다. 기본값은 3h 입니다. |
DAST_ACTIVE_SCAN_WORKER_COUNT |
숫자 | 3 |
병렬로 실행할 활성 검사의 수입니다. 기본값은 3 입니다. |
DAST_AUTH_AFTER_LOGIN_ACTIONS |
문자열 | click(on=id:remember-me),click(on=css:.continue) |
로그인 후 로그인 확인 이전에 실행할 행동의 쉼표로 구분된 목록입니다. 현재 “click” 동작만 지원합니다. |
DAST_AUTH_BEFORE_LOGIN_ACTIONS |
selector | css:.user,id:show-login-form |
로그인 양식에 DAST_AUTH_USERNAME 및 DAST_AUTH_PASSWORD 를 입력하기 전에 클릭할 요소를 나타내는 선택기의 쉼표로 구분된 목록입니다. |
DAST_AUTH_CLEAR_INPUT_FIELDS |
부울 | true |
수동 로그인을 시도하기 전에 사용자 이름 및 비밀번호 필드를 지우는 기능을 비활성화합니다. 기본값은 false 입니다. |
DAST_AUTH_COOKIE_NAMES |
문자열 | sessionID,groupName |
인증에 사용되는 쿠키 이름의 쉼표로 구분된 목록으로 설정합니다. |
DAST_AUTH_FIRST_SUBMIT_FIELD |
selector | css:input[type=submit] |
다단계 로그인 과정에서 사용자 이름 양식을 제출하기 위해 클릭되는 요소를 설명하는 선택기입니다. |
DAST_AUTH_PASSWORD_FIELD |
selector | name:password |
로그인 양식에 비밀번호를 입력하는 데 사용되는 요소를 설명하는 선택기입니다. |
DAST_AUTH_PASSWORD |
문자열 | P@55w0rd! |
웹사이트에 인증하기 위한 비밀번호입니다. |
DAST_AUTH_REPORT |
부울 | true |
인증 프로세스 중 수행된 단계를 자세히 설명하는 보고서를 생성하려면 true 로 설정합니다. 생성된 보고서에 접근하려면 gl-dast-debug-auth-report.html 을 CI 작업 아티팩트로 정의해야 합니다. 보고서의 내용은 인증 실패 디버깅에 도움이 됩니다. 기본값은 false 입니다. |
DAST_AUTH_SUBMIT_FIELD |
selector | css:input[type=submit] |
단일 페이지 로그인 양식의 로그인 양식, 또는 다단계 로그인 양식의 비밀번호 양식을 제출하기 위해 클릭되는 요소를 설명하는 선택기입니다. |
DAST_AUTH_SUCCESS_IF_AT_URL |
URL | https://www.site.com/welcome |
로그인 양식이 제출된 후 인증 성공 여부를 판단하기 위해 브라우저의 URL과 비교하는 URL입니다. |
DAST_AUTH_SUCCESS_IF_ELEMENT_FOUND |
selector | css:.user-avatar |
로그인 양식이 제출된 후 인증 성공 여부를 판단하기 위해 존재하는 요소를 설명하는 선택기입니다. |
DAST_AUTH_SUCCESS_IF_NO_LOGIN_FORM |
부울 | true |
로그인 양식이 제출된 후 로그인 양식의 부재를 확인하여 성공적인 인증 여부를 검증합니다. 이 성공 체크는 기본적으로 활성화되어 있습니다. |
DAST_AUTH_TYPE |
문자열 | basic-digest |
사용할 인증 유형입니다. |
DAST_AUTH_URL |
URL | https://site.com/login |
대상 웹사이트의 로그인 양식이 포함된 페이지의 URL입니다. DAST_AUTH_USERNAME 및 DAST_AUTH_PASSWORD 는 로그인 양식과 함께 제출되어 인증된 스캔을 생성합니다. |
DAST_AUTH_USERNAME_FIELD |
selector | name:username |
로그인 양식에 사용자 이름을 입력하는 데 사용되는 요소를 설명하는 선택기입니다. |
DAST_AUTH_USERNAME |
문자열 | user@email.com |
웹사이트에 인증하기 위한 사용자 이름입니다. |
DAST_BROWSER_SCAN |
부울 | true |
브라우저 기반 스캔을 실행하려면 true 여야 합니다. |
DAST_CHECKS_TO_EXCLUDE |
문자열 | 552.2,78.1 |
스캔에서 제외할 검사 식별자의 쉼표로 구분된 목록입니다. 식별자에 대한 정보는 취약점 검사에서 확인할 수 있습니다. |
DAST_CHECKS_TO_RUN |
문자열 목록 | 16.1,16.2,16.3 |
스캔에서 사용할 검사 식별자의 쉼표로 구분된 목록입니다. 식별자에 대한 정보는 취약점 검사에서 확인할 수 있습니다. |
DAST_CRAWL_EXTRACT_ELEMENT_TIMEOUT |
Duration string | 5s |
브라우저가 새로 찾은 요소 또는 탐색을 추출하는 데 허용되는 최대 시간입니다. 기본값은 5s 입니다. |
DAST_CRAWL_GRAPH |
부울 | true |
스캔의 크롤링 단계에서 방문한 탐색 경로의 SVG 그래프를 생성하려면 true 로 설정합니다. 생성된 그래프에 접근하려면 gl-dast-crawl-graph.svg 를 CI 작업 아티팩트로 정의해야 합니다. 기본값은 false 입니다. |
DAST_CRAWL_MAX_ACTIONS |
숫자 | 10000 |
크롤러가 수행할 최대 작업 수입니다. 예시 작업으로는 링크 선택 또는 양식 작성 등이 있습니다. 기본값은 10000 입니다. |
DAST_CRAWL_MAX_DEPTH |
숫자 | 10 |
크롤러가 수행할 수 있는 최대 체인된 행동 수입니다. 예를 들어, Click -> Form Fill -> Click 는 깊이가 3입니다. 기본값은 10 입니다. |
DAST_CRAWL_SEARCH_ELEMENT_TIMEOUT |
Duration string | 3s |
브라우저가 새 요소 또는 사용자 동작을 찾는 데 허용되는 최대 시간입니다. 기본값은 3s 입니다. |
DAST_CRAWL_TIMEOUT |
Duration string | 5m |
스캔의 크롤링 단계가 완료될 때까지 대기하는 최대 시간입니다. 기본값은 24h 입니다. |
DAST_CRAWL_WORKER_COUNT |
숫자 | 3 |
사용할 수 있는 최대 동시 브라우저 인스턴스의 수입니다. 예를 들어, GitLab.com의 인스턴스 러너는 최대 3개를 권장합니다. 더 많은 리소스를 가진 개인 러너는 더 높은 수에서 이점을 볼 수 있지만 5개에서 7개 인스턴스 이후에는 거의 이점이 없습니다. 기본값은 동적으로 사용 가능한 논리적 CPU 수와 같습니다. |
DAST_FULL_SCAN |
부울 | true |
수동 및 능동 검사를 모두 실행하려면 true 로 설정합니다. 기본값: false
|
DAST_LOG_BROWSER_OUTPUT |
부울 | true |
Chromium의 STDOUT 및 STDERR 를 기록하려면 true 로 설정합니다. |
DAST_LOG_CONFIG |
문자열 목록 | brows:debug,auth:debug |
콘솔 로그에서 사용할 모듈과 해당 로깅 수준의 목록입니다. |
DAST_LOG_DEVTOOLS_CONFIG |
문자열 | Default:messageAndBody,truncate:2000 |
DAST와 Chromium 브라우저 간의 프로토콜 메시지를 기록하도록 설정합니다. |
DAST_LOG_FILE_CONFIG |
문자열 목록 | brows:debug,auth:debug |
파일 로그에서 사용할 모듈과 해당 로깅 수준의 목록입니다. |
DAST_LOG_FILE_PATH |
문자열 | /output/browserker.log |
파일 로그의 경로로 설정합니다. 기본값은 gl-dast-scan.log 입니다. |
DAST_PAGE_DOM_READY_TIMEOUT |
Duration string | 7s |
탐색이 완료된 후 브라우저가 페이지가 로드되고 분석 준비가 되었다고 간주하는 데 대기하는 최대 시간입니다. 기본값은 6s 입니다. |
DAST_PAGE_DOM_STABLE_WAIT |
Duration string | 200ms |
페이지가 안정적이라고 간주되기 전에 DOM 업데이트를 기다리는 기간을 정의합니다. 기본값은 500ms 입니다. |
DAST_PAGE_ELEMENT_READY_TIMEOUT |
Duration string | 600ms |
요소가 분석 준비가 완료되었다고 판단하기 전까지 대기하는 최대 시간입니다. 기본값은 300ms 입니다. |
DAST_PAGE_IS_LOADING_ELEMENT |
선택자 | css:#page-is-loading |
더 이상 페이지에 표시되지 않을 때 해결사에게 페이지가 로드 완료되었음을 나타내는 선택자입니다. DAST_PAGE_IS_READY_ELEMENT 와 함께 사용할 수 없습니다. |
DAST_PAGE_IS_READY_ELEMENT |
선택자 | css:#page-is-ready |
페이지에 표시될 때 해결사에게 페이지가 로드 완료되었음을 나타내는 선택자입니다. DAST_PAGE_IS_LOADING_ELEMENT 와 함께 사용할 수 없습니다. |
DAST_PAGE_MAX_RESPONSE_SIZE_MB |
숫자 | 15 |
HTTP 응답 본문의 최대 크기입니다. 이보다 큰 본문을 가진 응답은 브라우저에 의해 차단됩니다. 기본값은 10 MB입니다. |
DAST_PAGE_READY_AFTER_ACTION_TIMEOUT |
Duration string | 7s |
브라우저가 페이지가 로드되고 분석 준비가 되었다고 간주하는 최대 시간입니다. 기본값은 7s 입니다. |
DAST_PAGE_READY_AFTER_NAVIGATION_TIMEOUT |
Duration string | 15s |
브라우저가 한 페이지에서 다른 페이지로 탐색하는 데 허용되는 최대 시간입니다. 기본값은 15s 입니다. |
DAST_PASSIVE_SCAN_WORKER_COUNT |
정수 | 5 |
병렬로 수동 스캔하는 워커 수입니다. 기본값은 사용 가능한 CPU 수입니다. |
DAST_PKCS12_CERTIFICATE_BASE64 |
문자열 | ZGZkZ2p5NGd... |
상호 TLS가 필요한 사이트에 사용되는 PKCS12 인증서입니다. base64 텍스트로 인코딩되어야 합니다. |
DAST_PKCS12_PASSWORD |
문자열 | password |
DAST_PKCS12_CERTIFICATE_BASE64 에서 사용하는 인증서의 비밀번호입니다. GitLab UI를 사용하여 민감한 사용자 정의 CI/CD 변수를 생성합니다. |
DAST_REQUEST_ADVERTISE_SCAN |
부울 | true |
모든 요청에 Via 헤더를 추가하려면 true 로 설정하여 요청이 GitLab DAST 스캔의 일부로 전송되었음을 알립니다. 기본값: false . |
DAST_REQUEST_COOKIES |
딕셔너리 | abtesting_group:3,region:locked |
모든 요청에 추가될 쿠키 이름 및 값입니다. |
DAST_REQUEST_HEADERS |
문자열 | Cache-control:no-cache |
요청 헤더 이름과 값의 쉼표로 구분된 목록을 설정합니다. |
DAST_SCOPE_ALLOW_HOSTS |
문자열 목록 | site.com,another.com |
이 변수에 포함된 호스트 이름은 크롤링 시 스코프에 포함됩니다. 기본적으로 DAST_TARGET_URL 호스트 이름이 허용된 호스트 목록에 포함됩니다. DAST_REQUEST_HEADERS 를 사용하여 설정된 헤더는 이러한 호스트에 대한 모든 요청에 추가됩니다. |
DAST_SCOPE_EXCLUDE_ELEMENTS |
선택자 | a[href='2.html'],css:.no-follow |
스캔할 때 무시되는 선택자의 쉼표로 구분된 목록입니다. |
DAST_SCOPE_EXCLUDE_HOSTS |
문자열 목록 | site.com,another.com |
이 변수에 포함된 호스트 이름은 제외되며, 연결이 강제로 차단됩니다. |
DAST_SCOPE_EXCLUDE_URLS |
URLs | https://site.com/.*/sign-out |
인증된 스캔 중에 건너뛰어야 하는 URLs입니다. 쉼표로 구분되어 있으며, 정규 표현식 구문을 사용하여 여러 URLs을 매치할 수 있습니다. 예를 들어, .* 는 임의의 문자열 시퀀스를 매치합니다. |
DAST_SCOPE_IGNORE_HOSTS |
문자열 목록 | site.com,another.com |
이 변수에 포함된 호스트 이름은 접근하지만 공격하거나 보고하지 않습니다. |
DAST_TARGET_CHECK_SKIP |
부울 | true |
스캔 전에 DAST가 대상이 사용 가능한지 확인하지 못하도록 하려면 true 로 설정합니다. 기본값: false . |
DAST_TARGET_CHECK_TIMEOUT |
숫자 | 60 |
대상의 가용성을 기다리는 최대 시간(초)입니다. 기본값: 60s . |
DAST_TARGET_PATHS_FILE |
문자열 | /builds/project/urls.txt |
스캔할 경로를 제공된 목록으로 제한합니다. DAST_TARGET_URL 에 상대적인 URL 경로의 목록을 포함하는 파일 경로로 설정합니다. 파일은 한 줄에 하나의 경로가 포함된 일반 텍스트여야 합니다. |
DAST_TARGET_PATHS |
문자열 | /page1.html,/category1/page3.html |
스캔할 경로를 제공된 목록으로 제한합니다. DAST_TARGET_URL 에 상대적인 URL 경로의 쉼표로 구분된 목록으로 설정합니다. |
DAST_TARGET_URL |
URL | https://site.com |
스캔할 웹사이트의 URL입니다. |
DAST_USE_CACHE |
부울 | true |
캐싱을 비활성화하려면 false 로 설정합니다. 기본값: true . 참고: 캐시를 비활성화하면 OOM 이벤트나 DAST 작업 시간 초과가 발생할 수 있습니다. |
SECURE_ANALYZERS_PREFIX |
URL | registry.organization.com |
분석기를 다운로드할 Docker 레지스트리 기본 주소를 설정합니다. |